Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-06-23

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:04 grtnam1 joined #perl6
00:33 rakudo_svn r28657 | coke++ | RT#56076 ([PATCH] MACOSX_DEPLOYMENT_TARGET not defined during OSX PPC Rakudo build)
00:33 rakudo_svn r28657 | coke++ |
00:33 rakudo_svn r28657 | coke++ | This adds (proactively, in some cases) the MACOSX_DEPLOYMENT_TARGET env. var
00:33 rakudo_svn r28657 | coke++ | to the various languge builds; we've found this to be required on OSX with
00:33 rakudo_svn r28657 | coke++ | the current code base.
00:34 rakudo_svn r28657 | coke++ |
00:34 rakudo_svn r28657 | coke++ | Patch courtesy Packy Anderson (packy++ at dardan dot com)
00:36 rakudo_svn r28658 | jkeenan++ | Correct POD formatting errors.
00:41 JoshuaTree joined #perl6
01:39 penk joined #perl6
01:47 ting joined #perl6
01:51 eternaleye_ joined #perl6
01:52 justatheory joined #perl6
01:57 JoshuaK joined #perl6
02:06 GeJ joined #perl6
02:28 cjfields joined #perl6
02:29 eternaleye joined #perl6
02:31 cjfields pugs: say 'ABC'.trans('A-Z' => 'a-z');
02:31 p6eval OUTPUT[aBC␤]
02:31 diakopter ran some load tests on the packrat parser
02:32 diakopter :( it's still broken
02:33 diakopter disabling it for now... as with the opp, it won't need left recursive rules
02:34 diakopter without it enabled, parse times are n**2+n+3, where n is 50 statements
02:36 cjfields pugs: say "\b\n".trans('\b' => 'A', '\n' => 'B');
02:36 p6eval OUTPUT[AB␤]
02:37 cjfields oi...
02:37 cjfields pugs: say "\b\n".trans("\b" => 'A', "\n" => 'B');
02:37 p6eval OUTPUT[A␤␤]
02:37 cjfields oi oi oi...
02:43 Eevee joined #perl6
02:48 cjfields pugs: say "\b\n\n".trans("\b" => 'A', "\n" => 'B');
02:48 p6eval OUTPUT[A␤␤␤]
02:49 cjfields pugs: print "\b\n".trans("\b" => 'A', "\n" => 'B');
02:49 p6eval OUTPUT[A␤]
02:50 diakopter so it stringifies the key in qq
02:50 a-jing joined #perl6
02:50 a-jing left #perl6
03:00 justatheory joined #perl6
03:02 elmex_ joined #perl6
03:26 cjfields joined #perl6
03:41 cjfields back
03:43 cjfields diakopter: 'so it stringifies the key in qq'; well, pugs does so only partially (works with /b,leaves out /n).  However, it interprets escaped chars in qw (single quotes) as if they are qq.
03:43 cjfields so it's a mixed bag, really, but I'm not expecting the correct answer from pugs...
03:43 cjfields just a close to correct one!
03:49 cjfields speaking of pugs, nice to see a renewed effort to get it running again using the latest ghc
03:56 eternaleye joined #perl6
04:01 eternaleye_ joined #perl6
04:01 sri_work joined #perl6
05:12 Psyche^ joined #perl6
05:37 scrottie "speaking of pugs, nice to see a renewed effort to get it running again using the latest ghc" -- yay!
06:01 diakopter scrottie: see the updated INSTALL file
06:01 diakopter it works
06:01 * diakopter amending my previous performance statements
06:02 diakopter fixed the packratness; got rid of a bunch of WRONG premature optimization... and then did some other kinds of RIGHT premature optimization
06:03 diakopter regression line for time vs input is 0.09n**2+0.9n+0.1
06:03 diakopter so, a slight polynomial term but dominated by linear.
06:07 diakopter so, 1200 chars in 12 seconds.  now it's only 1/20 the speed of STD5
06:10 Jedai joined #perl6
06:23 apeiron joined #perl6
06:35 eternaleye joined #perl6
06:55 iblechbot joined #perl6
07:00 polettix joined #perl6
07:02 pugs_svnbot r20968 | diakopter++ | [yap6]
07:02 pugs_svnbot r20968 | diakopter++ | * LOTS of performanc improvements; it's actually usable, barely.
07:20 cosimo joined #perl6
07:20 pugs_svnbot r20969 | moritz++ | [spec] finer graded fudging of complex.t
07:26 bacek_ moritz_:  its actually bug in Test.pm
07:26 bacek_ in 'approx'
07:26 moritz_ bacek_: how so?
07:27 bacek_ abs($x-$y)
07:27 moritz_ and no abs(Complex) multi?
07:27 bacek_ yes
07:28 moritz_ frome the mathematical POW it looks fine
07:28 bacek_ perl6: say cis(3*pi/2)
07:28 p6eval kp6 r20969: OUTPUT[no method 'APPLY' in Class 'Undef'␤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 345␤
07:28 p6eval ..pugs: OUTPUT[*** No such subroutine: "&cis"␤    at /tmp/T6jpJZSr7l line 1, column 5 - line 2, column 1␤]
07:28 p6eval ..rakudo r28667: OUTPUT[-1.83691e-16-1i␤]
07:28 p6eval ..elf r20969: OUTPUT[Undefined subroutine &GLOBAL::pi called at (eval 119) line 3.␤ at ./elf_f line 3854␤]
07:28 bacek_ he. Looks like rakudo right about result.
07:28 bacek_ So its just test wrong. It should be -1i
07:29 moritz_ aye
07:31 moritz_ bacek_: are you going to fix it?
07:33 moritz_ pmichaud: btw as long as method fallback is still active, rand($Num) is valid syntax (as fallback for $Num.rand)
07:36 bacek_ moritz_: no... I'm not 100% sure...
07:36 moritz_ bacek_: but I am ;)
07:36 bacek_ perl6: my $arg = 3*pi/2; say cis($arg); say cos($arg) + 1i*sin($arg)
07:37 p6eval kp6 r20969: OUTPUT[no method 'APPLY' in Class 'Undef'␤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 345␤
07:37 p6eval ..pugs: OUTPUT[*** No such subroutine: "&cis"␤    at /tmp/e8ObffV8hK line 1, column 23-32␤]
07:37 p6eval ..rakudo r28667: OUTPUT[-1.83691e-16-1i␤-1.83691e-16-1i␤]
07:37 p6eval ..elf r20969: OUTPUT[Undefined subroutine &GLOBAL::pi called at (eval 127) line 3.␤ at ./elf_f line 3854␤]
07:37 moritz_ and I'm the one who broke it in the first place ;)
07:37 bacek_ moritz_: yeap. test is wrong
07:38 bacek_ rakudo: say -1i
07:38 p6eval rakudo r28667 OUTPUT[-1␤]
07:38 bacek_ but we can't unfudge it yet :)
07:38 moritz_ yes, it's missing the prefix:<->
07:38 moritz_ which you've submitted a patch for iirc
07:38 bacek_ #56540 iirc :)
07:39 * moritz_ doesn't remeber ticket numbers ;)
07:39 bacek_ #56230. Just checked my inbox :)
07:41 pugs_svnbot r20970 | bacek++ | [spec] Fix test and fudge reason in complex.t
07:42 * bacek_ steal little bit of karma from moritz
07:42 moritz_ you can have all of my #perl6 karma if you implement perl 6 for me ;)
07:43 bacek_ moritz_: in progress :)
07:43 moritz_ I know ;)
07:44 bacek_ r28610... There is Num.unpolar already...
07:44 bacek_ rakudo: say 1.unploar(1i)
07:44 p6eval rakudo r28667 OUTPUT[Method 'unploar' not found for invocant of class 'Int'␤current instr.: '_block11' pc 49 (EVAL_13:20)␤
07:45 bacek_ rakudo: say 1.unpolar(1)
07:45 p6eval rakudo r28667 OUTPUT[Method 'unpolar' not found for invocant of class 'Int'␤current instr.: '_block11' pc 38 (EVAL_13:19)␤
07:45 moritz_ rakudo: say (1.1).unpolar(1)
07:45 p6eval rakudo r28667 OUTPUT[0.594333+0.925618i␤]
07:45 bacek_ yak... Its Int ot Num promotion problem
07:46 bacek_ rakudo: say 1.0.unpolar(2)
07:46 p6eval rakudo r28667 OUTPUT[-0.416147+0.909297i␤]
07:46 * moritz_ woders if Num shouldn't just be a role that all numeric types do
07:46 bacek_ moritz_: +1.
07:47 bacek_ Why you calculate $angle in complex.t?
07:47 moritz_ I was too lazy to write 110 tests manually
07:50 moritz_ sigh, why do some of my pages don't display correctly in FF3?
07:51 bacek_ but $angle not used...
07:51 moritz_ in the first block, yes
07:51 moritz_ that's not intentional
07:54 bacek_ You steal my cpu-cicles!!! :)
07:55 moritz_ bacek_: but only to prevent you from sending more spam (/me ducks)
07:55 moritz_ ;-)
07:55 bacek_ but my spam contains patches for rakudo!
07:55 bacek_ ok. time to go home. See you in couple of hours.
07:56 moritz_ ciao
08:04 sri_work joined #perl6
08:06 sri_work joined #perl6
08:08 sri_work left #perl6
08:08 sri_work joined #perl6
08:09 sri_work joined #perl6
08:12 luqui joined #perl6
08:16 bsb joined #perl6
08:19 masak joined #perl6
08:31 masak joined #perl6
08:32 meppl joined #perl6
09:00 xinming joined #perl6
09:09 jfredett joined #perl6
09:28 moritz_ rakudo: say pi / 2
09:28 p6eval rakudo r28667 OUTPUT[1.5708␤]
09:38 drbean joined #perl6
09:53 Jedai joined #perl6
10:17 moritz_ bacek++ # bringing my attention to uc.t
10:17 pugs_svnbot r20971 | moritz++ | [spec] S29-str/uc.t
10:17 pugs_svnbot r20971 | moritz++ |  * comment one test that is likely to be out of date
10:17 pugs_svnbot r20971 | moritz++ |    (wrt newer Unicode versions)
10:17 pugs_svnbot r20971 | moritz++ |  * improved fudging - now ready for inclusion in spectest_regression
10:18 moritz_ uhm, why did I think it's ready for spectest_regression? still reports number of tests wrongly
10:23 pugs_svnbot r20972 | moritz++ | [spec] S29-uc.t: fixed test count in fudged output
11:09 Tene_ joined #perl6
11:09 bacek joined #perl6
11:09 Tene joined #perl6
11:09 vixey joined #perl6
11:09 Auzon joined #perl6
11:09 Southen_ joined #perl6
11:09 pengrate joined #perl6
11:09 kcwu joined #perl6
11:09 Kattana joined #perl6
11:09 beppu joined #perl6
11:09 TreyHarris joined #perl6
11:09 cj joined #perl6
11:09 nothingmuch joined #perl6
11:09 kane_ joined #perl6
11:09 broquaint joined #perl6
11:09 avar joined #perl6
11:09 moritz_ joined #perl6
11:09 jrockway joined #perl6
11:09 nipotaway joined #perl6
11:09 mtve joined #perl6
11:09 TimToady joined #perl6
11:09 Patterner joined #perl6
11:09 sri_work joined #perl6
11:09 buubot joined #perl6
11:09 lambdabot joined #perl6
11:09 wolverian joined #perl6
11:09 diakopter joined #perl6
11:09 cls_bsd joined #perl6
11:09 ingy joined #perl6
11:09 cookys joined #perl6
11:09 Southen joined #perl6
11:09 masak joined #perl6
11:09 iblechbot joined #perl6
11:09 Eevee joined #perl6
11:09 penk joined #perl6
11:09 r0bby joined #perl6
11:09 agentzh joined #perl6
11:09 stevan_ joined #perl6
11:09 mj41 joined #perl6
11:09 kolibrie joined #perl6
11:09 fullermd joined #perl6
11:09 qmole_ joined #perl6
11:09 pmichaud joined #perl6
11:09 charsbar joined #perl6
11:10 gugod joined #perl6
11:10 cosimo joined #perl6
11:10 ruoso joined #perl6
11:10 Maghnus joined #perl6
11:10 SubStack joined #perl6
11:10 silug joined #perl6
11:10 pasteling joined #perl6
11:10 PerlJam joined #perl6
11:10 osfameron joined #perl6
11:10 awwaiid joined #perl6
11:10 rakudo_svn joined #perl6
11:10 allbery_b joined #perl6
11:10 Maddingue joined #perl6
11:10 arguile joined #perl6
11:10 broquain1 joined #perl6
11:10 Jedai joined #perl6
11:10 drbean joined #perl6
11:10 bsb joined #perl6
11:10 luqui joined #perl6
11:10 eternaleye joined #perl6
11:10 aindilis joined #perl6
11:10 japhb joined #perl6
11:10 pjcj joined #perl6
11:10 Grrrr joined #perl6
11:10 s1n joined #perl6
11:10 avarab joined #perl6
11:10 nothingmuch joined #perl6
11:10 broquaint joined #perl6
11:10 obra joined #perl6
11:10 jrockway joined #perl6
11:10 smtms joined #perl6
11:10 lumi joined #perl6
11:10 SamB joined #perl6
11:10 yahooooo2 joined #perl6
11:10 p6eval joined #perl6
11:10 GeJ joined #perl6
11:10 ilogger2 joined #perl6
11:10 scrottie joined #perl6
11:10 meteorjay joined #perl6
11:10 Helios` joined #perl6
11:10 baest joined #perl6
11:10 integral joined #perl6
11:10 orafu joined #perl6
11:10 jfredett joined #perl6
11:10 xinming joined #perl6
11:10 apeiron joined #perl6
11:10 elmex joined #perl6
11:10 justatheory joined #perl6
11:10 BinGOs joined #perl6
11:10 Gothmog_ joined #perl6
11:10 Coleoid joined #perl6
11:10 simcop2387 joined #perl6
11:10 funktio joined #perl6
11:10 jan__ joined #perl6
11:10 cognominal_ joined #perl6
11:10 Khisanth joined #perl6
11:10 fridim joined #perl6
11:10 hcchien joined #perl6
11:10 revdiablo joined #perl6
11:10 Ara4n joined #perl6
11:10 felipe joined #perl6
11:10 dmq joined #perl6
11:10 perlbot joined #perl6
11:10 pugs_svnbot joined #perl6
11:10 mofino joined #perl6
11:10 dalek joined #perl6
11:10 Caelum joined #perl6
11:10 jiing joined #perl6
11:10 Ingmar joined #perl6
11:10 zostay joined #perl6
11:10 yath joined #perl6
11:10 lisppaste3 joined #perl6
11:10 nnunley joined #perl6
11:10 audreyt joined #perl6
11:10 buu joined #perl6
11:10 Juerd joined #perl6
11:11 moritz joined #perl6
11:12 cognominal_ left #perl6
11:12 a-jing joined #perl6
11:13 a-jing left #perl6
11:14 cj_ joined #perl6
11:14 eternaleye joined #perl6
11:15 TreyHarris joined #perl6
11:15 spinclad joined #perl6
11:16 moritz left #perl6
11:18 moritz_ joined #perl6
11:18 araujo joined #perl6
11:19 Auzon joined #perl6
11:22 moritz_ freenode had a hiccup ;)
11:22 cognominal_ joined #perl6
11:23 eternaleye joined #perl6
11:23 Jedai joined #perl6
11:23 drbean joined #perl6
11:23 bsb joined #perl6
11:23 luqui joined #perl6
11:23 aindilis joined #perl6
11:23 japhb joined #perl6
11:23 pjcj joined #perl6
11:23 Grrrr joined #perl6
11:23 s1n joined #perl6
11:40 pbuetow joined #perl6
11:54 FurnaceBoy joined #perl6
11:58 edpratomo joined #perl6
12:04 Tene joined #perl6
12:05 avar joined #perl6
12:07 pbuetow joined #perl6
12:07 eternaleye joined #perl6
12:07 Jedai joined #perl6
12:07 drbean joined #perl6
12:07 bsb joined #perl6
12:07 luqui joined #perl6
12:07 aindilis joined #perl6
12:07 japhb joined #perl6
12:07 pjcj joined #perl6
12:07 Grrrr joined #perl6
12:07 s1n joined #perl6
12:14 chris2 joined #perl6
12:36 Ingmar left #perl6
12:37 kanru joined #perl6
12:38 cognominal_ joined #perl6
12:40 cmarcelo joined #perl6
12:41 wknight8111 joined #perl6
12:44 gbacon joined #perl6
12:50 DietCoke joined #perl6
12:56 pbuetow_ joined #perl6
13:06 jfredett /who
13:06 jfredett oops
13:06 DietCoke ME!
13:13 moritz_ /nick TooMuchTimeCoke ;-)
13:16 diakopter I like VanillaZero, myself
13:26 iblechbot joined #perl6
13:27 vixey joined #Perl6
13:33 TJCRI joined #perl6
13:37 Coleoid_ joined #perl6
13:42 rhr joined #perl6
13:43 a-jing joined #perl6
13:43 a-jing left #perl6
13:44 penk left #perl6
14:03 jhorwitz joined #perl6
14:09 pmichaud 07:33 <moritz_> pmichaud: btw as long as method fallback is still active, rand($Num) is valid syntax (as fallback for $Num.rand)
14:09 pmichaud I don't think that's correct.
14:09 pmichaud method fallback says that   given  $x.foo(), if no 'foo' method is found for $x then it will try foo($x)
14:10 hanekomu joined #perl6
14:10 pmichaud it doesn't say that because $x.foo() exists then foo($x) must also exist.
14:11 pmichaud i.e., method fallback doesn't mean that   foo($x)  will try $x.foo()
14:12 Lorn joined #perl6
14:12 cjfields joined #perl6
14:17 moritz_ pmichaud: uhm yes, you're right
14:19 alester joined #perl6
14:26 cosimo joined #perl6
14:32 clkao joined #perl6
14:42 ilogger2 joined #perl6
14:43 avar joined #perl6
14:47 avar joined #perl6
14:49 avar joined #perl6
14:51 avar joined #perl6
14:56 pbuetow joined #perl6
15:00 hercynium joined #perl6
15:07 vixey joined #Perl6
15:19 pugs_svnbot r20973 | diakopter++ | [yap6] fix stupid bugs from yesterday.
15:19 pugs_svnbot r20973 | diakopter++ | now that the speed is tolerable, working on the opp.
15:36 alanhaggai joined #perl6
15:58 meteorjay joined #perl6
15:59 TJCRI joined #perl6
16:02 meppl joined #perl6
16:55 Jamtech joined #perl6
17:01 kanru joined #perl6
17:02 Khisanth joined #perl6
17:12 cognominal_ what is the perl6 way to  get to the last element of an array?
17:13 moritz_ cognominal_: @array[*-1]
17:13 cognominal_ works in rakudo?
17:13 moritz_ nope
17:14 cognominal_ ok
17:14 moritz_ rakudo: my @a = <a b c>; say @a[@a.end]
17:14 p6eval rakudo r28668 OUTPUT[Method 'end' not found for invocant of class 'Perl6Array'␤current instr.: '_block11' pc 77 (EVAL_13:29)␤
17:14 moritz_ rakudo: my @a = <a b c>; say @a[@a.last]
17:14 p6eval rakudo r28668 OUTPUT[Method 'last' not found for invocant of class 'Perl6Array'␤current instr.: '_block11' pc 77 (EVAL_13:29)␤
17:14 moritz_ pugs: my @a = <a b c>; say @a[@a.end]
17:14 p6eval OUTPUT[c␤]
17:14 cognominal_ rakudo: my @a = <a b c>; say @a[@a.top]
17:14 p6eval rakudo r28668 OUTPUT[Method 'top' not found for invocant of class 'Perl6Array'␤current instr.: '_block11' pc 77 (EVAL_13:29)␤
17:14 pmichaud top/end/last not implemented :-)
17:14 moritz_ TODO: implement List.lend
17:14 moritz_ s/lend/end/
17:15 cognominal_ in fact I was asking for NQP :)
17:15 pmichaud ...NQP?
17:15 moritz_ nqp: my @a = <a b c>; say @a[@a.end]
17:15 p6eval OUTPUT[Statement not terminated properly at line 1, near "= <a b c>;"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤called from Sub 'parrot;NQP::Grammar;statement_list' pc 3940 (src/Grammar_gen.pir:1362)␤called from Sub 'parrot;NQP::Grammar;state...
17:15 moritz_ nqp: my @a = (1, 2, 3); say @a[@a.end]
17:15 p6eval OUTPUT[Statement not terminated properly at line 1, near "= (1, 2, 3"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤called from Sub 'parrot;NQP::Grammar;statement_list' pc 3940 (src/Grammar_gen.pir:1362)␤called from Sub 'parrot;NQP::Grammar;state...
17:15 pmichaud nqp doesn't support '='.  all functions require parens.
17:16 moritz_ nqp: my @a := (1, 2, 3); say @a[@a.end()]
17:16 p6eval OUTPUT[Statement not terminated properly at line 1, near "@a[@a.end("␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤called from Sub 'parrot;NQP::Grammar;statement_list' pc 3940 (src/Grammar_gen.pir:1362)␤called from Sub 'parrot;NQP::Grammar;state...
17:16 pmichaud all functions (including 'say') require parens :-)
17:16 moritz_ nqp: my @a := (1, 2, 3); say(@a[@a.end()]);
17:16 diakopter I can't believe I'm actually *using* an Acme module for something useful
17:16 p6eval OUTPUT[Method 'end' not found for invocant of class 'ResizablePMCArray'␤current instr.: '_block11' pc 27 (EVAL_3:13)␤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 806 (src/PCT/HLLCompiler.pir:481)␤called from Sub 'parrot;PCT::HLLCompiler;evalfiles' pc 1088 (src/PCT/HLLCompiler.pir:6...
17:16 moritz_ pmichaud: thanks ;)
17:17 pmichaud didn't know that p6eval supported nqp :-)
17:17 cognominal_ these two, := and paren, I know even if I still trip over them
17:17 pmichaud I should probably have infix:<=> throw a more useful excecption.
17:18 pmichaud *exception.
17:18 moritz_ pmichaud: it supports nearly everything that suports 'say("hi")' - except perl 5.10, of course ;)
17:20 moritz_ evalbot control restart
17:20 pugs_svnbot r20974 | moritz++ | [evalbot] truncate stack traces in NQP output - we need a more general
17:20 pugs_svnbot r20974 | moritz++ | solution for filtering
17:20 p6eval joined #perl6
17:21 moritz_ nqp: say foo bar
17:21 p6eval nqp: OUTPUT[Statement not terminated properly at line 1, near "foo bar"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
17:21 moritz_ ok, truncation works
17:24 moritz_ afk
17:26 pbuetow_ joined #perl6
17:30 cognominal_ nqp: my %a; %a{'a'}++
17:30 p6eval nqp: OUTPUT[increment() not implemented in class 'Undef'␤current instr.: '_block11' pc 25 (EVAL_4:16)␤
17:30 cognominal_ nqp: my %a; %a{'a'}.defined()
17:30 p6eval nqp: OUTPUT[Method 'defined' not found for invocant of class 'Undef'␤current instr.: '_block11' pc 28 (EVAL_4:14)␤
17:31 cognominal_ nqp: my %a; say(%a{'a'}.WHAT())
17:31 p6eval nqp: OUTPUT[Method 'WHAT' not found for invocant of class 'Undef'␤current instr.: '_block11' pc 28 (EVAL_4:14)␤
17:36 Khisanth joined #perl6
17:38 cognominal_ nqp: my %a;  %a<a> := 0 ;  say ++%a{'a'}
17:38 p6eval nqp: OUTPUT[increment() not implemented in class 'Sub'␤current instr.: '_block11' pc 31 (EVAL_4:17)␤
17:38 cognominal_ nqp: my %a;  %a<a> := 0 ;  say( ++%a{'a'} )
17:38 p6eval nqp: OUTPUT[0␤]
17:38 cognominal_ nqp: my %a;  %a<a> := 0 ;  say( %a<a> := %a<a> + 1 )
17:38 p6eval nqp: OUTPUT[1␤]
17:48 meppl joined #perl6
17:52 chinsans joined #perl6
18:06 chinsans left #perl6
18:35 wknight8111 joined #perl6
18:35 pugs_svnbot r20975 | diakopter++ | [yap6]
18:35 pugs_svnbot r20975 | diakopter++ | * a banillion more speed/memory usage premature optimizations. :)
18:39 Jedai joined #perl6
18:41 Auzon pugs: say 'A' .. 'ZZ'
18:41 p6eval OUTPUT[ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBUBVBWBXBYBZCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZEAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEW...
18:44 rakudo_svn r28670 | pmichaud++ | [rakudo]:
18:44 rakudo_svn r28670 | pmichaud++ | * Fix problem with 'sprintf' method appearing in wrong namespace.
18:44 rakudo_svn r28670 | pmichaud++ | * Oddly, the problem appeared because running 'perl6.pir' gave
18:44 rakudo_svn r28670 | pmichaud++ |   different results (an exception) from running 'perl6.pbc'.  I
18:44 rakudo_svn r28670 | pmichaud++ |   have no clue why the difference existed.
18:44 pmichaud pugs: say 'A' .. 'BB'
18:44 p6eval OUTPUT[ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBABB␤]
18:44 pmichaud rakudo: say 'A' .. 'BB'
18:44 p6eval rakudo r28669 OUTPUT[AB␤]
18:44 pmichaud hrm.
18:45 pmichaud it stops at 'C' because it thinks that 'C' is greater than 'BB'.
18:45 pmichaud that's.... interesting.
18:46 pmichaud pugs: say 'B' ^.. 'BB'
18:46 p6eval OUTPUT[CDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBABB␤]
18:46 pmichaud pugs:  say 'B' ^..^ 'BB'
18:46 p6eval OUTPUT[CDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBA␤]
18:47 REPLeffect joined #perl6
18:47 pmichaud pugs:  say 'B' ^..^ 'AG'
18:47 p6eval OUTPUT[CDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAF␤]
18:48 pmichaud say '0' .. '19'
18:48 pmichaud pugs: say '0' .. '19'
18:48 p6eval OUTPUT[012345678910111213141516171819␤]
18:48 pmichaud pugs:  say '0' .. '00'
18:48 p6eval OUTPUT[0123456789␤]
18:48 pmichaud pugs:  say '0'..'01'
18:49 p6eval OUTPUT[0123456789␤]
18:50 diakopter pugs: say '0A'..'1A'
18:50 p6eval OUTPUT[0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z1A␤]
18:50 diakopter pugs: say 'A0'..'Z0'
18:50 p6eval OUTPUT[A0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9C0C1C2C3C4C5C6C7C8C9D0D1D2D3D4D5D6D7D8D9E0E1E2E3E4E5E6E7E8E9F0F1F2F3F4F5F6F7F8F9G0G1G2G3G4G5G6G7G8G9H0H1H2H3H4H5H6H7H8H9I0I1I2I3I4I5I6I7I8I9J0J1J2J3J4J5J6J7J8J9K0K1K2K3K4K5K6K7K8K9L0L1L2L3L4L5L6L7L8L9M0M1M2M3M4M5M6M7M8M9N0N1N2N3N4N5N6N7N8N9...
18:50 diakopter weird
18:51 Auzon What's weird?
18:51 pmurias joined #perl6
18:51 diakopter Auzon: nm :/
18:52 pzt joined #perl6
18:52 TimToady '0' .. '00' seems incorrect
18:52 pugs_svnbot r20976 | diakopter++ | [yap6]
18:52 pugs_svnbot r20976 | diakopter++ | * less grammar recursion; more speed improvements.
18:52 pugs_svnbot r20976 | diakopter++ | * memoizing fully fixed now...
18:53 pmurias diakopter: hi
18:53 rakudo_svn r28671 | pmichaud++ | [rakudo]:
18:53 rakudo_svn r28671 | pmichaud++ | * Fix ranges on incrementing strings (e.g., 'A'..'BK')
18:53 TimToady it should be equivalent to '0' .. '99'
18:53 diakopter pugs: say '0A'..'1A0'
18:53 p6eval OUTPUT[0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z5A5B5C5D5E5F5G5H5I5J...
18:53 TimToady (by the exceed-the-length rule)
18:53 pmurias TimToady: did you see my changes?
18:53 pmichaud TimToady: does it _only_ check length?
18:54 TimToady if it doesn't get an exact match, it only checks lengths, like p5
18:54 pmichaud ah, length or exact match
18:54 * pmurias should go fetch his laptop instead of talking via cgi-irc
18:54 pmichaud hrm.
18:55 diakopter hm; evalbot's perl 5.8 doesn't like my qr||sp
18:55 TimToady you can't rely on anything other than equality
18:55 pmichaud so, 'A'..'Bz'  would be the same a 'A' .. 'ZZ' ?
18:55 diakopter oh; that's b/c I don't need the p suffix
18:55 TimToady pmichaud: yes
18:55 pmichaud okay.  That complicates things a bit, but I guess we can get there.
18:56 TimToady I think it simplifies things
18:56 pmichaud currently I think pugs does:   if length smaller, always increment
18:56 pmichaud if length bigger, stop
18:56 pmichaud if length equal, compare
18:57 TimToady that seems sane, as long as compare only means test-for-equality
18:57 diakopter hey, more speed ^
18:57 pmichaud how would we check if $z ~~ 'A' .. 'AA'  ?
18:57 pugs_svnbot r20977 | diakopter++ | [yap6]
18:57 pugs_svnbot r20977 | diakopter++ | * don't need 5.10 p suffix
18:58 pmichaud iterate through the range looking for $z ?
18:58 * ruoso wonders if TimToady have some time to think about the metamethods thing... (I know I'm being annoying with that)
18:58 TimToady no, I'm only stealing some lunch time from $dayjob to try to catch up here, and still haven't even read any email today
18:59 * diakopter snaps his fingers at p6eval
19:00 ruoso ok... I'm not in a rush also... just making sure it stays on topic...
19:01 TimToady I think Mooseyfolk are likelier to give you good feedback on that.  I installed the .HOW Curtain for a reason...
19:02 TimToady which is that I mostly don't want to think about it. :)
19:03 pmurias TimToady: seen my commits to STD yet? pmichaud raised some objections about them
19:03 pmichaud more questions than objections.  :-)
19:03 TimToady what did you do?
19:03 ruoso TimToady, that is already peer-reviewed with nothingmuch... I think it's just a matter of 'is this the way to go?'
19:03 pmurias fixed EXPR a bit
19:03 pmurias listops generate proper match objects
19:04 pmurias and EXPR receives a string instead of a hash as passing hashes is broken in gimme5
19:04 pmurias and EXPR respects the initial precedence
19:06 pmurias it's one commit  really
19:06 TimToady I don't know what "initial precedence" means.  the precedence that is passed in is not "initial", it's the limit on precedence looseness
19:06 diakopter qr/^(\Q$want\E)/s
19:06 diakopter oops
19:06 pmurias TimToady: didn't know how to phrase it correctly
19:07 TimToady is there an example to think about?
19:07 diakopter initial meaning innermost?
19:07 diakopter or outermost?
19:07 pmichaud effectively the change is that EXPR() now accepts a precedence level as an argument instead of a hash containing %preclim<prec>
19:07 TimToady it's used for things like preventing you from saying $a ?? $b = 2 !! $c
19:08 TimToady it will treat = like a terminator
19:08 pmichaud i.e., it receives $preclim directly instead of setting $preclim to %preclim<prec>
19:08 TimToady not quibbling about the string, as long as we only need the precedence, but we might want other things later
19:08 pmichaud (I'm neither for nor against the change -- I was simply wondering about it.)
19:09 pmichaud (fwiw, Rakudo has already been using a simple string as its argument instead of a hash.)
19:09 TimToady I'd be more inclined to fix gimme5 to pass a hash correctly
19:09 pmichaud that was my guess.  :-)
19:09 TimToady but it's no great shakes either way
19:09 pmichaud okay, works for me!
19:09 pmichaud afk # lunch for real this time.
19:11 pmurias joined #perl6
19:12 pmurias re example to think about was it directed to me?
19:13 pmurias the think i wanted it to work was => which was broken but now works
19:14 TimToady => should simply be parsed as item assignment, which is tighter than comma
19:16 barney joined #perl6
19:17 pmurias_ joined #perl6
19:19 TimToady pmurias_: => should simply be parsed as item assignment, which is tighter than comma
19:20 pmurias_ TimToady: it's parsed by fatarrow which calls EXPR with a limit
19:20 pmurias_ i didn't change that but i made EXPR respect the limit
19:21 pmurias_ TimToady: when does autoquoting happen?
19:22 pmurias_ the synopsis state that the left side can be anything
19:22 TimToady fatarrow is only for bare identifiers, but yes, it needs to know the precedence in EXPR
19:23 TimToady ordinary => is defined down with the other binary assignment ops
19:24 eternaleye joined #perl6
19:25 pmurias_ 1=>2; dosn't work
19:25 TimToady at line 2724
19:25 TimToady well, there's lots of things don't work yet.  :)
19:26 hercynium joined #perl6
19:26 pmurias_ TimToady: 2724 in the current revision?
19:26 TimToady yes
19:28 pmurias_ 20956?
19:29 TimToady how does your current code distinguish item assignment from list assignment?
19:29 TimToady 20977
19:30 TimToady oh, wait, it did a merge
19:30 pmurias joined #perl6
19:30 TimToady so my line numbers are probably off
19:30 TimToady about 30 lines off, probably
19:31 TimToady anyway, just a few lines below where you commented out the makes
19:34 pmurias joined #perl6
19:34 TimToady I went ahead and checked in my current copy, even though it's messing up on final curlies right now
19:34 pugs_svnbot r20978 | lwall++ | [STD] current snapshot, some things break
19:35 sscaffidi_ joined #perl6
19:35 pmurias sorry my laptop hanged strangely
19:35 pmurias i just commented the stuff in infix:<=> as it was creating errors
19:36 pmurias i didn't fix it properly
19:37 pmurias TimToady: what would you prefere me to work on getting agentz's tracer to work with STD5 or feeding STD's parse tree into elf?
19:37 TimToady when I get off $job I'll be working on a more general memoizing capability, which will hopefully fix the current problem with block endings, and the hardwired stopper state check
19:38 TimToady elf sounds like it's more on some kind of critical path
19:38 TimToady and I doubt the format of the parse tree will change rapidly
19:38 pmurias i already started on that one ;)
19:39 pmurias i actually plan to use {*} hook points
19:39 TimToady it'll be nice to get the canonical *cough* parser up on evalbot at some point
19:40 TimToady well, that's what the {*} are there for
19:40 pmurias diakopter asked for putting STD into evalbot but it creates a lot of output
19:40 diakopter TimToady: p6eval runs 5.8
19:40 TimToady I was thinking more on the level of say "howdy"
19:41 Auzon Is file input the current best way to get an iterator that terminates?
19:41 TimToady not parse tree output
19:41 pmurias i'll head of to work than ;)
19:41 TimToady Auzon: seem to be missing some context...
19:42 Auzon I'm trying to test the eager operator.
19:42 TimToady well, if
19:42 TimToady if Range objects worked...
19:43 TimToady though maybe that doesn't help
19:43 Auzon I guess I need some way to determine that the iterator is fully read, too.
19:44 TimToady gather/take would be good for that, if implemented
19:44 TimToady since it runs arbitrary code on the take end
19:45 TimToady or you could do eager 1..* and see if you run out of memory :P
19:46 Auzon I don't see a runs_out_of_resource_ok() subroutine. I'd need to implement that first.
19:47 TimToady I think file io might be the best bet for now
19:47 TimToady assuming *that* is implemented  :)
19:50 cjfields joined #perl6
19:57 diakopter canonical
20:02 pmichaud (more general memoizer)++
20:03 pmichaud I've been thinking a similar thing for PCT's grammars.
20:04 REPLeffect joined #perl6
20:04 Auzon rakudo: gather {}
20:04 p6eval rakudo r28671 OUTPUT[Null PMC access in type()␤current instr.: 'parrot;Perl6;Grammar;Actions;statement_prefix' pc 123897 (src/gen_actions.pir:11710)␤
20:05 pmichaud gather not implemented yet.
20:05 Auzon That's what I was checking
20:05 pmichaud and empty closures still return null :-|
20:05 cjfields On S05 transliteration:  Are we using 'A..Z'  for range values instead of 'A-Z' (or both)?
20:05 pmichaud cjfields: Perl 6 no longer uses '-' to indicate ranges.
20:05 * cjfields cheers!
20:06 eternaleye_ joined #perl6
20:08 cjfields Also, are we planning on supporting the tr/// p5 options: (c)omplement, (d)elete, (s)quash)?  Couldn't find anything to verify one way or the other...
20:08 Auzon and here was me thinking that tr///c meant 'count' :P
20:19 Alias_ joined #perl6
20:22 * cjfields looking at A05...
20:26 simcop2387 joined #perl6
20:33 cjfields Nope, nothing there.  Though I can see issues with implementing 'complement' if we want many-to-one...
20:34 moritz_ I think the general sentiment is "don't worry too much about transliteration, we have powerful regexes" ;)
20:36 Auzon Somewhat related: Can we have glob() use regexes? (The format for $pattern is not specified in S16)
20:36 moritz_ Auzon: I think glob() will call the underlying system (?) call
20:36 PerlJam That would *so* confuse people!
20:36 PerlJam glob does globbing, not regex
20:36 moritz_ Auzon: you can still use grep rx$regex/, readdir; or some such
20:37 PerlJam that said, having some sort of file selector thing (not called glob) with a switchable pattern matcher would be nice.
20:38 moritz_ and it's nice if you can do stuff like @*ARGV = glob @*ARGV if $on_windows;
20:38 moritz_ PerlJam: what's wrong with regexes + grep? ;)
20:38 PerlJam Hmm..  I wonder if we could get m:glob/.../ just like we have m:p5/.../  :-)
20:38 moritz_ you can write regex modifiers as macros
20:39 moritz_ shouldn't be too hard to write one that translates globs to regexes
20:40 Auzon moritz_: readdir can't mimic glob('*/*') :-/
20:40 moritz_ Auzon: right.
20:40 PerlJam well, PGE already had parsers for p5, p6, and glob  (I wrote some of the glob one actually)
20:41 PerlJam s/had/has/
20:42 pmichaud more likely is
20:42 pmichaud use STDPatterns;
20:42 pmichaud @a = grep &STDPatterns::glob, @list;
20:42 lambdabot Maybe you meant: activity activity-full admin all-dicts arr ask . ? @ v
20:43 pmichaud or <glob>, or something like that.
20:43 pmichaud or even    glob('pattern')  to return a regex that does globbing the way you want :-)
20:43 Auzon I guess it'd be really easy to implement a regexglob()
20:43 pmichaud q:glob/ ... /;
20:44 pmichaud anyway, it can be easily done as a library :-)
20:44 moritz_ pmichaud: or just m/:glob/.../
20:44 pmichaud after that it's just a matter of syntax.
20:54 rdice joined #perl6
21:05 pugs_svnbot r20979 | Auzon++ | [gsoc_spectest] Some tests for eager and hyper (8 new tests added)
21:05 pugs_svnbot r20979 | Auzon++ | Added more TASKS for S03 and one for S16
21:08 ruoso joined #perl6
21:15 Alias_ joined #perl6
21:20 bacek_ joined #perl6
21:29 moritz_ does prefix:<=> consume an Range?
21:29 gbacon joined #perl6
21:30 Auzon moritz_: It iterates a range
21:30 moritz_ Auzon: yes, but iteration != consumation
21:30 moritz_ Auzon: in p5, each %hash also iteratets over the hash without destroying it
21:31 moritz_ Auzon: so unless it's in spec I doubt that your test cases are right
21:31 moritz_ I'd suggest a different scheme
21:31 moritz_ my $counter = 0;  my @test = gather { for 1 .. 5 { take 1; $couter++ } }
21:32 moritz_ is @test[0], 1;
21:32 moritz_ is $counter, 1, 'only one iteration' # that's the test for lazyness
21:32 moritz_ then my @second_test = eager gather {... same code here }
21:32 moritz_ is $counter, 5, 'eager is eager';
21:33 moritz_ I fear that the Range object hides its lazyness too well te be tested for
21:34 Auzon Alright, yeah, that looks a lot better. So is gather the way to build a generic iterator object?
21:35 moritz_ it's one of the easiest
21:36 moritz_ (it's actually used for iterators, continuations, coroutines - whatever you want to call it)
21:36 moritz_ bascially for anything that should be lazily executed and returns more than one value
21:36 bacek joined #perl6
21:37 Auzon ok, thanks moritz_ :)
21:41 cmarcelo joined #perl6
21:42 moritz_ IIRC kp6 has a similar lazyness test already
21:43 moritz_ btw gather...take can be used for implementing lazy builtins quite nicely
21:44 moritz_ sub infix:<xx>(@ary, Num $count) { return gather { take @ary for ^$count } }
22:13 apeiron_ joined #perl6
22:16 justatheory joined #perl6
22:18 Jedai joined #perl6
22:37 Limbic_Region joined #perl6
22:43 bacek joined #perl6
22:51 grtnam1 joined #perl6
22:51 grtnam1 anyone there
22:51 Auzon Yes.
22:51 grtnam1 thank god
22:51 grtnam1 just one second
22:52 grtnam1 do you want me to past here or or some where else
22:52 Auzon .oO(... but there's almost always someone here)
22:52 moritz_ s/god/Auzon/ ;-)
22:52 Auzon paste what?
22:52 bacek joined #perl6
22:52 moritz_ grtnam1: depends on how much you have to paste ;)
22:53 grtnam1 i have about three lines
22:53 moritz_ then paste here
22:54 grtnam1 if ($form{'telephone'} !~ /[0-9]{3}/)
22:54 Auzon hey, that's not Perl 6!
22:54 grtnam1 oh
22:55 grtnam1 i didnt know sorry
22:55 moritz_ try #perl or #perlhelp or http://www.perlmonks.org/ or irc.perl.org
22:55 lambdabot Title: PerlMonks - The Monastery Gates
22:55 grtnam1 alright thanks
22:55 Auzon Good luck, grtnam1. :)
22:57 grtnam1 thanks
23:12 pugs_svnbot r20980 | diakopter++ | [yap6]
23:12 pugs_svnbot r20980 | diakopter++ | * still more speedups
23:12 pugs_svnbot r20980 | diakopter++ | * slight beginnings of the opep
23:31 mjk joined #perl6
23:44 meppl good night
23:50 cjfields joined #perl6
23:51 cjfields_ joined #perl6
23:57 Lunchy joined #perl6
23:59 justatheory joined #perl6

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

Perl 6 | Reference Documentation | Rakudo