Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-06-06

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:07 pugs_svnbot r20680 | Auzon++ | [gsoc_spectest] added some tasks for S29 so I don't forget them later.
00:08 thestarslookdown joined #perl6
00:20 pugs_svnbot r20681 | diakopter++ | [yap6]
00:20 pugs_svnbot r20681 | diakopter++ | still diagnosing a very strange (to me) bug in expr...
00:20 pugs_svnbot r20681 | diakopter++ | but lots of cleanup.
00:50 FurnaceBoy joined #perl6
00:59 bacek perl6: my Hash $h =  {a => {b => {c => 42}}}; say $h;
00:59 exp_evalbot kp6 r20681: OUTPUT[a    b       c       42␤]
00:59 exp_evalbot ..pugs: OUTPUT[a  b       c       42␤␤␤␤]
00:59 exp_evalbot ..rakudo r28124: OUTPUT[Odd number of elements found where hash expected␤current instr.: 'parrot;List;hash' pc 1801 (src/gen_builtins.pir:1325)␤
00:59 exp_evalbot ..elf r20681: OUTPUT[a    Pair=HASH(0x85e2518)␤]
01:01 pmichaud rakudo doesn't understand { ... } as a hash composer yet.
01:01 Blasi joined #perl6
01:03 bacek pmichaud: yes... It treat it as code.
01:04 bacek I can't fudge S29-list/reduce.t... Fudge incorrectly generate skip-count.
01:04 pmichaud which part?
01:07 bacek sub foo
01:07 bacek fudge add one more test
01:08 pmichaud isn't it just   #?rakudo skip "{} hash composer unimplemented"
01:09 bacek you can try. And will get   Parse errors: Bad plan.  You planned 11 tests but ran 12.
01:09 pmichaud do you have any other local changes?
01:10 Minthe joined #perl6
01:10 bacek pmichaud: yes. I'll commit them in few seconds
01:11 pmichaud please commit and I'll look at it.
01:11 bacek done
01:11 pugs_svnbot r20682 | bacek++ | [spec] Fudge few tests for rakudo.
01:12 bacek pmichaud: #55368 with fixed List.reduce. It passed S29-list/reduce except num of tests
01:14 pmichaud need to rebuild
01:15 bacek to rebuild rakudo? Or patch?
01:15 pmichaud rebuild parrot + rakudo
01:15 pmichaud (doing that now.)
01:17 pmichaud TimToady: I think I'm being really dense (re: "Clarification on S12" thread on p6c)
01:17 pmichaud either I'm not asking the questions right or I'm totally lost on the answers ;-|
01:21 pmichaud bacek:  on my system everything passes
01:23 bacek hmm
01:23 pmichaud just a sec, about to commit 55368
01:23 bacek 11 tests?
01:23 pmichaud yes, 11 tests.
01:23 pmichaud All tests successful, 6 subtests skipped.
01:23 pmichaud Files=1, Tests=11,  4 wallclock secs ( 4.73 cusr +  0.05 csys =  4.78 CPU)
01:24 bacek pmichaud: great!
01:24 Ched- joined #perl6
01:24 bacek may be its problem with perl on MacOSX...
01:25 japhb joined #perl6
01:33 bacek #?rakudo 4 skip 'parsefail'
01:33 bacek skip(5, 'parsefail');# {
01:33 bacek this this from reduce.rakudo...
01:36 rakudo_svn r28125 | pmichaud++ | [rakudo]:
01:36 rakudo_svn r28125 | pmichaud++ | * Improved List.reduce (bacek++)
01:36 rakudo_svn r28125 | pmichaud++ | * Patch courtesy Vasily Chekalkin <bacek  at bacek.com>, RT#55368
01:36 pmichaud mine has
01:36 pmichaud #?rakudo 4 skip 'parsefail'
01:37 pmichaud skip(4, 'parsefail');# {
01:37 bacek pmichaud: strange...
01:46 bacek when I invoke 't/fudge' it create correct skip(4). But from fudgeall  it generates skip(5)...
02:17 bacek perl6: say [1..10].reduce: { $^a + $^b * $^c };
02:17 exp_evalbot kp6 r20682: OUTPUT[syntax error at position 4, line 1 column 4:␤say [1..10].reduce: { $^a + $^b * $^c }␤    ^ HERE␤]
02:17 exp_evalbot ..pugs: OUTPUT[141␤]
02:17 exp_evalbot ..rakudo r28125: OUTPUT[141␤]
02:17 exp_evalbot ..elf r20682: OUTPUT[Can't call method "reduce" on unblessed reference at (eval 14) line 3.␤ at ./elf_f_faster line 4492␤]
02:17 bacek perl6: say [1..10].reduce: { $^c + $^b * $^a };
02:17 exp_evalbot kp6 r20682: OUTPUT[syntax error at position 4, line 1 column 4:␤say [1..10].reduce: { $^c + $^b * $^a }␤    ^ HERE␤]
02:17 exp_evalbot ..pugs: OUTPUT[10␤]
02:17 exp_evalbot ..rakudo r28125: OUTPUT[12650␤]
02:17 exp_evalbot ..elf r20682: OUTPUT[Can't call method "reduce" on unblessed reference at (eval 14) line 3.␤ at ./elf_f_faster line 4492␤]
02:19 Psyche^ joined #perl6
02:20 bacek perl6: say { $^a + $^d }.arity
02:20 exp_evalbot kp6 r20682: OUTPUT[no method 'arity' in Class 'Int'␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 345␤      KindaPerl6::Runtime::Perl5::MO​P::__ANON__('HASH(0x8e5248c)', 'arity') called at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 169␤
02:20 exp_evalbot ..main::DISPATCH('HASH(0x8e5248c)', 'arity') called at - line 12␤]
02:20 exp_evalbot ..pugs: OUTPUT[<SubBlock(<anon>)>␤*** No such method in class Bool: "&arity"␤    at /tmp/ci34qN29Sh line 1, column 1 - line 2, column 1␤]
02:20 exp_evalbot ..rakudo r28125: OUTPUT[2␤]
02:20 exp_evalbot ..elf r20682: OUTPUT[Parse error in: /tmp/QQLqReeQBe␤panic at line 1 column 17 (pos 17): Statement not terminated properly␤WHERE: say { $^a + $^d }.arity␤WHERE:                 /\<-- HERE␤  STD_red/prelude.rb:98:in `panic'␤  STD_red/std.rb:355:in `eat_terminator'␤  STD_red/std.rb:269:in `block in
02:20 exp_evalbot ..statementlist'␤  STD_red/prelude.rb:153:in `call'␤  STD_red/pre...
02:20 bacek perl6: my $s = sub { $^a + $^d }; say $s.arity;
02:21 exp_evalbot kp6 r20682: OUTPUT[no method 'arity' in Class 'Code'␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 345␤     KindaPerl6::Runtime::Perl5::MO​P::__ANON__('HASH(0x8e52bd8)', 'arity') called at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 169␤
02:21 exp_evalbot ..main::DISPATCH('HASH(0x8e52bd8)', 'arity') called at compiled/perl5-kp6-mp6/lib/Kind...
02:21 exp_evalbot ..pugs: OUTPUT[1␤]
02:21 exp_evalbot ..rakudo r28125: OUTPUT[2␤]
02:21 exp_evalbot ..elf r20682: OUTPUT[Global symbol "$d" requires explicit package name at (eval 14) line 3.␤ at ./elf_f_faster line 4492␤]
02:21 bacek its weird... I expect "4"...
02:22 [particle] why? you have two params?
02:27 bacek [particle]: 'DWIM' principe... I thinks that $^d is forth param.
02:27 [particle] no no
02:27 [particle] they're taken in alphabetical order
02:28 [particle] rakudo: my $a = sub { $^something + $^some_other_thing }; say $a.arity
02:28 exp_evalbot rakudo r28125 OUTPUT[2␤]
02:29 [particle] would you expect that to be arity 7000000000000000000000000000000000000something?
02:29 bacek [particle]: eek.
02:29 bacek rakudo: say [1..10].reduce: { $^a + $^b * $^c };
02:29 exp_evalbot rakudo r28125 OUTPUT[141␤]
02:30 bacek rakudo: say [1..10].reduce: { $^c + $^b * $^a};
02:30 exp_evalbot rakudo r28125 OUTPUT[12650␤]
02:30 bacek why?
02:31 [particle] because the first argument is the result of the previous call
02:31 [particle] in one case, you add it
02:32 [particle] in the second case, you multiply it
02:32 [particle] $^a
02:32 bacek [particle]: why arguments reordered?
02:33 [particle] { $^b + $^a } # the first arg goes into the lexicographically-sorted first param ($^a)
02:33 [particle] second arg goes into second lexicographically-sorted param, $^b
02:33 [particle] etc
02:34 [particle] this allows you to use params in an order different from the order in which the args were passed
02:34 bacek [particle]: not very intuitive. what about { $^a + $^Я }? Second arg is 'russian capital ya'
02:35 [particle] unicode codepoint sorted
02:35 [particle] it's in the spec
02:35 bacek [particle]: which one?
02:35 [particle] S06?
02:36 [particle] have to check
02:36 bacek [particle]: I'll read it...
02:36 bacek afk, lunch time...
02:37 [particle] yes, S06:1520
02:46 Psyche^ joined #perl6
02:51 alanhaggai joined #perl6
03:07 Alias_ joined #perl6
03:11 BinGOs_ joined #perl6
03:48 Auzon perl6: say undef.WHAT
03:48 exp_evalbot kp6 r20682: OUTPUT[DISPATCH: calling WHAT on invalid object:$VAR1 = undef;␤␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 128␤        main::DISPATCH('undef', 'WHAT') called at - line 11␤]
03:48 exp_evalbot ..pugs: OUTPUT[Scalar␤]
03:48 exp_evalbot ..rakudo r28127: OUTPUT[Failure␤]
03:48 exp_evalbot ..elf r20682: OUTPUT[Undef␤]
03:49 Auzon perl6: say undef.defined;
03:49 exp_evalbot kp6 r20682: OUTPUT[DISPATCH: calling defined on invalid object:$VAR1 = undef;␤␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 128␤     main::DISPATCH('undef', 'defined') called at - line 11␤]
03:49 exp_evalbot ..pugs: OUTPUT[␤]
03:49 exp_evalbot ..rakudo r28127: OUTPUT[Method 'defined' not found for invocant of class 'Failure'␤current instr.: '_block11' pc 37 (EVAL_10:17)␤
03:49 exp_evalbot ..elf r20682: OUTPUT[Can't call method "defined" on an undefined value at (eval 14) line 3.␤ at ./elf_f_faster line 4492␤]
03:51 agentzh left #perl6
04:11 eternaleye joined #perl6
04:15 sri_work joined #perl6
04:40 pugs_svnbot r20683 | Auzon++ | [gsoc_spectest] Fixed typo in test. 1 modified test.
04:41 luqui joined #perl6
04:59 xinming joined #perl6
05:01 alanhaggai joined #perl6
05:02 seagreen100 joined #perl6
05:15 agentzh joined #perl6
05:20 dazjorz joined #perl6
05:21 ccube joined #perl6
05:45 meppl joined #perl6
05:48 moritz_ good morning
05:49 Auzon good evening moritz_ :)
05:52 moritz_ our common uptime seems to be severly limited by the various time zones ;)
05:52 moritz_ Auzon: what's your localtime?
05:53 Auzon mmm... 0053
05:53 Auzon I think I did that right
05:55 * Auzon usually doesn't use military time. But it's midnight, and I find am/pm to be weird with midnight/noon.
05:56 moritz_ ;)
05:57 moritz_ in Germany we use only the 0..23 range, but informally we sometimes say "5 o'clock noon"
05:57 moritz_ but you virtually never see that written down
05:57 Auzon So you're what? 8 hours ahead of me?
05:58 moritz_ 7
05:58 moritz_ 7:58 here
05:59 tuxdna joined #perl6
06:02 alc joined #perl6
06:03 pjcj_ joined #perl6
06:24 Psyche^ joined #perl6
06:56 tuxdna left #perl6
07:05 pmurias joined #perl6
07:13 iblechbot joined #perl6
07:25 moritz_ pugs: my $a = 1..5; my @b = $a; @b
07:25 exp_evalbot RESULT[[[1, 2, 3, 4, 5],]]
07:25 moritz_ pugs: my $a = 1..5; my @b = $a; say @b.elems
07:25 exp_evalbot OUTPUT[1␤]
07:26 moritz_ pugs: my $a = 1..5; my @b = $a; say @b[0].WHAT
07:26 exp_evalbot OUTPUT[Array␤]
07:27 moritz_ rakudo: say 2, 3, 4..6, 7
07:28 exp_evalbot rakudo r28127 OUTPUT[234567␤]
07:28 bacek pugs: my $a = (1..5); my @b = $a; say 'One '~@b; @b = $a; say 'Two '~@b;
07:28 exp_evalbot OUTPUT[One 1 2 3 4 5␤Two 1 2 3 4 5␤]
07:32 pugs_svnbot r20684 | moritz++ | [t] updated TASKS
07:44 kaether_ joined #perl6
07:50 araujo joined #perl6
07:53 elmex joined #perl6
08:40 drbean joined #perl6
08:53 moritz_ rakudo: say 1 ~~ Num
08:53 exp_evalbot rakudo r28127 OUTPUT[0␤]
08:59 moritz_ rakudo: say 1 ~~ Num|Int
08:59 exp_evalbot rakudo r28127 OUTPUT[1␤]
08:59 moritz_ wow, I didn't expect that to work ;)
09:03 bacek perl6: say 1 ~~ Item
09:03 exp_evalbot kp6 r20684: OUTPUT[no method 'APPLY' in Class 'Undef'␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 345␤    KindaPerl6::Runtime::Perl5::MO​P::__ANON__('HASH(0x824be0c)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 169␤
09:03 exp_evalbot ..main::DISPATCH('HASH(0x824be0c)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Kin...
09:03 exp_evalbot ..pugs: OUTPUT[1␤]
09:03 exp_evalbot ..rakudo r28127: OUTPUT[Method 'ACCEPTS' not found for invocant of class 'Failure'␤current instr.: 'infix:~~' pc 8638 (src/gen_builtins.pir:5845)␤
09:03 exp_evalbot ..elf r20684: OUTPUT[syntax error at (eval 14) line 3, near "1 ~"␤ at ./elf_f_faster line 4492␤]
09:03 moritz_ is class Item specced somewhere?
09:03 moritz_ I think TimToady had to rethink if we need it
09:03 bacek moritz_: no idea
09:04 moritz_ perl6: say 1 ~~ Any
09:04 exp_evalbot kp6 r20684: OUTPUT[no method 'APPLY' in Class 'Undef'␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 345␤    KindaPerl6::Runtime::Perl5::MO​P::__ANON__('HASH(0x824be0c)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 169␤
09:04 exp_evalbot ..main::DISPATCH('HASH(0x824be0c)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Kin...
09:04 exp_evalbot ..pugs: OUTPUT[1␤]
09:04 exp_evalbot ..rakudo r28127: OUTPUT[1␤]
09:04 bacek perl6: say 1 ~~ Any
09:04 exp_evalbot ..elf r20684: OUTPUT[syntax error at (eval 14) line 3, near "1 ~"␤ at ./elf_f_faster line 4492␤]
09:04 exp_evalbot kp6 r20684: OUTPUT[no method 'APPLY' in Class 'Undef'␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 345␤    KindaPerl6::Runtime::Perl5::MO​P::__ANON__('HASH(0x824be0c)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 169␤
09:04 exp_evalbot ..main::DISPATCH('HASH(0x824be0c)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Kin...
09:04 exp_evalbot ..pugs: OUTPUT[1␤]
09:04 exp_evalbot ..rakudo r28127: OUTPUT[1␤]
09:04 * moritz_ was faster
09:04 * bacek drop dead. Moritz was faster
09:04 exp_evalbot ..elf r20684: OUTPUT[syntax error at (eval 14) line 3, near "1 ~"␤ at ./elf_f_faster line 4492␤]
09:04 bacek moritz_: there is some ~~ Item in spectest
09:04 bacek may be we should replace it.
09:05 moritz_ spec/S29-list/first.t
09:05 bacek moritz_: exactly
09:05 moritz_ thinks so, yes
09:05 bacek moritz_: DONT STEAL MY KARMA!
09:05 bacek I'll fix it :)
09:05 moritz_ *lol*
09:06 moritz_ bacek: maybe just change it to Int, because that's what it is
09:06 moritz_ a test for Any isn't specific enough, because List ~~ Any
09:08 bacek moritz_: died on test8...
09:08 bacek heh
09:09 bacek rakudo: say 1 ~~ Num
09:09 exp_evalbot rakudo r28127 OUTPUT[0␤]
09:09 bacek this is the problem :)
09:09 moritz_ that's why I said "Int, because that's what it is"
09:09 moritz_ rakudo: say Int ~~ Num
09:09 exp_evalbot rakudo r28127 OUTPUT[0␤]
09:09 bacek rakudo: say 1.0 ~~ Num
09:09 moritz_ Int is a subset of Num, not is a Num
09:09 exp_evalbot rakudo r28127 OUTPUT[1␤]
09:10 bacek rakudo: say 1.0 ~~ Float
09:10 exp_evalbot rakudo r28127 OUTPUT[Method 'ACCEPTS' not found for invocant of class 'Float'␤current instr.: 'infix:~~' pc 8638 (src/gen_builtins.pir:5845)␤
09:10 bacek yeek
09:10 moritz_ that's rakudoesk for "not Type 'Float' found"
09:11 moritz_ there's no Float in the specs
09:12 bacek moritz_: yep.
09:12 pugs_svnbot r20685 | bacek++ | [spec] Replace ~~Item with ~~Int.
09:13 bacek now we can add S29-list/first.t to spectest_regression
09:13 moritz_ not for me
09:13 moritz_ 1..9
09:13 moritz_ Method 'ACCEPTS' not found for invocant of class 'Failure'
09:14 moritz_ (make localtest)++
09:14 moritz_ uhm, wtf?
09:14 moritz_ now it works
09:15 moritz_ bacek: ok, send patch ;)
09:16 * bacek thinks that update_passing_test_data.pl should output diff for spectest_regression.data
09:16 bacek :)
09:17 penk joined #perl6
09:21 bacek Ok. TIme to go home
09:21 bacek moritz_: canyou check S29-list/map_multy.t? It works for me
09:21 bacek And grep.t aswell.
09:22 moritz_ bacek: will do (later today)
09:22 bacek ok
09:22 bacek see ya in couple of hours
09:23 moritz_ there's no map_mult(i|y).t
09:30 araujo joined #perl6
09:31 araujo joined #perl6
09:42 masak joined #perl6
09:42 pugs_svnbot r20686 | pmurias++ | [elf] pointed out more distastfull deviations from Perl 6 in the elf code base
09:42 pmurias joined #perl6
09:42 moritz_ "distastefull deviations" nice description ;)
09:43 masak http://en.wikipedia.org/wiki/Alliteration
09:46 vsoni joined #perl6
09:47 ruoso joined #perl6
09:53 b_jonas joined #perl6
09:54 b_jonas ruby-1.8.7 came out last week
09:54 b_jonas I'm installing it now
09:55 moritz_ b_jonas: cross-poster ;)
09:55 b_jonas yeah
09:55 masak what is elf, actually?
09:55 masak I seem to have missed it among all implementations
09:55 moritz_ masak: yet another Perl 6 compiler
09:55 b_jonas the executable format or the creature?
09:55 masak moritz_: what's it do?
09:56 masak I mean, in what way is it special?
09:56 moritz_ masak: it consists of a ruby translation of STD.pm
09:56 masak ah, now I remember
09:56 moritz_ masak: and is bootstrapped with a Perl 5 backend (excpet the parsing)
09:56 masak does ruby have grammars?
09:56 moritz_ don't think so
09:58 masak then what was the advantage of translating STD.pm to ruby?
09:58 masak why not perl 5, say?
09:58 moritz_ "escape bootstrapping hell"
09:59 moritz_ so when your emitter breaks something, the parser doesn't
09:59 moritz_ at least I think that was mncharity's reason
09:59 masak ok
10:01 orafu joined #perl6
10:02 b_jonas_ joined #perl6
10:03 mj41__ joined #perl6
10:05 drbean joined #perl6
10:08 rakudo_svn joined #perl6
10:09 jan_ joined #perl6
10:09 cognominal_ joined #perl6
10:10 vixey joined #PERL6
10:19 agentzh joined #perl6
10:24 penk joined #perl6
10:43 moritz_ evalbot control version
10:43 exp_evalbot This is evalbot revision 20674
10:43 moritz_ evalbot control restart
10:43 moritz_ evalbot control version
10:43 exp_evalbot joined #perl6
10:43 exp_evalbot This is evalbot revision 20686
10:46 bacek joined #perl6
11:04 wknight8111 joined #perl6
11:38 alanhaggai joined #perl6
11:48 iblechbot joined #perl6
12:06 barney joined #perl6
12:25 pen1 joined #perl6
12:25 pmurias masak: why not perl5 than, i would guess mncharity likes ruby more than perl5
12:27 pmurias moritz_:  "bootstraping hell" is a problem untill you're bootstraped
12:28 moritz_ pmurias: probably better re-phrase "recompilation hell"
12:29 pmurias having a bootstraped grammar would be preferable, mncharity considered it, but it would be lots of boring work
12:30 pmurias being boostraped is a positive quality, once your compiler isn't extremely doggy
12:31 moritz_ und unless it slows down too much
12:31 moritz_ s/^u/a/
12:31 cjfields joined #perl6
12:32 cjfields purl, bugs?
12:32 cjfields bugs?
12:32 moritz_ no purl in #perl6 ;)
12:33 cjfields ah, forgot which list I was on.
12:33 pmurias s/doggy/dodgy/
12:47 alanhaggai joined #perl6
13:00 lichtkind joined #perl6
13:02 lichtkind moritz_: did you understand the concept of slurpy blocks?
13:05 rakudo_svn r28129 | pmichaud++ | [rakudo]:
13:05 rakudo_svn r28129 | pmichaud++ | * Handling cloning of ranges (RT#55400, bacek++)
13:05 rakudo_svn r28129 | pmichaud++ | * Patch courtesy Vasily Chekalkin <bacek  at bacek.com>
13:05 rakudo_svn r28129 | pmichaud++ | * Minor modifications by Pm
13:07 corneliu2_ joined #perl6
13:10 penk joined #perl6
13:21 avar pmichaud: is there a svn web thingy where one can view commits for rakudo?
13:22 pmichaud avar: yes
13:22 pmichaud it's the same as for parrot -- just a sec
13:22 pmichaud http://www.parrotvm.org/svn​/parrot/revision?rev=28129
13:22 lambdabot Title: revision: /parrot (Rev: 28129, via SVN::Web)
13:23 avar nomn nom nom
13:23 wknight8111 joined #perl6
13:23 sri_work joined #perl6
13:24 pmichaud pugs:  my $a = 1..5;    for =$a { say $_; };    say $a;
13:25 exp_evalbot OUTPUT[1␤2␤3␤4␤5␤1 2 3 4 5␤]
13:26 TJCRI joined #perl6
13:28 moritz_ lichtkind: I know blocks with slurpy sigs - do you mean that?
13:34 cmarcelo joined #perl6
13:44 alester joined #perl6
13:49 penk joined #perl6
13:49 jhorwitz joined #perl6
14:03 alanhaggai joined #perl6
14:14 pen1 joined #perl6
14:14 ruoso pmichaud, did my last message on p6-compiler exposed the problem you were looking for?
14:14 pmichaud ruoso: yes, many thanks.  Very well explained.
14:18 nothingmuch ruoso: ditch work!
14:19 ruoso :)
14:27 mofino joined #perl6
14:37 cmarcelo left #perl6
14:42 chris2 joined #perl6
14:49 cjfields joined #perl6
14:56 fglock joined #perl6
14:56 fglock hi!
14:57 moritz_ welcome back fglock ;)
14:57 fglock moritz_: it's nice to be back :)
15:02 ruoso fglock, hey :)
15:03 fglock hi ruoso! how was your trip?
15:03 ruoso nice... thanks...
15:04 fglock going home - I'll try to reconnect later &
15:15 cjfields pugs: "ABC-DEF".trans(("- AB..Z" => "_ a..z"))
15:15 exp_evalbot RESULT["abc_def"]
15:15 sscaffidi joined #perl6
15:24 rakudo_svn r28140 | Whiteknight++ | [Rakudo] update builtins to use ".namespace []" instead of ".namespace", as per #48549
15:28 rakudo_svn r28141 | Whiteknight++ | [Rakudo] update classes to use ".namespace []" instead of ".namespace", as per #48549
15:32 cjfields_ joined #perl6
16:12 justatheory joined #perl6
16:15 Arathorn joined #perl6
16:23 jferrero joined #perl6
16:25 moritz_ pugs: given (2) { say "yes" when 2 }
16:25 exp_evalbot OUTPUT[*** ␤    Unexpected "when"␤    expecting operator, ":", "," or "}"␤    at /tmp/VIRe1UFRaJ line 1, column 23␤]
16:26 moritz_ pugs: given (2) { say "yes" when 2; }
16:26 exp_evalbot OUTPUT[*** ␤    Unexpected "when"␤    expecting operator, ":", "," or "}"␤    at /tmp/8OePiLTMuQ line 1, column 23␤]
16:26 moritz_ ok, pugs doesn't allow when as a statement modifier
16:31 moritz_ rakudo: say |(1, 2, 3)
16:31 exp_evalbot rakudo r28145 OUTPUT[␤get_bool() not implemented in class 'Junction'␤current instr.: 'parrot;PCT::HLLCompiler;command_line' pc 1288 (src/PCT/HLLCompiler.pir:688)␤
16:31 moritz_ pugs: say |(1, 2, 3)
16:31 exp_evalbot OUTPUT[123␤]
16:32 [particle] seems rakudo doesn't have prefix:|
16:32 [particle] or is it the |() op?
16:32 moritz_ prefix:|
16:34 diakopter wow; that was almost trivial
16:34 moritz_ diakopter: what, adding prefix:| to yap6?
16:35 diakopter (adding infinite recursion detection to the recursive-descent-parser framework)
16:35 * diakopter pats self on the back
16:36 diakopter i'm surprised mjd didn't include it himself
16:37 moritz_ diakopter: I think there is something like that in HOP
16:37 moritz_ diakopter: at least for head-recursion
16:37 moritz_ (or is that called left-recursion? dunno)
16:39 diakopter there isn't something like that in the parser chapter.. it might be in the regex chapter
16:39 pugs_svnbot r20687 | diakopter++ | [yap6]
16:39 pugs_svnbot r20687 | diakopter++ | added infinite recursion detection to the parser
16:39 pugs_svnbot r20687 | diakopter++ | fixed the expr rule problem from earlier
16:39 diakopter anyway, I like my implementation :)
16:39 pugs_svnbot r20687 | diakopter++ | moved some generic parser generator functions to Parser.pm
16:39 pugs_svnbot r20687 | diakopter++ | merged in some more functions from HOP::Lexer to Lexer.pm
16:40 diakopter moritz_: how soon before exp_evalbot updates its svn
16:40 [particle] diakopter: can you add the svn diff links back to *_svnbot?
16:40 diakopter 11:35:37 < moritz_> (or is that called left-recursion? dunno)
16:40 [particle] i guess moritz_ could do it, too
16:40 diakopter argh; mispaste again
16:40 moritz_ evalbot control restart
16:40 diakopter stupid putty/rightmouseclick
16:40 exp_evalbot joined #perl6
16:41 moritz_ evalbot control version
16:41 exp_evalbot This is evalbot revision 20687
16:41 moritz_ diakopter: lucky you ;)
16:41 diakopter [particle]: I had it that way a few months ago but folks here complained that they didn't want them
16:41 moritz_ [particle]: people tend to use the links in the irc logs when they have a browser open anyway
16:42 [particle] oh
16:42 [particle] well, the most important links to me are for rakudo anyway, and i get those next door
16:42 moritz_ (at least I do some, and since I got very positive feedback after adding those I guess I'm not the only one)
16:42 pugs_svnbot r20688 | diakopter++ | [yap6]
16:42 pugs_svnbot r20688 | diakopter++ | fixing my dumb typos
16:43 diakopter evalbot control version
16:43 exp_evalbot This is evalbot revision 20687
16:43 moritz_ diakopter: btw the svn updates every three minutes
16:44 moritz_ sorry, 5
16:44 olmazeg joined #perl6
16:44 diakopter [particle]: what, you don't like to read my piddly commit diffs? :P
16:45 moritz_ yap6: say 42+3
16:45 diakopter hee
16:45 exp_evalbot joined #perl6
16:45 moritz_ Segmentation fault
16:45 diakopter r20689 works
16:46 diakopter evalbot control version
16:46 exp_evalbot This is evalbot revision 20688
16:46 diakopter evalbot control svnupdate
16:47 moritz_ diakopter: it can't do that, it doesn't have write permissions
16:48 diakopter it could mark a semaphore file somewhere the updater controller can read?
16:49 moritz_ that would be possible
16:49 moritz_ (but not as easy as the other operations so far)
16:51 [particle] diakopter: that's exactly what i wanted to do! to keep track of you and ruoso and fglock etc
16:51 pugs_svnbot r20689 | diakopter++ | [yap6]
16:51 pugs_svnbot r20689 | diakopter++ | removed more tracing cruft
16:51 moritz_ yap6: say 2+42
16:51 [particle] it's hard for me to manage 17 open ff tabs
16:52 exp_evalbot joined #perl6
16:52 moritz_ uhm, wtf does evalbot segfault?
16:52 [particle] rakudo: say "hi"
16:52 exp_evalbot rakudo r28145 OUTPUT[hi␤]
16:52 [particle] yap6: say 1
16:52 [particle] heh
16:52 exp_evalbot joined #perl6
16:53 diakopter evalbot control version
16:53 exp_evalbot This is evalbot revision 20688
16:53 moritz_ rakudo: say 1
16:53 exp_evalbot rakudo r28145 OUTPUT[1␤]
16:54 diakopter pugs: say { say 3; };
16:54 exp_evalbot OUTPUT[<SubBlock(<anon>)>␤]
16:56 diakopter moritz_: yap6 won't parse say 42+3 yet because it doesn't yet do longest token matching.
16:58 moritz_ why doest it need LTM for parsing that?
16:58 diakopter b/c it matches 42 as an expression
16:59 diakopter and therefore plus(expr(say 42),3) doesn't parse
16:59 moritz_ why not?
17:00 moritz_ say 42 is also a valid expression ;)
17:00 * diakopter follows the trace output
17:05 kaether_ joined #perl6
17:06 diakopter oh.  hrm. :/
17:07 moritz_ if you rely on LTM for getting the precedence right you'll need exponential time in the number of tokens at worst
17:09 diakopter moritz_: ok; thanks
17:10 * moritz_ remembers reading about a cool interpreter with mutable syntax that did roughly that...
17:10 moritz_ nice paper
17:11 moritz_ the drawbacks were that it took about a minute to start the interpreter and parse/compile the prelude
17:12 diakopter heh
17:13 Juerd moritz_: Did you know who was behind tnx.nl/php? :)
17:13 moritz_ Juerd: no. you?
17:13 Juerd Yea :)
17:14 moritz_ a whois is helpful ;)
17:14 diakopter moritz_: oh... I see what I did wrong... alternate() shouldn't have infinite recursion detection, but concatenate() should.
17:14 diakopter I just assumed.... instead of thinking through it :)
17:15 moritz_ (btw that virtual machine already did JITting - it was a few minutes before ;)
17:15 pugs_svnbot r20690 | diakopter++ | [yap6]
17:15 pugs_svnbot r20690 | diakopter++ | remove infinite recursion detection from alternate()
17:21 diakopter btw, as of yesterday yap6 only outputs whether parse succeeded or failed.
17:22 moritz_ yap6: say 1
17:22 exp_evalbot OUTPUT[Parse successful␤]
17:22 moritz_ ok
17:22 moritz_ yap6: say 1+2*3
17:22 exp_evalbot OUTPUT[Parse successful␤]
17:22 moritz_ yap6: say(1+2*3,4)
17:22 exp_evalbot OUTPUT[  Syntax Error near: "say"]
17:22 moritz_ yap6: say(1)
17:22 exp_evalbot OUTPUT[Parse successful␤]
17:22 moritz_ yap6: say(1,2)
17:22 exp_evalbot OUTPUT[  Syntax Error near: "say"]
17:22 diakopter it doesn't do commas yet
17:22 moritz_ ok, no lists yet
17:23 diakopter yap6: say(1+2*3**4)
17:23 exp_evalbot OUTPUT[Parse successful␤]
17:23 diakopter evalbot control version
17:23 exp_evalbot This is evalbot revision 20688
17:24 moritz_ diakopter: that version is only evalbot's version, not yap6's
17:24 moritz_ kp6: say 0
17:24 exp_evalbot kp6 r20690: OUTPUT[0␤]
17:24 moritz_ that's the svn repo's revision
17:24 diakopter oh ok
17:24 moritz_ bbl &
17:30 diakopter yap6: say 42+3+5+(((((((((((((((((((((((((((((((((say 4))))))))))))))))))))))))))))))))))
17:30 exp_evalbot OUTPUT[  Syntax Error near: ")"]
17:30 diakopter yap6: say 42+3+5+(((((((((((((((((((((((((((((((((say 4)))))))))))))))))))))))))))))))))
17:30 exp_evalbot OUTPUT[Parse successful␤]
17:31 diakopter yap6: my $sub1=multi sub { 4+5; my $q = 4452; say $q }
17:31 exp_evalbot OUTPUT[Parse successful␤]
17:42 Khisanth lisp? :P
17:45 Southen joined #perl6
18:16 meppl joined #perl6
18:21 iblechbot joined #perl6
18:22 ruoso joined #perl6
18:28 diakopter I'm realizing that what I'm currently working on in yap6 is only a lexer with a little bit of syntax checking.  Full syntax checking will need to occur in another pass.
18:28 diakopter well, semantics checking.
18:54 ruoso diakopter, even syntax is not that simple... because BEGIN code might change the future syntax...
18:54 ruoso nothingmuch, around?
18:58 nothingmuch iishish
18:58 * nothingmuch is reasing
18:58 nothingmuch reading
18:58 nothingmuch before napping
19:00 diakopter ruoso: right, so when the current parser detects something that changes the future syntax, the new parser is swapped in
19:00 ruoso diakopter, the parser have a runtime state that is changeable
19:00 ruoso it's not a new parser
19:00 ruoso it's the same parser that morphs
19:01 diakopter I mean, the morphed parser is swapped in for the rest of the parsing unit
19:01 diakopter I meant "new parser" just to mean one that's even slightly different from the current
19:02 ruoso nothingmuch, if cog's around, could you please ask him some suggestions on what I could do tomorrow between 5 am and someone getting up....
19:03 ruoso diakopter, i see... it's the same parser, but the changes are always localized (or not)
19:04 wilx` joined #perl6
19:04 diakopter ruoso: I've been talking about parse-time.  but you're saying the grammar can be changed arbitrarily at runtime, from some arbitrary IO... which means the parsing unit will need to be parsed just like an arbitrary eval
19:04 diakopter so there's another parse-time
19:04 diakopter what I've called a parsing unit
19:05 ruoso BEGIN is at parse time
19:05 diakopter in other words, BEGIN is parsed as the first parsing unit
19:05 diakopter BEGIN had better occur before the new-syntax-code in the file, then. :) ...
19:07 diakopter because otherwise it means, when the parser encounters the BEGIN block, it should immediately parse, semantic check, type check, compile/run/interpret the contents of the block, and apply any grammar changes as instructed.
19:07 ruoso exactly
19:08 diakopter and then somehow go back and parse stuff occuring before the BEGIN block with the new grammar
19:08 ruoso exactly
19:08 diakopter so which is it... can a BEGIN block affect syntax preceding it?  or not?
19:09 ruoso preceding, i don't think so
19:09 diakopter ok; that's all I meant by "BEGIN had better occur before the new-syntax-code in the file, then."
19:10 ruoso yes
19:10 ruoso :)
19:11 diakopter alright, that's straightforward to implement in the yap6 framework
19:11 diakopter (b/c all the data structures are streams, even the [imagined] AST and IR/IL
19:11 diakopter )
19:12 ruoso lazy parsing?
19:12 ruoso that's a new one
19:12 ruoso :)
19:15 diakopter bbiaw
19:33 diakopter moritz_: after studying it more, [operator] precedence levels should also be straightforward.  Each precedence level gets its own rule, with the shape of the rule representing the affixedness of the operator
19:34 diakopter Each level is chained to the other
19:34 diakopter where there are multiple shapes for a given precedence level, each is part of an alternative()
19:34 diakopter alternate()
19:43 pugs_svnbot r20691 | diakopter++ | [yap6]
19:43 pugs_svnbot r20691 | diakopter++ | added a dieif() parser generator, which dies on success with the
19:43 pugs_svnbot r20691 | diakopter++ | provided message.  Useful for implementing the deprecation errors
19:44 pugs_svnbot r20691 | diakopter++ | in STD.pm.
19:44 pugs_svnbot r20691 | diakopter++ | Added lots of syntax from S11 & S10
19:44 pugs_svnbot r20691 | diakopter++ | removed two of the lexing categores (newline/usev6).  WS is next. :)
19:44 pugs_svnbot r20691 | diakopter++ | Fixed some more precedence problems
19:48 diakopter please, anyone, feel free to correct the inefficiencies represented in my very crude Perl 5 skills in yap6... I'm sure I have suboptimal algorithms & bad design all over the place.
19:52 diakopter moritz_: and then, each operator precedence level includes as its last option the next higher precedence level, so expressions that don't include all of the precedence levels still work. :)
19:56 diakopter for instance, see "rule op_numaddt" and "rule term" at http://www.parrotvm.org/svn/pugs/blame/misc​/yap6/src/lib/Perl6in5/Grammar/STD_hand.pm
19:56 lambdabot Title: blame: /pugs/misc/yap6/src/lib/Pe​rl6in5/Grammar/STD_hand.pm (Rev: HEAD, via SVN: ..., http://tinyurl.com/6dxmbg
20:00 diakopter hmm, now to choose an overload operator that represents "concatenate but with no intervening whitespace"  how about +
20:01 diakopter yap6: my$a=3;
20:01 exp_evalbot OUTPUT[Parse successful␤]
20:01 diakopter heh
20:03 diakopter yap6: package Bar { my $fee; multi method foo { say$fee;}; multi method blue { say 2234 } }
20:03 exp_evalbot OUTPUT[Parse successful␤]
20:04 wolverian yap6: package Bar {
20:04 exp_evalbot OUTPUT[  Syntax Error near: "package"]
20:04 wolverian well, near enough :)
20:10 diakopter yap6: say say say 4; say (say (say (say (23+23432/2234+2234**5666))))
20:10 exp_evalbot OUTPUT[Parse successful␤]
20:15 xinming yap6: say if say if say if say if 0;
20:15 exp_evalbot OUTPUT[  Syntax Error near: "if"]
20:15 xinming yap6: say "hello" if 1;
20:15 exp_evalbot OUTPUT[  Syntax Error near: "\""]
20:15 diakopter xinming: it doesn't know "if" yet :)
20:15 xinming err... Not implemented. :-)
20:16 diakopter nor quotes :)
20:16 moritz_ diakopter: do you have a plan for context-sensitve lexing yet?
20:16 diakopter such as quotes?
20:17 diakopter or whatever the new name for qq{} is
20:17 diakopter or <>
20:17 moritz_ quotes, regexes
20:17 moritz_ <...> are quotes in p6
20:17 diakopter yep; just like the other rules... a recursive hierarchy of detection rules
20:18 diakopter but when a parser enters a quoted region,  things are redefined... well actually, the parsers for the grammar variants are generated before parsing begins
20:19 diakopter it's because of the several layers of indirection
20:19 diakopter $base vs $base vs base()
20:19 diakopter $base vs $Base vs base()
20:20 moritz_ how does that work with look-aheads?
20:20 diakopter so, if " doesn't trigger a grammar shift within <>, it's treated just as bare text.
20:20 moritz_ I mean what happens with a lookahead into a part of a string that's handled by a different lexer?
20:21 diakopter hey, how it's implemented by the thing that generates grammars from STD.pm is another question... I'm just concerned with parsing STD.pm... and I'm not convinced lookaheads are needed for that.
20:23 diakopter what are lookaheads even used for in STD.pm?  I bet there's a way to represent the rule that doesn't need them...
20:23 moritz_ ok, I'll stop bugging you with non-productive questions ;)
20:24 diakopter or, converts them to recursive descent syntax
20:25 diakopter oh.  there's a much easier way to do infinite recursion detection.
20:26 diakopter (so that degenerate grammars can be specified)
20:26 moritz_ actually most grammars that have a lookahead of $n can be reduced to a grammar of 1
20:26 moritz_ s:last/grammar/lookahead/
20:27 diakopter that's what I intuitively figured
20:27 moritz_ and 1 token lookahead is no problem, because it doesn't go past DSL boundaries
20:27 moritz_ because each DSL boundary knows that it is one
20:43 lichtkind_ joined #perl6
20:44 diakopter actually, there wouldn't be another parsing "step", per se... the semantic checking would be done by the lexhandlers (one for each rule).
20:44 diakopter s/step/pass/
20:45 alanhaggai_ joined #perl6
20:47 diakopter in the new syntax, "-" will continue to mean concatenate, but it also means with intervening whitespace allowed.  "+" will mean no whitespace allowed.
20:51 * ruoso going to braga &
21:13 meppl joined #perl6
21:51 IllvilJa joined #perl6
21:53 meppl good night
21:53 diakopter gnight
21:55 meppl ;)
21:58 * diakopter !home
22:01 dolmen joined #perl6
22:05 dolmen perl6: my $a of int;
22:05 exp_evalbot kp6 r20691: OUTPUT[no method 'APPLY' in Class 'Undef'␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 345␤    KindaPerl6::Runtime::Perl5::MO​P::__ANON__('HASH(0x824bfb4)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 169␤
22:05 exp_evalbot ..main::DISPATCH('HASH(0x824bfb4)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Kin...
22:05 exp_evalbot ..pugs: OUTPUT[*** ␤    Unexpected "of"␤    expecting "?", "!", trait, "=", infix assignment or operator␤    at /tmp/ns2orSs70f line 1, column 7␤]
22:05 exp_evalbot ..rakudo r28145: OUTPUT[Statement not terminated properly at line 1, near "of int;"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
22:05 exp_evalbot ..elf r20691: OUTPUT[Unknown rule: trait_verb:fulltypename␤It needs to be added to ast_handlers.␤ at ./elf_f_faster line 2674␤]
22:06 dolmen perl6: my @a of int;
22:06 exp_evalbot kp6 r20691: OUTPUT[no method 'APPLY' in Class 'Undef'␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 345␤    KindaPerl6::Runtime::Perl5::MO​P::__ANON__('HASH(0x824bf1c)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 169␤
22:06 exp_evalbot ..main::DISPATCH('HASH(0x824bf1c)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Kin...
22:06 exp_evalbot ..pugs: OUTPUT[*** ␤    Unexpected "of"␤    expecting "?", "!", trait, "=", infix assignment or operator␤    at /tmp/vs6JNJwwge line 1, column 7␤]
22:06 exp_evalbot ..rakudo r28145: OUTPUT[Statement not terminated properly at line 1, near "of int;"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
22:06 exp_evalbot ..elf r20691: OUTPUT[Unknown rule: trait_verb:fulltypename␤It needs to be added to ast_handlers.␤ at ./elf_f_faster line 2674␤]
22:11 REPLeffect_ joined #perl6
22:27 dolmen perl6: my $a of Int;
22:27 exp_evalbot kp6 r20691: OUTPUT[no method 'APPLY' in Class 'Undef'␤ at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 345␤    KindaPerl6::Runtime::Perl5::MO​P::__ANON__('HASH(0x824bfb4)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Ki​ndaPerl6/Runtime/Perl5/MOP.pm line 169␤
22:27 exp_evalbot ..main::DISPATCH('HASH(0x824bfb4)', 'APPLY') called at compiled/perl5-kp6-mp6/lib/Kin...
22:27 exp_evalbot ..pugs: OUTPUT[*** ␤    Unexpected "of"␤    expecting "?", "!", trait, "=", infix assignment or operator␤    at /tmp/La5bRJxF90 line 1, column 7␤]
22:27 exp_evalbot ..rakudo r28145: OUTPUT['of' not implemented at line 1, near ";"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
22:27 exp_evalbot ..elf r20691: OUTPUT[Unknown rule: trait_verb:fulltypename␤It needs to be added to ast_handlers.␤ at ./elf_f_faster line 2674␤]
22:28 moritz_ still not implemented ;)
22:28 SamB joined #perl6
22:48 rakudo_svn r28146 | pmichaud++ | [rakudo]:
22:48 rakudo_svn r28146 | pmichaud++ | * Fix .list and !flatten so they don't generate clones of the elements.
22:48 rakudo_svn r28146 | pmichaud++ | * This also fixes Range.WHAT.
22:55 dolmen rakudo: say (1..2).WHAT;
22:55 exp_evalbot rakudo r28146 OUTPUT[Range␤]
22:56 dolmen rakudo: say (1..2).perl;
22:56 exp_evalbot rakudo r28146 OUTPUT[1..2␤]
22:56 dolmen rakudo: say (1..*).WHAT;
22:56 exp_evalbot rakudo r28146 OUTPUT[Range␤]
22:56 dolmen rakudo: say (1..*)[3];
22:56 exp_evalbot rakudo r28146 OUTPUT[get_pmc_keyed() not implemented in class 'Range'␤current instr.: '_block11' pc 58 (EVAL_13:23)␤
22:57 dolmen rakudo: say (1..8)[3];
22:57 exp_evalbot rakudo r28146 OUTPUT[get_pmc_keyed() not implemented in class 'Range'␤current instr.: '_block11' pc 52 (EVAL_13:23)␤
22:57 dolmen rakudo: say ((1..8)[3]);
22:57 exp_evalbot rakudo r28146 OUTPUT[get_pmc_keyed() not implemented in class 'Range'␤current instr.: '_block11' pc 52 (EVAL_13:23)␤
22:57 dolmen rakudo: say ((1..8)[0..3]);
22:57 exp_evalbot rakudo r28146 OUTPUT[get_integer() not implemented in class 'Range'␤current instr.: 'parrot;Perl6Object;new' pc 337 (src/gen_builtins.pir:227)␤
23:01 dolmen rakudo: my @a=1..8; say @a[0..3];
23:01 exp_evalbot rakudo r28146 OUTPUT[get_integer() not implemented in class 'Range'␤current instr.: 'parrot;Perl6Object;new' pc 337 (src/gen_builtins.pir:227)␤
23:01 dolmen rakudo: my @a=1..8;
23:01 exp_evalbot rakudo r28146 RESULT[[1, 2, 3, 4, 5, 6, 7, 8]]
23:02 dolmen rakudo: my @a=1..8; say @a[0..3].perl;
23:02 exp_evalbot rakudo r28146 OUTPUT[get_integer() not implemented in class 'Range'␤current instr.: 'parrot;Perl6Object;new' pc 337 (src/gen_builtins.pir:227)␤
23:02 dolmen rakudo: my @a=1..8; say @a[3].perl;
23:02 exp_evalbot rakudo r28146 OUTPUT[4␤]
23:02 dolmen rakudo: my @a=1..8; say @a[2,3].perl;
23:02 exp_evalbot rakudo r28146 OUTPUT[3␤]
23:02 dolmen rakudo: my @a=1..8; say @a[2].perl;
23:02 exp_evalbot rakudo r28146 OUTPUT[3␤]
23:02 dolmen rakudo: my @a=1..8; say @a[3].perl;
23:02 exp_evalbot rakudo r28146 OUTPUT[4␤]
23:03 dolmen rakudo: my @a=1..8; say @a[2,7].perl;
23:03 exp_evalbot rakudo r28146 OUTPUT[3␤]
23:03 dolmen rakudo: my @a=1..8; say @a[2.7].perl;
23:03 exp_evalbot rakudo r28146 OUTPUT[3␤]
23:03 dolmen rakudo: my @a=1..8; say @a[2.0].perl;
23:03 exp_evalbot rakudo r28146 OUTPUT[3␤]
23:03 dolmen rakudo: my @a=1..8; say @a[2.01].perl;
23:03 exp_evalbot rakudo r28146 OUTPUT[3␤]
23:10 corneliu2_ joined #perl6
23:38 eternaleye joined #perl6
23:39 vixey joined #perl6
23:41 xinming_ joined #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo