pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, smop: etc.) || We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/
Set by TimToady on 25 January 2008.
00:05 eternaleye joined 00:17 smtms left 00:27 tobeya left 00:49 cotto left 00:50 cotto joined 00:53 cmarcelo_ joined 00:54 eternaleye left, eternaleye joined 01:12 Auzon left 01:13 cmarcelo left 01:25 Ched- left, Ched- joined 01:26 IllvilJa left 01:29 justatheory left 01:33 cmarcelo_ is now known as cmarcelo 01:41 IllvilJa joined 01:45 rolet left 02:09 nipotan is now known as nipotaway 02:10 Limbic_Region left 02:14 justatheory joined 02:21 justatheory left 02:49 c9s joined 04:11 alester joined 04:39 Psyche^ joined 04:45 bsb joined, bsb left 04:50 Auzon joined 04:51 Patterner left, Psyche^ is now known as Patterner 05:06 araujo left 05:29 efunneko_ joined 05:31 araujo joined
efunneko_ FYI: I just uploaded a greasemonkey script to userscripts.org/scripts/show/26714 that will convert .pod files into HTML in Firefox. I find this useful for reading the latest synopses directly from the repository. 05:32
lambdabot Title: Pod2Html &ndash; Userscripts.org
efunneko_ It is far from fancy, but it does the job. (link to synopsis list: svn.perl.org/perl6/doc/trunk/design/syn/) 05:33
lambdabot Title: Revision 14541: /doc/trunk/design/syn
Eevee greasemonkey++ 05:44
05:45 araujo left 05:56 araujo joined 06:01 araujo left 06:03 araujo joined 06:20 cls_bsd left, cls_bsd joined
Eevee uh..huh. ubuntu hardy seems to be entirely missing libghc6-stm-dev 06:47
06:48 meppl joined
Eevee pugs: say @@( (1,2) X (3,4) ) 06:51
exp_evalbot OUTPUT[*** Unknown syntactic construct: Syn "@@{}" [Ann (Pos (MkPos "/tmp/BxDXyXmC4N" 1 9 1 23)) (App (Var "&infix:X") Nothing [Ann Parens (Ann (Pos (MkPos "/tmp/BxDXyXmC4N" 1 10 1 13)) (Syn "," [Val (VInt 1),Val (VInt 2)])),Ann Parens (Ann (Pos (MkPos "/tmp/BxDXyXmC4N" 1 18 1 21)) (Syn "," [Val
..(VInt 3),Val (VInt 4)]))])]␤ at /tmp/BxDXyXmC4N...
Eevee pugs: say @( (1,2) X (3,4) )
exp_evalbot OUTPUT[1 31 42 32 4␤]
06:51 schmalbe joined
Auzon *blink* 06:52
pugs: say 1,2 X 3,4
exp_evalbot OUTPUT[12␤]
Auzon pugs: say (1,2 X 3,4)
exp_evalbot OUTPUT[1 31 42 32 4␤]
Auzon pugs: say ( @((1,2 X 3,4)))
exp_evalbot OUTPUT[1 31 42 32 4␤]
Eevee say binds more tightly than X?
Auzon pugs: say join '', 1,2 X 3,4 06:53
exp_evalbot OUTPUT[12␤]
Auzon pugs: 1,2 X 3,4
exp_evalbot RESULT[((1, 3), (1, 4), (2, 3), (2, 4))]
Auzon Apparently a lot of things do.
pugs: say join '', (1,2) X (3,4)
exp_evalbot OUTPUT[12␤]
Auzon pugs: say join ' ', ((1,2) X (3,4))
exp_evalbot OUTPUT[1 3 1 4 2 3 2 4␤]
Auzon pugs: say (1,2) X (3,4) 06:54
exp_evalbot OUTPUT[12␤]
Auzon pugs: say ((1,2) X (3,4))
exp_evalbot OUTPUT[1 31 42 32 4␤]
Auzon ((1,2) X (3,4))
pugs: ((1,2) X (3,4))
exp_evalbot RESULT[((1, 3), (1, 4), (2, 3), (2, 4))]
Auzon ah...
Eevee checks 06:55
Auzon pugs: say for ((1,2) X (3,4))
exp_evalbot OUTPUT[␤␤␤␤]
Eevee guess pugs is only slightly off.. list infix is the level right above list prefix
Auzon Part of it has to do with the string representation of an array.
Eevee pugs: say for 1,2 X 3,4 06:56
exp_evalbot OUTPUT[␤␤␤␤]
Auzon pugs: for (1,2 X 3,4) {say $_}
exp_evalbot OUTPUT[13␤14␤23␤24␤]
Auzon pugs: for (1,2 X 3,4) {say $_.perl}
exp_evalbot OUTPUT[[1, 3]␤[1, 4]␤[2, 3]␤[2, 4]␤]
Auzon rakudo: 1,2 x 3,4 06:57
exp_evalbot RESULT[Method 'perl' not found for invocant of class 'List'␤current instr.: '_block11' pc 35 (EVAL_11:16)␤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 785 (src/PCT/HLLCompiler.pir:458)␤called from Sub 'parrot;PCT::HLLCompiler;evalfiles' pc 1067 (src/PCT/HLLCompiler.pir:587)␤called from Sub
..'parrot;PCT::HLLCompiler;command_line' pc 1246 (src...
Auzon rakudo: for (1,2 x 3,4) {say}
exp_evalbot OUTPUT[␤␤␤]
Auzon rakudo: for (1,2 x 3,4) {.say}
exp_evalbot OUTPUT[No result object␤current instr.: 'parrot;PCT::Grammar;item' pc 35 (src/PCT/Grammar.pir:61)␤called from Sub 'parrot;Perl6;Grammar;Actions;_block1206' pc 120478 (src/gen_actions.pir:8262)␤called from Sub 'parrot;Perl6;Grammar;Actions;term' pc 119839 (src/gen_actions.pir:8006)␤called from Sub
..'parrot;Perl6::Grammar;term' pc 64839 (src/gen_gr...
Auzon rakudo: for (1,2 x 3,4) {say $_}
exp_evalbot OUTPUT[1␤222␤4␤]
Eevee x
Auzon rakudo: for (1,2 X 3,4) {say $_}
exp_evalbot OUTPUT[13␤14␤23␤24␤]
Auzon Ugh
Eevee hm 06:58
rakudo: for (1,2 X 3,4) -> @foo { say @foo }
exp_evalbot OUTPUT[13␤14␤23␤24␤]
Auzon rakudo: for (1,2 X 3,4) {say $_.WHAT}
exp_evalbot OUTPUT[List␤List␤List␤List␤]
Eevee rakudo: for (1,2 X 3,4) -> @foo { say @foo.WHAT } 06:59
exp_evalbot OUTPUT[List␤List␤List␤List␤]
Eevee okay
hm
this was going somewhere
Auzon Seems weird to store a List in $_, but I think that's just my Perl 5 instincts.
Eevee well
..actually
I think that's wrong
X returns a flat list in list context, and a list of arrays in slice context 07:00
not that I see how the former is very useful, but that's what the spec says.. 07:01
oh right, I was going to throw the X tests in t/spec 07:02
there's nothing special that needs to be done to the tests besides possible rakudo fudging, right? I can't help but hesitate when I find something that needs doing but seems trivial
Auzon Without looking at it in detail, everything seems fine 07:04
07:04 luqui joined
Auzon s/in detail// 07:05
I should look at it, but sleep calls. &
07:11 kst left, kst joined 07:13 bbkr__ joined, Ched- left, Ched- joined 07:15 masak joined 07:31 pmurias joined 07:32 alester left
pugs_svnbot r20437 | Eevee++ | [t/spec] operators/cross-metaop.t moved to spec/S03 07:34
Eevee is there a (compellingly good) svn gui for gnome? I used tortoisesvn forever and got used to an editable file list, and now I am apt to committing with svn ci -m and forgetting other files in the same dir I've changed 07:35
Tene git-gui is pretty good. no clue about svn. 07:40
07:43 ikeda joined, araujo left 07:53 TimToady joined 07:59 iblechbot joined 08:00 araujo joined 08:04 pmurias left
pugs_svnbot r20438 | Eevee++ | [t/spec] heavily fudged S03-operators/cross-metaop.t 08:13
08:15 cmarcelo left
Eevee perl6.vim may need an embedded perl 6 interpreter 08:21
masak Eevee: what with mutable grammar, certainly 08:25
Eevee even without 08:26
even parsing something like « looks like it will be.. complicated 08:27
masak yes
Eevee: is there a reasonable way for perl6.vim to hand over control to another process? 08:28
Eevee hm, I
'm not sure
haven't touched vim syntax highlighting much; tends to have already been done for me
masak Eevee: perhaps best to aim for 'mostly right most of the time' 08:34
Eevee would still like to avoid silly hacks (like a fake closing quote in a comment) just to get syntax to be sane though. might have a poke through vimdoc later 08:35
masak Eevee++
Eevee well, if I actually figure it out, sure! 08:36
masak with karma, it's the thought that counts. you'll get another one if you actually figure it out. :)
08:52 luqui left 09:08 jferrero joined 10:05 araujo left 10:18 masak left 10:20 DaGo joined 10:26 hd_ joined 10:32 hd_ left, meteorjay joined 11:15 DaGo left
wolverian (ian hague)++ 12:09
12:28 rindolf joined 12:56 Limbic_Region joined 13:16 efunneko_ left 13:43 alester joined 13:44 alester left 14:16 ikeda_ joined
wolverian Juerd, would it be possible to install ncurses-term on feather? it has the terminfo file for gnome-256color. 14:20
14:23 ikeda left 14:37 pbuetow joined 14:38 braceta joined
Juerd wolverian: done 14:40
wolverian Juerd, thankyou
14:42 FurnaceBoy joined 15:01 chris2 joined
pugs_svnbot r20439 | clkao++ | correct the mark. 15:10
rindolf Hi all. 15:19
pugs_svnbot r20440 | clkao++ | fix copy mode pad assignment.
rindolf TimToady: here?
15:26 [particle] left, [particle] joined 15:35 justatheory joined 15:41 justatheory left 16:16 ilbot2 joined 16:53 eternaleye left 17:19 schmalbe left 17:51 chris2 left 18:12 pmurias joined 18:33 mncharity joined 18:35 icwiener joined
pmurias mncharity: what's the next thing on elf's ROADMAP? 18:44
mncharity cpan: install Moose 18:46
:)
upgraded Moose halved the startup time.
Auzon mncharity: Which version of Moose?
stevan_ mncharity: you must have been way behind,... that was several version ago :) 18:47
mncharity Now 0.44
re way behind, always... :)
hmm. regrettably the speedup only affects the cleaned-up x01.pl version. so next step is... maybe some global process optimization stuff. 18:49
so the clean-up version can actually be emitted
pmurias mncharity: i use _nomoose only 18:50
18:51 iblechbot left
mncharity basically, () only "use Moose" the first time you see a package; () only freeze once, rather than wrapping each package body with a unfreeze & freeze. err, s/freeze/immuntable/ 18:51
re _nm, ah, ok. doesn't yet do defaults, so, eg, has @.a; doesn't work, because it's never initialized as an array. were there any other differences? 18:52
pmurias mncharity: i can do the defaults 18:53
18:53 braceta left
mncharity :) 18:53
re roadmap... good question, let's see... 18:54
possibilities include () continue to debug STD.pm and STD_red to increase % t/ which parses (currently 70%ish). () translate STD_red from ruby to p6 (probably p6 generated by p5). () continue banging on t/. () find a way to make banging on t/ more useful. ()... 18:58
18:59 meppl left
mncharity re more useful, the problem with our file based testing is anything which emits as a p5 syntax error kills the test file. redsix(?) PIL-Run(?) dealt with this by dealing with top level statements incrementally. makes for much more useful test runs. 18:59
pmurias like sh 19:03
?
or only one the emitting stage? 19:04
mncharity hmm. top level is () translate STD_red to avoid the ruby1.9 barrier to entry and be fully bootstrapped. () run t/ to shake down and flesh out core functionality, to help folks use elf to write p6 compilers. () run t/ to provide a clearer picture of what runs, and otherwise attract people. () improve the compiler. () improve the p5 runtime (ie, create a usable multimethods module). () better argument passing abi (named, slurpy,
oh, that's way too long for some 19:05
second half was () improve the compiler. () improve the p5 runtime (ie, create a usable multimethods module). () better argument passing abi (named, slurpy, etc) (using Data::Bind?); forking an elf_f_better, or doing optimization or pragma games, if there is a significant performance hit.
re sh? only one the emitting stage?, the incremental test runs? my fuzzy recollection was it nested evals, or something like that. 19:06
so bungled p5 for a test would just show up as as the test disappearing 19:07
rather than the file not running
() move some primitives from the p5 prelude to PrimitivesP5.pm, so sub calling api can be tweaked more easily. 19:08
() flesh out Prelude and Primitives 19:09
pmurias nested eval = eval around each statement? 19:10
mncharity top level statement. I suspect it would have to be eval { stmt1; eval { stmt2; ... }} or some such. I'm fuzzy on how it worked.
the only reason for nesting is to get lexical vars working. I don't remember having to nest, so maybe the lex var runtime scheme used worked without it? hmm, and those eval {} would perhaps need to be eval q{}. 19:12
pmurias yes 19:13
* re eval q{} yes
eval {} is for catching runtime exceptions
mncharity I guess the key question is "what, if elf already had it, would have resulted in recent people who recently tried it, decide to use it actively?" :) 19:16
phone bbiam
hi 19:18
so... no roadmap. just peering into the fog, wondering which next step would get us furthest. 19:20
pugs_svnbot r20441 | putter++ | [elf] run-tests.result update. 19:23
mncharity pmurias: a run-tests.result of _nm could be interesting. hmm, we might want to generalize that name at some point. nomoose is just the mechanism. the policy is "be faster". eg, depending on the performance hit from adding some particular named argument handling, elf_f and elf_f_faster might make different decisions on whether it's worth the cost. 19:25
and we might see a new elf_f_good which is willing to take any performance hit in pursuit of correctness. 19:26
hmm. one somewhat attractive way forward is to get enough of multimethods working, with good enough performance, that the things added to Prelude can be real spec multis. rather than fudging it. but... performance will be an issue. 19:27
but this may be a candidate for "do the right thing, and tweak hotspots later". 19:28
19:28 Auzon left
mncharity I guess a rule of thumb is, do what you find interesting. Odds are, others will too, and thus the prime goal of attracting developers will be addressed. :) 19:29
Have to run, sorry. bbl this evening (probably). 19:30
19:35 rindolf left
pmurias elf_faster is a good name 19:48
19:53 ikeda joined, ikeda_ left, ikeda left 20:05 FurnaceBoy left 20:35 nipotaway is now known as nipotan 20:40 iblechbot joined 20:52 Ched- left
pugs_svnbot r20442 | lwall++ | [STD5] snapshot of mostly Moosified gimme5 and Cursor5 20:52
diakopter TimToady: s/\!/Bang/g; appears twice in gimme5 21:00
TimToady ah, that was the case I was replicating :) 21:01
mncharity: re parsefails, that's why fudge comments out the code when you use "skip" 21:04
the whole point of fudge is to allow these sorts of tweaks without fragmenting the test suite, which most other approaches do 21:05
pugs_svnbot r20443 | lwall++ | [gimme5] extra Bang noted by diakopter++ 21:07
21:19 braceta joined 21:20 meppl joined 21:33 lisppaste3 left
speckbot r14542 | larry++ | Clarifications to how tied longest tokens are handled under LTM 21:38
21:40 eternaleye joined 21:45 lisppaste3 joined 22:09 justatheory joined 22:32 braceta left 22:35 eternaleye left 22:39 pmurias left 22:46 justatheory left 22:56 araujo joined, iblechbot left 23:05 justatheory joined 23:39 thestarslookdown joined
Juerd The big memory leak on feather is somewhere in apache2 23:41
23:42 icwiener left
Juerd Please, if you can remember any changes made on May 13 or 14, contact me. 23:42
23:46 eternaleye joined