Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-03-05

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:14 aindilis joined #perl6
00:19 aindilis joined #perl6
00:35 aindilis joined #perl6
00:39 TimToady cognominal_: both the table and the section agree that list prefix is looser than comma.   I don't see a problem.
00:41 thoughtpolice joined #perl6
00:42 perljunkie left #perl6
00:42 thoughtpolice joined #perl6
00:47 cmarcelo joined #perl6
00:49 aindilis joined #perl6
01:00 cnhackTNT joined #perl6
01:14 lyokato joined #perl6
01:14 aindilis joined #perl6
01:16 LimbicRegion joined #perl6
01:18 aindilis joined #perl6
01:20 diakopter pugs: sleep 1
01:20 exp_evalbot OUTPUT[*** Unsafe function 'sleep' called under safe mode␤    at /tmp/xleOeBb6xu line 1, column 1 - line 2, column 1␤]
01:20 diakopter oh yeah
01:40 katie_d Sorry if this is a stupid question, but my knowledge of C is still very shallow. I'm trying to read the #define statements in config_h.in and there are a bunch of statements like "typedef @nv@" -- what do the @ symbols mean? I've never seen that in C code before.
01:41 [particle] you probably want #perl, that is if you're looking at perl 5's source
01:42 [particle] however, it's likely that what you're looking at is a template, and @foo@ is a template variable that will be replaced with some value
01:42 [particle] i'm not familiar with perl 5 source, so i can't be certain
01:42 katie_d [particle]: I was looking at Parrot sources. But thanks anyway -- it probably is a template variable. Do you happen to know what it's used by?
01:43 [particle] heh, i'm quite familiar with parrot source :)
01:43 [particle] which file?
01:43 [particle] parroters hang out on irc.perl.org#parrot btw
01:43 katie_d config/gen/config_h/config_h.in
01:44 [particle] ok, that's a template file for the configure system
01:44 katie_d I was trying to figure out what PARROT_API was for, and grep pointed me there
01:44 [particle] do you use vim?
01:45 katie_d particle: no I use emacs
01:45 [particle] ok. that'll work to, i think.
01:45 [particle] make tags
01:45 [particle] i only know how to navigate a tag stack in vi, but i'm sure you can do it with emacs
01:46 [particle] you can put your cursor on PARROT_API, press a magic combination of buttons, and arrive at it's declaration/definition
01:46 [particle] in vim, it's Ctrl-]
01:46 katie_d Wow :) Thanks. I didn't know I could do that in emacs. I've been using Eclipse for that sort of thing, but for some reason the search feature is broken, so I've just gone back to using grep
01:47 katie_d btw, what did you mean the parroters don't hang out in here? Is this mostly for pugs or something?
01:48 [particle] anyway, that's a template file. after Configure.pl finishes running, a header file will be generated that contains #define PARROT_API
01:49 [particle] it's so we can specify which functions are exported
01:49 [particle] so embedders and extenders can use them
01:49 [particle] see include/parrot/config.h about line 60
01:50 obra left #perl6
01:51 obra joined #perl6
01:53 katie_d Thanks particle.
01:53 [particle] glad to help!
01:59 diakopter [particle]: I noticed you put your name under the GSoC items.  Do you think they should be near the other Parrot/Perl 6 items (at the bottom of that page)?
02:00 mj41__ joined #perl6
02:04 ting joined #perl6
02:04 jnthn joined #perl6
02:05 wolverian joined #perl6
02:06 Alias_ joined #perl6
02:07 meteorjay joined #perl6
02:09 cnhackTN1 joined #perl6
02:10 Alias__ joined #perl6
02:10 TimToady joined #perl6
02:10 cnhackTNT joined #perl6
02:10 lambdabot joined #perl6
02:10 arcady joined #perl6
02:10 lisppaste3 joined #perl6
02:10 Helios joined #perl6
02:10 wknight8111 joined #perl6
02:10 drbean joined #perl6
02:10 avar joined #perl6
02:10 katie_d joined #perl6
02:10 Khisanth joined #perl6
02:10 RayMagini joined #perl6
02:10 penk joined #perl6
02:10 pmichaud joined #perl6
02:10 buubot joined #perl6
02:10 rakudo_svn joined #perl6
02:10 shachaf joined #perl6
02:10 demq joined #perl6
02:10 nipotan joined #perl6
02:10 xinming joined #perl6
02:10 GeJ joined #perl6
02:10 silug joined #perl6
02:10 agentzh joined #perl6
02:10 IRSeekBot joined #perl6
02:10 revdiablo joined #perl6
02:10 ting joined #perl6
02:10 peepsalot joined #perl6
02:10 yahooooo joined #perl6
02:10 Daveman joined #perl6
02:10 whiteg joined #perl6
02:10 cj_ joined #perl6
02:10 Jedai joined #perl6
02:10 integral joined #perl6
02:10 stevan_ joined #perl6
02:10 nothingmuch joined #perl6
02:10 charsbar joined #perl6
02:10 ruz_ joined #perl6
02:10 SamB joined #perl6
02:10 zostay joined #perl6
02:10 Lunchy joined #perl6
02:10 TreyHarris joined #perl6
02:10 spinclad joined #perl6
02:10 Alias_ joined #perl6
02:10 SubStack joined #perl6
02:10 nnunley joined #perl6
02:10 Southen_ joined #perl6
02:10 moritz_ joined #perl6
02:10 cxreg joined #perl6
02:10 pugs_svnbot joined #perl6
02:10 Tene joined #perl6
02:10 mtve joined #perl6
02:10 rafl joined #perl6
02:10 TreyHarr1s joined #perl6
02:10 nnunley joined #perl6
02:10 TreyHarr2s joined #perl6
02:11 cmarcelo joined #perl6
02:11 thoughtpolice joined #perl6
02:11 Patterner joined #perl6
02:11 mncharity joined #perl6
02:11 Zygo joined #perl6
02:11 jrockway joined #perl6
02:11 marmic joined #perl6
02:11 jjore joined #perl6
02:11 ead joined #perl6
02:11 eternaleye joined #perl6
02:11 avar joined #perl6
02:11 aindilis joined #perl6
02:11 FurnaceBoy joined #perl6
02:11 qmole joined #perl6
02:11 IllvilJa joined #perl6
02:11 Botje joined #perl6
02:11 Qiang joined #perl6
02:11 [particle] joined #perl6
02:11 alester joined #perl6
02:11 kolibrie joined #perl6
02:11 pugsbot_r17185 joined #perl6
02:11 cognominal_ joined #perl6
02:11 kst joined #perl6
02:11 ycheng joined #perl6
02:11 Limbic_Region joined #perl6
02:11 gbacon joined #perl6
02:11 sordith joined #perl6
02:11 bbkr__ joined #perl6
02:11 zev joined #perl6
02:11 pasteling joined #perl6
02:11 buu joined #perl6
02:11 kcwu joined #perl6
02:11 arguile joined #perl6
02:11 allbery_b joined #perl6
02:11 Caelum joined #perl6
02:11 rhr joined #perl6
02:11 mugwump joined #perl6
02:11 ting_ joined #perl6
02:19 eternaleye joined #perl6
02:20 [particle1 joined #perl6
02:28 Southen joined #perl6
02:29 Limbic_Region joined #perl6
02:32 gbacon joined #perl6
02:32 sordith joined #perl6
02:32 bbkr__ joined #perl6
02:32 zev joined #perl6
02:32 pasteling joined #perl6
02:32 buu joined #perl6
02:32 kcwu joined #perl6
02:32 arguile joined #perl6
02:32 allbery_b joined #perl6
02:32 Caelum joined #perl6
02:32 rhr joined #perl6
02:32 mugwump joined #perl6
02:32 bbkr__ joined #perl6
02:33 zev joined #perl6
02:33 mugwump_ joined #perl6
02:39 thoughtpolice joined #perl6
02:46 dalek joined #perl6
02:49 charsbar joined #perl6
02:52 Helios joined #perl6
02:53 lambdabot joined #perl6
02:53 IRSeekBot joined #perl6
02:53 peepsalot joined #perl6
02:53 Jedai joined #perl6
02:53 SamB joined #perl6
02:53 Lunchy joined #perl6
02:53 pugs_svnbot joined #perl6
02:53 rafl joined #perl6
02:53 integral joined #perl6
02:57 Lunchy joined #perl6
02:58 IRSeekBot joined #perl6
03:19 stevan__ joined #perl6
03:24 rimad joined #perl6
03:28 alc joined #perl6
03:49 rindolf joined #perl6
03:55 Jamtech joined #perl6
03:57 Daveman joined #perl6
04:05 alester_ joined #perl6
04:20 RayMagini joined #perl6
04:29 d4l3k_ joined #perl6
04:30 zev joined #perl6
04:30 [particle1 joined #perl6
04:30 meteorjay joined #perl6
04:30 wolverian joined #perl6
04:30 jnthn joined #perl6
04:30 mj41 joined #perl6
04:30 Chris62vw joined #perl6
04:30 smtms joined #perl6
04:30 simcop2387 joined #perl6
04:30 pjcj joined #perl6
04:30 awwaiid joined #perl6
04:30 yves joined #perl6
04:30 Grrrr joined #perl6
04:30 mofino joined #perl6
04:30 exp_evalbot joined #perl6
04:30 ilogger2 joined #perl6
04:30 Yappo_ joined #perl6
04:30 ingy joined #perl6
04:30 perlbot joined #perl6
04:31 thoughtp1lice joined #perl6
04:33 demq joined #perl6
04:46 Limbic_Region left #perl6
04:47 Helios joined #perl6
04:47 Lunchy joined #perl6
04:48 shachaf joined #perl6
04:48 drbean joined #perl6
04:49 thoughtpolice joined #perl6
04:49 penk joined #perl6
04:49 agentzh joined #perl6
04:49 silug joined #perl6
04:49 GeJ joined #perl6
04:49 xinming joined #perl6
04:49 nipotan joined #perl6
04:49 rakudo_svn joined #perl6
04:49 buubot joined #perl6
04:49 pmichaud joined #perl6
04:55 lyokato joined #perl6
04:58 cnhackTNT joined #perl6
05:06 stevan_ joined #perl6
05:38 iblechbot joined #perl6
06:00 Auzon joined #perl6
06:43 BinGOs_ joined #perl6
07:20 GeJ joined #perl6
07:21 penk joined #perl6
07:21 agentzh joined #perl6
07:21 silug joined #perl6
07:21 xinming joined #perl6
07:21 nipotan joined #perl6
07:21 rakudo_svn joined #perl6
07:21 buubot joined #perl6
07:21 pmichaud joined #perl6
07:22 Alias__ joined #perl6
07:22 baest_ joined #perl6
07:32 Alias_ joined #perl6
07:35 Helios joined #perl6
07:36 Lunchy joined #perl6
07:36 integral joined #perl6
07:36 lambdabot joined #perl6
07:36 peepsalot joined #perl6
07:36 Jedai joined #perl6
07:36 SamB joined #perl6
07:36 pugs_svnbot joined #perl6
07:36 rafl joined #perl6
07:36 integral joined #perl6
07:38 eternaleye joined #perl6
07:40 Psyche^ joined #perl6
07:40 Zygo joined #perl6
07:40 jrockway joined #perl6
07:40 marmic joined #perl6
07:40 jjore joined #perl6
07:40 ead joined #perl6
07:45 ikeda joined #perl6
08:12 hareldvd joined #perl6
08:12 hareldvd left #perl6
08:16 Aankhen`` joined #perl6
08:22 rby joined #perl6
08:25 ikeda joined #perl6
08:39 cognominal_ Tim Toady, I beg to differ,  the = must bind looser than the comma  to bind the whole unparenthesed list.   I cant make sense of the sentence "the right side is looser than comma" because the right side is made of comma operator.
08:40 cognominal_ rakudo uses the S03 precedence table and gets it wrong too. One must parenthesize like in Perl5
08:43 masak joined #perl6
08:49 DarkWolf84 joined #perl6
08:49 araujo joined #perl6
08:53 ikeda joined #perl6
09:05 IllvilJa joined #perl6
09:09 laye joined #perl6
09:15 agentzh left #perl6
09:16 agentzh joined #perl6
09:36 ebassi joined #perl6
09:54 Schwern joined #perl6
10:09 Schwern joined #perl6
10:09 Schwern joined #perl6
10:20 hanekomu joined #perl6
10:23 hanekomu joined #perl6
10:44 nothingmuch @tell mncharity no, it's that you can't efficiently pass inherited attributes around if your parent<->child relationships aren't statically known, you need to dispatch them lazily.
10:44 lambdabot Consider it noted.
10:45 nothingmuch @tell mncharity for instance if you have a global index inherited/synthesized attribute, and some Node { has @.children } the value of that attr varies for each @.children[$n] based on the value of $n - 1, and it must be resolved 100% dynamically
10:45 lambdabot Consider it noted.
10:46 nothingmuch @tell mncharity furthermore there is no data in $node.children[$n] linking it to $node or vice versa. in MO each invocant on the stack is asked whether or not it is the parent of $some_child via a cached method call
10:46 lambdabot Consider it noted.
11:23 spinclad nothingmuch: 1) not statically known because  'has @.children' is added at runtime?  2) value varies based on index - 1 (why '- 1'?) because array contains independent containers, or because (being added at runtime) nothing is known about it statically?  3) no data in $node linking to .children[$n], no static data? since @.children itself links to each child (just not statically)...  4) or is my confusion more profound?
11:25 ruoso joined #perl6
11:29 spinclad II) why, when you see 'Node { has @.children }', can you not infer some things statically? because the API for the attribute definition (going through the MOP) is dynamic, not closed, and so not knowable statically?
11:34 spinclad (/me -> bed, i'll backlog)
11:44 cmarcelo joined #perl6
12:17 masak joined #perl6
12:31 zblaxell joined #perl6
12:51 pjcj joined #perl6
13:07 xinming_ joined #perl6
13:43 mncharity joined #perl6
13:49 simcop2387-vnc joined #perl6
13:52 alester_ joined #perl6
13:54 ebassi joined #perl6
13:58 meppl joined #perl6
14:11 qmole joined #perl6
14:37 mncharity two interesting papers: http://www.cs.ucla.edu/~awarth/papers/dls07.pdf from http://www.cs.ucla.edu/~awarth/ometa/ , and http://www.chrisseaton.com/katahdin/
14:37 lambdabot mncharity: You have 3 new messages. '/msg lambdabot @messages' to read them.
14:43 mncharity nothingmuch: re AG engines can't do p5/p6 because 'you can't efficiently pass inherited attributes around if your parent<->child relationships aren't statically known, you need to dispatch them lazily.', err, AG engines can't memoize?  That doesn't sound right.
14:45 Psyche^ joined #perl6
14:47 mncharity re 'there is no data in $node.children[$n] linking it to $node', ah, ok.  So one needs a system which permits node annotations.  Eg, oo on prolog (eg, Logtalk or FLORA) rather than just prolog.  I'm surprised none of the AG engines permit term annotation.  I don't understand the "or vice versa." part.
14:48 mncharity So I'm still fuzzy on the constraints, but thanks.  Interesting.
14:48 * ruoso . o O ( AG? )
14:48 mncharity ruoso, how goes the smop "before and after" example?
14:48 mncharity oh, hi ruoso :)
14:48 ruoso mncharity, hi...
14:49 mncharity Attribute Grammar (in the more recent instantiation of that phrase)
14:49 ruoso ahh....
14:49 ruoso ok...
14:49 sh joined #perl6
14:49 ruoso the example is not there yet..
14:49 mncharity http://en.wikipedia.org/wiki/Attribute_grammar
14:49 ruoso mostly because I still need the lowlevel types (method, attribute, code...)
14:50 ruoso s/types/implementations/
14:50 mncharity http://www.perlfoundation.org/perl6/index.cgi?smop_s1p_language is where it is landing?
14:50 lambdabot Title: SMOP s1p Language / Perl 6
14:50 ruoso yes...
14:50 ruoso but anyway... the code -> frame translation can be made in sm0p terms
14:50 ruoso I mean
14:51 ruoso the body of a method is already a solved issue
14:51 mncharity re low-level types, hmm.
14:51 mncharity oh, could you do a fib() translation?
14:51 ruoso maybe...
14:51 ruoso would you like to put the example code in the s1p page?
14:53 sh Does anyone know how to fix this pugs internal error: Invalid grammatical category: "Bool"
14:53 sh From SVN revision 20063
14:54 sh I get it during make of pugs
14:54 mncharity sub fib($n) { if $n ==0 { 0 } elsif $n == 1 { 1 } else { fib($n-1) + fib($n-2) } }
14:54 mncharity or whatever variation makes it easiest for your
14:54 sh I have a pugs binary, but when I run it, I get the above error
14:54 mncharity sh: it's the current way the pugs build is failing :(
14:54 mncharity it's being worked on
14:55 sh Thanks mcharity
14:55 mncharity hmm, anyone know a version number to suggest for a working pugs?
14:55 sh Good question, I'd be interested too!
14:55 mncharity I fuzzily recall there is a way to ask the evalbot...
14:55 mncharity pugs: 3
14:55 exp_evalbot RESULT[3]
14:55 mncharity pugs: $VERSION
14:55 exp_evalbot OUTPUT[*** ␤    Unexpected end of input␤    expecting "::"␤    Variable "$VERSION" requires predeclaration or explicit package name␤    at /tmp/vLoV8UcmPB line 1, column 9␤]
14:55 mncharity pugs: $PUGS_VERSION
14:55 exp_evalbot RESULT[\"Perl6 User\'s Golfing System, version 6.2.13, October 17, 2006 (r18093)"]
14:56 mncharity oooh, that's old.
14:56 mncharity r18093
14:56 sh Yeah, probably does not compile with GHC 6.8.2
14:56 ruoso mncharity, Ok... the interesting thing here... is that you need an object that implements "if" and "=="
14:56 mncharity right.  6.6.1 is your best bet.
14:57 ruoso mncharity, after that... you just need to pile frame nodes in the sm0p sense...
14:57 mncharity ruoso: :/  The compiler can't compile it into something simple before handing it to smop?
14:57 sh Ok, I was already out to buy champagne after the pugs binary compiled with GHC 6.8.2, but then noticed it does not work at all
14:57 mncharity s/The/My/
14:57 ruoso mncharity, you can compile to a set of sm0p blocks
14:58 ruoso "if" and "=="  must still be implemented anyway (but that's not related to your example... it's a general task)
14:58 mncharity sh: yeah. :(  not quite yet.  got noticably closer yesterday thanks to gbacon.
14:59 ruoso mncharity, so you can just name a public symbol (like SMOP__OP__if) with an API you can define, and use it inside a sm0p block
15:00 mncharity ruoso: say I'm an optimizing compiler ("mncharity, you are an optimizing compiler"), couldn't if and == be inlined, and the $n type be native int?
15:01 rdice joined #perl6
15:01 sh mncharity: Thanks for your help!
15:01 ruoso the $n type must probably be native int.. (it's the only one implemented)...
15:01 mncharity sh: np.  any help debugging would be most welcome. :)
15:02 ruoso mncharity, the only thing that is defined is that the code you generate must comply to the http://www.perlfoundation.org/perl6/index.cgi?smop_interpreter_implementation_api
15:02 lambdabot Title: SMOP Interpreter Implementation API / Perl 6, http://tinyurl.com/yv6sur
15:02 ruoso you can use SLIME... which is the http://www.perlfoundation.org/perl6/index.cgi?default_smop_interpreter_implementation
15:02 lambdabot Title: Default SMOP Interpreter Implementation / Perl 6, http://tinyurl.com/3328jg
15:03 sh mncharity: :-) I'm unfortunately not in a position to make a contribution in terms of actual code; I'm happy to beta test though
15:03 mncharity err, "SLIME" is already used as the name of a very nice lisp environment on emacs. :)
15:04 SamB yes it is
15:04 mncharity sh: re beta test, ok, that would be useful.  stay tuned... :)
15:04 ruoso mncharity, re slime... it's not really a problem... as it's an internal thing that probably no one will notice...
15:04 mncharity ok :)
15:04 sh mncharity: Thanks! I'm looking forward to it
15:06 mncharity ruoso: basically, not having a clear direction in which to push on parsing this morning, I thought I'd poke at the ast phases.  given two paragraphs, one p6, one smop, I could explore turning one into the other.  as a "somewhat different that emitting to p5/ruby" case, to help shake down architecture choices.
15:08 ruoso mncharity, please... keep trying on that...
15:09 mncharity err, 'keep trying on ' which?
15:09 tooo joined #perl6
15:11 gbacon was hoping someone had a brilliant flash and fixed pugs
15:11 mncharity lol
15:12 mncharity :/
15:12 chris2 joined #perl6
15:14 ruoso mncharity, on smop ;)
15:15 mncharity Juerd: so it looks like the pugs evalbot is running r18093.  Does that mean something broke it in r18094, or that feather's ghc got upgraded?  Hmm, I'm basically just asking if feather's ghc version changed, and if so, when.  Thanks. :)
15:15 pmurias joined #perl6
15:15 mncharity addressed to Juerd, but anyone with a feather account could check...
15:16 mncharity hi pmurias
15:16 pmurias mncharity: hi
15:17 mncharity ruoso: ah, ok :)
15:18 gbacon mncharity: it's a weird thing.. when a Haskell program typechecks, it almost always runs as expected too
15:18 stevan_ joined #perl6
15:21 mncharity gbacon: let me guess, and the corollary is, when it doesn't, you're then out on a very non-common-case branch, with no tools?
15:24 mncharity I note that since the error still occurs with empty string input, it might perhaps be an initialization phase which is choking.  Which suggests one might approach it by shutting down parts of initialization (as they're not going to be needed) and see when it stops failing?
15:25 sordith simcop2387: i see you
15:25 simcop2387 hello sordith
15:25 sordith hi!
15:25 gbacon yeah, I'm thinking it's a prelude problem
15:25 gbacon parsing it, I mean
15:26 sordith simcop2387: sorry for my private message earlier. did not want to ask on this channel for permission to do so. was curious about your opinion regarding a problem on another channel
15:26 mncharity err, really?   The point which fails in the build is the prelude precompilation to yaml.  Which just runs ./pugs.  If you go... hmm... one sec...
15:26 simcop2387 sordith: lets take this back to pm
15:26 sordith roger that
15:30 mncharity gbacon: If I echo -n > src/perl6/Prelude.pm, and make, all the files named /Prelude/ seem to be updated, seemingly with the null input.  But the Bool error still occurs.
15:31 * gbacon nods
15:32 mncharity s/seemingly with the null input/ well, ./src/Pugs/Prelude.hs is has the "", the others, binary I just checked timestamps on and briefly eyeballed.
15:32 iblechbot joined #perl6
15:33 mncharity which suggests there is no trace of Prelude left in pugs itself.
15:33 mncharity and then ./pugs -c -e ""  fails, suggesting it's not input either.
15:34 mncharity which leaves internal initialization, no?
15:35 diakopter mncharity: I think when the rebuild fails on feather, it keeps the Last Known Good build.
15:37 FurnaceBoy joined #perl6
15:40 mncharity diakopter: right.  I was wondering if feather is still using ghc 6.6.1 , in which case it's worth exploring around r18094 to see what changed in Pugs.   Or whether feather's ghc got upgraded, in which case being at r18093 is just an artifact.
15:43 mncharity hmm... having looked at svn log,
15:44 mncharity r18094 was a big change to _runpugs_.  So it looks like being stuck at r18093 is indeed an artifact, but of runpugs breaking.
15:44 mncharity So the evalbot isn't the right guide to when pugs was last working.
15:44 mncharity And we have another todo item, fixing evalbot.
15:46 mncharity or instead, I could simply be babbling confusedly.  runpugs isn't the evalbot. sigh.  so rewinding...
15:48 mncharity Looking at the svn log, it's not clear why the evalbot might have stopped updating at r18093.  So perhaps someone with a feather acount could check if the ghc version was changed, and if so, when.
15:48 mncharity Just to perhaps provide a bit on additional insight into what is going on with pugs.
15:49 mncharity *of
15:51 mncharity and if feather has any kind of build log, knowing what the failures were would be great too.
15:51 rhr fwiw, I use 6.6.1 and my pugs binary is r19220 - I haven't tried to build it since then
15:51 rhr it wirks fine
15:51 rhr *works
15:52 mncharity Good to know.  Thanks! :)
15:54 gbacon rhr: it'd be interesting to know whether you can build the current revision
15:54 gbacon well, whether the resulting image can at least hobble along
15:55 rhr gbacon: let me make a copy of my repo and give it a try
15:57 mncharity My vague impression is it was the start of upgrading to 6.8.2 which broke it.
15:57 mncharity Reading through log, "hey!  I forgot all about perl5/Pugs-Compiler-Perl6/ !".
15:57 mncharity so many p6 implementations and fragments...
15:59 pasteling "rhr" at 65.94.10.253 pasted "pugs build failure" (22 lines, 1.1K) at http://sial.org/pbot/30422
15:59 rhr that's just the end
16:00 nothingmuch mncharity: memoization is not as efficient
16:00 nothingmuch "real" ag engines linearize the both-ways recursion
16:01 Aankhen`` joined #perl6
16:01 nothingmuch inherited attributes are passed only to the children that will need them for the synthesized attrs
16:01 nothingmuch and this is done in advanc e
16:01 nothingmuch whereas for dynamic languages you go down to the synth attr at the bottom, see what inherited attrs it needs, and then climb back up to the parent
16:06 pugs_svnbot r20064 | pmurias++ | [kp6] --profile option
16:06 pugs_svnbot diff: http://dev.pugscode.org/changeset/20064
16:06 lambdabot Title: Changeset 20064 - Pugs - Trac
16:08 mncharity ok, so I hypothesize pugs on 6.6.1 broke around r19956 - r19962, in the attempt to upgrade it to 6.8.1.  Which suggests r19955 is the most recent working version.
16:10 mncharity pmurias: one thing you might add to kp6 is the ability to load one of it's own yaml dumps.  then you could parse, dump, save that, and repeatedly rerun your emitter, without having to parse again.  You would know better than I if that would actually be useful.
16:10 rhr I can test that.  what's the most efficient way to get that rev from svn?
16:10 mncharity svn up -r19955 ?
16:10 rhr mncharity: OK, thanks
16:11 * mncharity double checks... yep
16:11 mncharity rhr: thanks! :)
16:13 rhr it seems to be building OK [ 35 of 109]
16:19 mncharity gbacon: so it might be worth eyeballing  svn diff -r19955:19963 ?  to see if something got broken in the upgrade attempt?
16:19 mncharity I note svn diff -r19958:19959 modified Types, but I don't see anything obvious.
16:19 Psyche^ joined #perl6
16:19 pmurias mncharity: thought about it too, the time to recompile the file on changes would still be annoing
16:20 sh I tried to also build r19955 using ghc-6.6.1 on Fedora 8, but it fails after building dependencies: "Setup: cannot satisfy dependency pugs-HsSyck-any"
16:21 mncharity oh, right, the emitter is kp6. :/  well, could always use pugsx1/misc/winter_jig/backend_bare_perl5/ ;)
16:22 gbacon mncharity: looks like a bunch of renamings
16:23 pmurias mncharity: no, i'm talking about parsing the changed file
16:23 rhr r19955 works, r19956 fails for me
16:23 pasteling "rhr" at 65.94.10.253 pasted "r19956 failure (end)" (11 lines, 890B) at http://sial.org/pbot/30423
16:23 mncharity sh: re 'fails after building', :(  re 19955-19956 transition, good to know.
16:25 gbacon rhr: and your attempt to build HEAD failed also, right?
16:26 mncharity re pugs-HsSyck-any, i wonder if you svn up to the version you had working, whether you can actually build it from scratch.
16:27 pmurias mncharity: with --profile you can see what kp6 spends time on
16:27 pugs_svnbot r20065 | pmurias++ | [kp6] kp6 doesn't print what's doing with profiling on
16:27 pugs_svnbot diff: http://dev.pugscode.org/changeset/20065
16:27 lambdabot Title: Changeset 20065 - Pugs - Trac
16:28 mncharity The reason for the question is on my fedora 8, I noticed I now only have Cabal 1.2.3... and I'm not sure that's what ghc 6.6.1 came with.  Perhaps the fedora upgrade to 6.8.2 breaks pugs via Cabal.  In which case I would expect an attempt to do a  make clean  rebuild of -r19220 to fail similarly.
16:29 mncharity pmurias: :) neat!  instrumentation++
16:30 pmurias ;)
16:31 gbacon mncharity: when we get it working, we really need to look at overhauling the pugs build
16:31 gbacon via cabal, that is
16:31 mncharity hmm, r19810 edited AST.hs
16:31 gbacon as it sits, it's a pretty big mess
16:32 mncharity that could be neat.
16:33 gbacon mncharity: well, cabal ought to be doing more of the heavy lifting
16:33 sordith_ joined #perl6
16:34 rhr gbacon: yes, see http://sial.org/pbot/30422
16:34 lambdabot Title: Paste #30422 from "rhr" at 65.94.10.253
16:34 gbacon and the cabal folks seem willing to support us where we need them
16:34 mncharity should also perhaps get a braindump from audreyt on whether, long term, the right thing is to incrementally improve pugs, or to rewrite.  ie, I don't know if "pugs isn't architected the right way" played any role in it's getting stuck.
16:34 gbacon rhr: what version of Cabal do you have? ghc-pkg list Cabal
16:34 mncharity s/a hypothetical "pugs isn't.../
16:35 rhr Cabal-1.1.6.2
16:35 mncharity 1.2.3
16:35 mncharity curious
16:35 sh fwiw, I have Cabal-1.1.6.2
16:35 rhr I was doing a make realclean between each build
16:35 mncharity sigh.  too many dimensions in this space.
16:35 sh mncharity: I yum remove'd ghc and ghc-6.8.2 and symlinked /usr/bin/ghc-6.6.1 to /usr/bin/ghc
16:36 * sh is trying realclean now
16:36 * mncharity starts a build...
16:37 * sh gets still the same problem
16:38 sh I had this problem when I first tried it with ghc-6.8.1 a few weeks back, and found suggestions to edit some Cabal files and actually add dependencies
16:40 gbacon doesn't Pugs.cabal require at least Cabal-1.2?
16:40 mncharity [particle]: I had a dream last night that I woke up and there was a rakudo p6 -> yaml parser, and everything was happy. :)
16:40 SamB they split a lot of packages off from base recently
16:41 sh build_pugs.pl considers Cabal`1\.[1-9] to be $has_new_cabal
16:42 sh SamB: Yes, but I think this was after ghc-6.6.1, wasn't it? I"m using 6.6.1 right now
16:42 SamB yeah
16:42 gbacon grep cabal-version Pugs.cabal*
16:42 SamB I think so
16:43 barney joined #perl6
16:43 SamB apparantly recent cabal has some kind of alternatives thing if you want to make the .cabal file work for both GHC versions...
16:44 gbacon SamB: it's kind of freaky: cabal files are Prolog programs :-)
16:44 gbacon it fiddles with the values of flags until it finds a happy combination
16:44 sh So many programming languages mixed just to get a Perl 6 compiler...
16:45 gbacon rhr: the build error that you pasted is a cabal issue
16:45 SamB but doesn't prolog have a "cut" thing?
16:45 SamB that makes things nasty?
16:46 gbacon SamB: yes, so not full-on, hairy, nasty, scary, Cirque du Soleil clown Prolog
16:46 cognominal_ sh, you want to be in too. :)   are you bourne or c?
16:46 ruoso mncharity, http://www.perlfoundation.org/perl6/index.cgi?smop_s1p_language
16:46 lambdabot Title: SMOP s1p Language / Perl 6
16:46 gbacon just the nice bits
16:46 ruoso in the end of the page, I added a full version of SMOP fib...
16:46 SamB and the kinds of problems posed to cabal-get are a lot simpler than those posed to prolog interpreters...
16:46 sh cognominal_: Hehe, I'm D
16:47 SamB they have a lot less search breadth, I believe
16:47 sh cognominal_: Yet another incomplete language
16:48 cognominal_ I think there is many D languages. /me checks the wp
16:49 cognominal_ indeed...
16:49 sh Hehe
16:50 cognominal_ "there is" or "there are"? btw
16:50 cognominal_ in french we use singular "il a plusieurs langages..."
16:51 cognominal_ s/il a/il y a/
16:51 sh there are
16:51 mncharity re lots of languages, prolog, I yesterday rediscovered  http://svn.pugscode.org/pugs/misc/Grammars/snapshot_of_prolog_engine.pl :)
16:51 lambdabot http://tinyurl.com/28x3jn
16:52 * gbacon thought ilya was Russian
16:53 PerlJam gbacon: he is.  :)
16:54 gbacon PerlJam: I was kidding about cognominal_'s s/il a/il y a/
16:54 PerlJam I know.
16:54 sh Lol
16:54 PerlJam So much is lost in communication due to the limited bandwidth of IRC
16:55 PerlJam luckily I hang around with a crowd where I can almost assume everything is sarcastic or condescending or whatever  :)
16:55 cognominal_ silly me,  I thought that was a non sequitur
16:57 gbacon cognominal_: well, it would have been better for me to have /me thought ilya was Russian, not French
16:57 gbacon it's all in the delivery *sigh*
16:58 cognominal_ you lost me
16:59 * gbacon thought Ilya was Russian, not French
17:00 gbacon would that have been more understandable?
17:03 cognominal_ I don't think Ilya is French
17:03 PerlJam heh
17:04 cognominal_ ok you made me say it... :)
17:04 cognominal_ "il y a" is French but not Ilya
17:05 Juerd mncharity: Yes, ghc got upgraded.
17:05 mncharity ok, on an fedora 8, x86_64, I get a working pugs with ghc661-6.6.1-3.fc7 (for ghc), ghc682-6.8.2-8.fc8 (for Cabal 1.2.3), and pugs r19955.
17:05 mncharity after hand repointing the /usr/bin/ghc(-pkg) symlinks at the 6.6.1 binaries.
17:06 eternaleye joined #perl6
17:06 gbacon cognominal_: yes, I realize that.. it was a (bad) joke
17:06 baest_ joined #perl6
17:07 cognominal_ ...better than the ones parrot pulls on me :) :(
17:08 barney joined #perl6
17:08 penk joined #perl6
17:08 silug joined #perl6
17:08 nipotaway joined #perl6
17:08 rakudo_svn joined #perl6
17:08 buubot joined #perl6
17:08 pmichaud joined #perl6
17:08 schmalbe joined #perl6
17:08 mncharity Juerd: around 2007-09-22 ?
17:09 Juerd mncharity: No, a week or so ago
17:09 mncharity (r18094)
17:09 rhr Juerd: could you update from docs/feather/syn_index.html on feather?  It's supposed to happen automatically, but apparently hasn't happened for months
17:09 mncharity hmm.  so we still don't know why evalbot is stuck.
17:09 gbacon mncharity: at least pugs is compilant again :-)
17:09 Juerd rhr: I don't know what the current way of making it happen automagically is
17:10 Juerd rhr: I have insufficient tuits to track everyone's changes to feather :(
17:10 rhr me either...
17:10 Juerd rhr: In general it works like this: someone does something, after a while loses interest or tuits, and it breaks and does not get fixed.
17:10 * [particle] considers opening a tuit factory
17:10 Juerd rhr: I think we'll have to find ways of getting used to that.
17:11 Juerd Alternatively, stop setting up new stuff when you do have tuits. Things that don't exist, don't break
17:11 Juerd But that sounds even less attractive.
17:11 mncharity s/so we still don't know why evalbot is stuck./so we still don't know why evalbot got stuck./  we know why it can work at the moment. :)
17:11 mncharity *can't  sigh
17:12 Juerd Anyone with tuits and clue can request sudo access.
17:12 mncharity lol
17:12 gbacon Juerd: short supply of such people :-)
17:12 Juerd gbacon: Yes. There are many people with clue in our community
17:12 Juerd Just not enough that also have tuits.
17:12 PerlJam Juerd: why would anyone want sudo access?
17:12 Juerd PerlJam: Because I maintain the base Debian system, and provide the machine itself
17:13 Juerd PerlJam: And I expect the community, the users, to handle everything else.
17:13 rhr well, it's not getting changed very often, so we probably don't need to resurrect the auto-update machinery.  If someone with access could copy the current version that would be nice.
17:13 mncharity re "why would anyone want sudo access?", to have feathered round tuits?
17:13 Juerd I cannot be a regular sysadmin for a 100 login machine, sorry.
17:14 [particle] ...but...but...we'll repay you with kindness, you beautiful sysadmin, you!
17:14 Juerd And if I were a normal sysadmin for feather, I'd forbid almost all of what has happened to it :)
17:15 Juerd So nah, that's not the right formula for feather.
17:15 jrockway joined #perl6
17:15 mncharity I wonder if the tech is at the point we could do a feather with virtualization, and each service gets its own "box".
17:15 Juerd mncharity: We are at that point.
17:15 Juerd mncharity: There is a separate VM *already* especially for all the more important services
17:15 Juerd mncharity: But nobody has the time and knowledge to move those services there.
17:15 mncharity ah, ok.  shiny. :)
17:16 Juerd There's also a separate VM especially for evalbots and the like, just so they can't crash or breach the other VMs
17:16 Juerd It was offline for a few weeks and nobody appears to have noticed.
17:16 * PerlJam is especially glad he never asked for sudo access :)
17:17 Juerd mncharity: If you need a VM for anything special, just ask for it.
17:17 Juerd The hardware problem was solved
17:17 ebassi joined #perl6
17:17 ruoso joined #perl6
17:17 marmic joined #perl6
17:17 jjore joined #perl6
17:17 ead joined #perl6
17:17 mncharity thanks.  np.  just wondering if that would make your/our collective lives easier.  sounds like it already is. :)
17:18 Juerd There's no longer a shortage of hardware resources
17:18 Juerd Now to fix the people problem... :)
17:18 Juerd Any suggestions?
17:18 mncharity sigh.
17:18 Juerd mncharity: No, it makes life harder.
17:18 Juerd mncharity: Each VM is yet another linux box to maintain.
17:18 Juerd But I'll gladly do it if other people take care of the actual services provided.
17:18 mncharity that's keeps being the issue doesn't it.  the will to go out of business, and otherwise mangle things, is so strong.
17:19 ruoso mncharity, I had review the s1p code example... and now it really looks like how the code generated by s1p should look like...
17:19 Juerd mncharity: The fundamental problem is just people not being able to work on Perl 6.
17:19 mncharity ruoso: oops, sorry, popped it in my browser and got distracted.  looking...
17:20 baest joined #perl6
17:20 Juerd mncharity: I have medical and personal problems myself, others may be kept occupied by their jobs, etcetera
17:20 jrockway joined #perl6
17:20 Juerd feather was originally a box you could compile your own pugs on. Someone thought it'd be great if feather just provided a *compiled* pugs.
17:20 sordith joined #perl6
17:21 Juerd That sort of thing is really nice while it lasts
17:21 Juerd But eventually it will break, and the person who set it up is no longer active.
17:21 Juerd I simply cannot maintain all of that. I tried, but I no longer will. Takes too much energy.
17:22 Juerd I tried for a few months only. Feather has survived for years, so it's not all the big deal it may appear to be right now.
17:22 baest_ joined #perl6
17:22 Aankhen`` joined #perl6
17:22 FurnaceBoy joined #perl6
17:22 simcop2387 joined #perl6
17:22 IllvilJa joined #perl6
17:22 integral joined #perl6
17:22 lambdabot joined #perl6
17:22 peepsalot joined #perl6
17:22 Jedai joined #perl6
17:22 SamB joined #perl6
17:22 pugs_svnbot joined #perl6
17:22 rafl joined #perl6
17:25 Psyche^ joined #perl6
17:25 Alias__ joined #perl6
17:25 baest_ joined #perl6
17:26 mncharity Juerd: right.  It has been, and is, a very nifty part of the p6 ecosystem.   Defintely a source of warm fuzzies. :)
17:27 mncharity ruoso: eep.  /me thinks I should have asked for something simpler. :)  But I shall grovel over it.
17:29 integral joined #perl6
17:33 mncharity re "The fundamental problem is just people not being able to work on Perl 6.", hmm, well, that, and a enormous effort gets dissipated in our "lost in development path space" style.  The confronted by so many options on what to eat, we starve.
17:35 PerlJam mncharity: who's lost?
17:37 mncharity Well, perhaps not the parrot folks.  One may question the approach, but they have been slogging away at it.  Everyone else though?
17:37 cognominal_ not lost, just scattered...
17:38 mncharity hmm, lost vs scattered...
17:40 mncharity lost has a nice implication of lack of situational awareness (eg, failing to utilize existing tools), lack of clear view of how the development path will play out, and... there was something else...
17:41 mncharity blank mind.  so scattered, definitely.  but I think also lost.
17:41 devogon joined #perl6
17:42 mncharity lost: not quite knowing where you are, where you have been, how you got here, where you are going, how you are going to get there, or how to get back to where you have been. ;)
17:50 mncharity oh, and why you are going there.  (I've had some odd conversation fragments with at least vaguely p6-ish people, in which key parts of "the whole point" have been missed).
17:50 ruoso mncharity, that example is good because it exercises the use of inner blocks...
17:51 mncharity ok :)
17:51 ruoso and the capturize thing
17:51 ruoso which is what replaces registers in SLIME
17:52 Psyche^ joined #perl6
17:52 ruoso and in case you didn't notice... the method was implemented using continuation passing style...
17:52 ruoso which is just one of the options
17:53 mncharity lol
17:57 Jamtech joined #perl6
18:08 Jamtech joined #perl6
18:15 Psyche^ joined #perl6
18:22 cognominal_ is postcircumfix syntax allowed for functions call/methods call? if so I suppose the infix < necessitates a space.
18:22 TimToady that is correct
18:23 cognominal_ which statament is correct?
18:23 TimToady when S03 says "the right side of =", it is not talking about the comma, but the precedence context in which the comma is parsed
18:24 TimToady that infix:['<'] necessitates a space
18:24 TimToady foo()<bar> is a has subscript on whatever foo() returns
18:24 TimToady *hash
18:25 TimToady and that context is looser than comma
18:25 TimToady (for list assignment, but not for item assignment)
18:25 cognominal_ ok
18:26 cognominal_ must reread S03.  but my last question was is    foo< bar > equivalent to foo( 'bar' )
18:26 cognominal_ ?
18:26 TimToady no
18:27 cognominal_ ok
18:27 TimToady and in fact foo< bar> is likely to be illegal syntax, since a function without () is treated as a listop, and listops require a space also
18:27 cognominal_ so     foo< bar >     does not parse?
18:28 cognominal_ ok
18:28 TimToady on the other hand, .method<foo> is fine, since .method assumes no args in the absence of ()
18:28 TimToady but it's still a hash deref
18:28 TimToady not an arg to .method
18:28 cognominal_ ok
18:28 qmole joined #perl6
18:30 TimToady mncharity: sorry, have had negative tuits recently for responding...
18:30 cognominal_ so without the preceding @ sigil or a [], every allowed circumfix defaults to be a hash deref
18:31 TimToady the problem with a backtracking STD is that it's very difficult to find an ordering that emulates longest token without introducing lots of negative lookaheads to rule out a longer token
18:31 TimToady and negative lookaheads imply you know exactly what language your rule is being used as a part of
18:31 TimToady the same problems for casting into LR etc
18:32 TimToady the same problems for using AG
18:32 TimToady the whole point of STD is to get past having to know what language the current rule is being used in
18:32 mncharity hi.  so completely ignoring when code blocks get run, I gather the negative lookaheads are needed to avoid successful but incorrect parses?
18:32 TimToady but yes, it will also run a lot faster with LTM (I hope)
18:32 mncharity :)
18:32 * ruoso home &
18:33 mncharity by ruoso, tnx
18:33 TimToady cognominal_: I didn't understand your question
18:34 TimToady mncharity: I know there are places where the current STD falsely recognize a shorter token if you assume alternatives backtrack
18:34 mncharity and that mis-recognition doesn't cause a later parsefail?
18:35 mncharity (just to make sure I understand)
18:35 TimToady might not
18:35 mncharity ok
18:35 TimToady in theory
18:35 mncharity hmm.
18:35 TimToady for example, if you only recognize part of an infix
18:35 TimToady then the rest might be recognizes as prefix to the next term
18:36 mncharity token level longest isn't a problem.  it's the non-local longest-ness.
18:36 cognominal_ TimToady, thx. I think I got it.
18:36 mncharity s/non-local in grammar/
18:37 TimToady yes, and even within a known grammar, the transitive calculation of token pieces hoisted from subrules can be non-trivial to understand the implications of
18:37 mncharity ok
18:37 mncharity hmm
18:38 mncharity err, wait.  I'm not so much worried about what the right language design is, as "if I take this as a shortcut, will I get burned when trying to parse peoples' not-too-hairy p6 code".
18:39 TimToady you might, without a scattering of negative lookaheads, or reordering/splitting rules
18:39 TimToady I already had to split the pair recognition into two subrules and put at opposite ends of noun for that reason
18:40 TimToady I'm sure we'll run into many similar situations
18:40 TimToady so <fatarrow> and <colonpair> have to be recognized early/late with respect to similar looking nouns
18:41 mncharity ok.  sigh.  thanks.
18:41 TimToady if | were LTM rather than backtracking, that wouldn't matter
18:42 mncharity right.  but have backtrackers.  don't know if we have an LTM yet?
18:42 TimToady Perl 5 thoroughly explored the space of evil hand-coded lexers, and Perl 6 is trying to make the opposite mistake
18:43 mncharity lol  one for the quote book
18:43 TimToady mostly have LTM
18:43 TimToady still doesn't handle <foo>* <bar> quite right
18:44 TimToady the other major infelicity is down in the matchify code, which doesn't properly track rule levels, so confuses priors that should be subrules from those that should result in a list within the top match object
18:44 TimToady but that's not related to LTM
18:46 TimToady when you run STD_run it uses gimme5 -fo which fails over to a backtracking match, so it tends to hide the current problems in LTM
18:47 TimToady I run with -fo when I'm trying to debug LTM, because it makes it fail faster
18:47 TimToady *without
18:49 mncharity :)
18:50 peeps[work] joined #perl6
18:50 mncharity Turns out the effort to get a yaml parse tree from parrot/rakudo has stalled out for lack of tuits.
18:50 mncharity :(
18:51 mncharity So I'm back puzzling over what approach to take, trying to get a parser.
18:51 TimToady well, there are always a surplus of antituits
18:51 mncharity can I combine them with scattered tuits and get energy?
18:52 TimToady depends on if you know how to photosynthesize from hard gammas
18:52 mncharity lol :)
18:52 mncharity ah, what a zoo.
18:53 TimToady the only thing keeps us all going is stupid persistence
18:53 TimToady and the main danger signal I saw in your README a week or so ago was that you sounded like you'd give up after a day or two if you didn't get immediate gratification :)
18:53 mncharity I'm not sure what the smiley is for wry weary grin.
18:54 TimToady yeah, there should be a smiley for gritted teeth...
18:55 mncharity If one defines gratification as other people being involved, then I'm afraid, yes.  I'm done with solitary speculative p6 coding exercises.  Need customer/colleagues.
18:56 TimToady on the other hand, everyone comes and goes on various rhythms, so we work with that too...
18:56 cognominal_ TimToady, in S03, list prefix precedence     "The right side is looser than comma."  ~~ s/right/left/    ?
18:57 TimToady and it's just everyone's responsibility when they're "on" to recognize when two other people are not in sync when they could be...
18:57 cognominal_ or is stupid persitence from me?
18:57 TimToady the right side of a list prefix is looser than comma
18:58 TimToady print 1,2,3 the comma is tighter than the right side of the print
18:58 TimToady so the print governs the comma
18:58 TimToady again, "the right side of" is talking about the context, not the contents
18:59 cognominal_ ok, I am dense
18:59 cognominal_ anyay I got the idea
19:00 TimToady basically, 1,2,3 is in the identical state after either "print " or "@foo ="
19:00 * mncharity was just thinking "invisible prefix tokens" would be much easier to visualize if they were, well, visible.
19:01 bocksp joined #perl6
19:02 cognominal_ :)
19:02 TimToady which prefix tokens are you thinking are invisible?
19:03 mncharity list prefix
19:03 TimToady if you think of a list prefix as kinda like a (, it's really the other end that is an invisible )
19:03 cognominal_ the context act slike a invisible token
19:03 TimToady 1 + 2 * 3
19:03 TimToady that's what precedence is all about
19:04 TimToady it's where all the invisible (...) go
19:04 TimToady at least with list prefix the implied ( is next to the operator
19:04 TimToady unlike the * above
19:05 TimToady anyway, the listops vs commas work exactly the same in Perl 5
19:06 TimToady the old examples of print 3,4, sort 2,1
19:06 cognominal_ but the = has a precedence wich varies with the context ?
19:06 cognominal_ s/wich/which/
19:06 TimToady $x= is a different prefix than @x=
19:07 cognominal_ indeed
19:07 TimToady that's different from P5, yes
19:07 mncharity re rhythms, part of the problem is that while I believe I *should* be spending significant time on p6 at the moment, and basically am, I am failing to get myself in consultant mode, so it's unclear if that time is being spent at all well.  I knew I had a dependency on parrot yaml, but wasn't tracking progress.  A resource dependency on the parrot folks, but didn't
19:07 mncharity make a point to know what I needed, and why it was important.
19:07 cognominal_ in lay man words    $a = 1, $b = 1   and  @a = 1, 2  both dwim
19:08 TimToady yes.  we recently re-adjusted the dwimmery to simplify it
19:08 mncharity s/to know/to let them know/
19:10 mncharity we seem so close to making rapid progress, but how to close that gap... I've notes from 2005 that could have been written last week.
19:10 TimToady mncharity: of course, letting them know why you think it's important still doesn't necessarily make it move up their priority list, since parrotfolk are naturally VM-centric rather than language-centric
19:10 mncharity sure.  necessary, not necessarily sufficient.
19:11 TimToady mncharity: well, I hate to sound cruel, but maybe we'd be better off if you had stuck around a little more in the meanwhile to keep us on track...
19:11 mncharity well, perhaps not necessarily necessary, but... not doing the explanation indicates not really trying.
19:12 TimToady but, again, I do understand the come-and-go thing, and don't mind working within that constraint
19:12 mncharity yeah.  sigh,
19:12 TimToady it's the nature of volunteer work that it involves volunteers...
19:13 TimToady and nobody can keep going at their best pace constantly
19:13 TimToady esp if they have to earn a living elsewise
19:13 TimToady and/or have other interests they must pursue to stay sane
19:13 TimToady or their health fails
19:14 TimToady all of which slow me down
19:14 TimToady it's a wonder I get anything done at all :)
19:14 mncharity re wonder, :)
19:16 mncharity re 'come-and-go thing', basically, it repeatedly seems I'm no longer on the critical path, so I go elsewhere, but later it turns out things got stuck.  If I really truly believed parrot would have a usable p6 by year end, my time would be better spent in OLPC land, or generating income.
19:18 mncharity Not fully believing that, I'm trying to find some why to get non-parrot p6 to a self sustaining and moving state, quickly, before I really do have to go generate income.
19:18 mncharity *way
19:23 TimToady well, I think trying to find a consensus view of AST is very valuable to all projects
19:24 TimToady just as the STD project started when I realized the various parsers were diverging rather than converging
19:24 mncharity hey, redsix was no different than pugs. :)
19:25 TimToady AST is not where my brain is right now, and I'm glad to see anyone else's brain there
19:25 mncharity well, modulo the oop.
19:27 mncharity re ast, yeah, but the real question is social.  we have, for instance, kp6.  and pugs, and redsix, and v6 mumble, and... .  But don't have people writing p6 code for them.  I know why *I'm* not, and hypothesize the same obstacles have discouraged others, but... that doesn't mean removing some or all of them, and which, will be sufficient to start having people care about my code. :)
19:29 TimToady indeed, you have project management skills that are lacking in most of the rest of us
19:29 TimToady I certainly learned long ago that I had to delegate all that
19:29 TimToady which is the only project management skill I have...
19:29 mncharity :)
19:32 cognominal_ redsix?
19:33 mncharity misc/pX/Common/redsix/redsix
19:34 mncharity ruby implementation of p6 from... 2006?   pugs-based grammar in mutant p5+subrules engine, ruby+p6 runtime.
19:35 cognominal_ mncharity, I am knee-deep in the rakduo compilation chain, I may able to write your yaml dumper within a week. No promise.
19:35 mncharity I think it's high-water mark in test passing was something like 20%?  so weaker than pil2js, or pil-run.
19:36 mncharity but mostly due to lack of pursuing "the slog to get tests to pass".
19:36 cognominal_ probably easier than the subclassing stuff where I hit wall after wall. And no one is interested to check-in the patch that works
19:36 mncharity re knee deep in compilation chain, great image.
19:36 cognominal_ jonathan is not around . I could convince him
19:37 cognominal_ De Gaulle said  "Qd vous ete dans la merde jusuq'au cou, je n'en ai que jusqu'au genou"
19:38 cognominal_ when you have shit up to the neck, I am only knee deep in it
19:38 eternaleye joined #perl6
19:38 cognominal_ mais je suis seulement un homme grand et pas un grand homme.
19:39 cognominal_ depending on the place of the adjectif "grand" it means you are really tall or metaphorically tall
19:41 mncharity re week, I have to ponder.  I had planned on a "through the end of March" time frame.  I'm not comfortable getting exceptional effort from folks when I'm not fully clear on how it will pan out.
19:41 mncharity re subclassing stuff?
19:42 cognominal_ well, subclassing pmc to make them real p6 classes.
19:43 mncharity recently encountered the concept of being hardly able to refuse to follow someone into a filled basement to address a plugged sewer drain, when the person your following is half your height. ;)
19:43 cognominal_ also but the hash pmc have the same name as the Perl hash class.   "extended method" are called in the pmc instead of the p6 class :(
19:43 cognominal_ s/also//
19:43 mncharity ah, ok.
19:44 cognominal_ I asked in #parrot and filled bugs but I think they know the problems but are after architectual stuff that may or may not fix the problems
19:45 mncharity what's the next part, the thing which getting this done depends on?
19:45 cognominal_ you mean your yaml dumper?
19:46 cognominal_ I think nothing but my buddin skill
19:46 mncharity err, no, if the subclassing stuff started working this afternoon,
19:46 mncharity what would that enable you to do this evening?
19:47 cognominal_ well, I may fix it by inserting some code in the right place so I get to understand the compiling chain which makes possible to write your dumper
19:47 mncharity I guess the question is, is it "I have this fix, and it's languishing", or "I have this fix, and I can't make progress on X unill...
19:47 cognominal_ so, it is probably easier to me to work on your stuff
19:48 cognominal_ I don't know if my fix will work for the subclassing.
19:48 mncharity ok, /me confused. :)
19:49 cognominal_ pardon my french :)
19:49 mncharity having a yaml dumper depends on this subclassing patch?  or the hash name decolliding?
19:49 cognominal_ no
19:49 cognominal_ I don't think so.
19:50 mncharity ok.  so I understand the have patch part, and basically what it's intended to address.  I'm missing the connection to yaml dumping.
19:50 cognominal_ none
19:50 mncharity lol
19:50 cognominal_ except it makes me understand the compilation chain
19:51 cognominal_ that's the connexion
19:51 mncharity yaml dumping is something entirely different you could work on, instead of pursuing patch, and whatever next task depends on patch.
19:51 mncharity re understanding, ah...
19:51 cognominal_ yes
19:51 mncharity just curious, is there are particular next task which depends on patch?  or is the patch simply general moving forward.
19:52 cognominal_ chasing the subclassing also involves getting in lot of C and pir code so you give me the occasion to focus only on the compilation chain
19:53 cognominal_ well, i want to make rakudo move forward but the parrot team is now involved in implementing role
19:54 cognominal_ and you, you want to get away without doing parsing?
19:55 mncharity well, I'd be very happy to have a yaml dump from rakudo.  let's see, what are the risks...
19:55 mncharity re "and you, you want to get away without doing parsing?",
19:56 mncharity my objective is for people to be able to quickly compile, and have run fast, p6 written as if it were basically p5-semantics wrapped in p6 syntax.
19:57 araujo joined #perl6
19:57 mncharity to make it possible to start coding bigger things in p6.  specifically, parts of p6, like the prelude, and regex engine.
19:59 mncharity the advantage of writing it in p6 being, even if one want's to through it away later, in favor of p6 which uses more language features, that it can be run on other p6-ish things, rather than being tightly tied to a particular parser-compiler-runtime-baselanguage.
20:00 mncharity but that's a project risk there.  if you build a ball field where people can code simple (but richer tha kp6) p6, and make it easy to use (err, rather, quick to use - error reporting is likely to be suboptimal) and fast, will they come to use it.
20:02 mncharity other possible parsers are STD_red, and redsix.  Both in ruby.  Both written by me.  Both as yet unused by anyone else.  Rakudo in contrast has the nice property of being a multiperson active effort that people care about.
20:03 buchetc joined #perl6
20:04 mncharity another parser is kp6, and one option is to do the same fast compile and run, but for kp6 dialect.  If that attracts interest, that would be sufficient to show this is a right path.  But if not, one doesn't learn much.
20:04 cognominal_ I just want to make rakudo as a perl5 with a better syntax. But the parrot team is aiming for mmd and roles. Static typing is not even at the horizon. Not that should be very difficult compared to role and mmd
20:04 mncharity hmm, that might be an interesting low-hanging fruit.  have to play with the new --profile.
20:05 cognominal_ higher hanging than I tought
20:05 cognominal_ as always
20:06 mncharity I actually like the mmd and roles approach.  I don't mention them only because they are fairly straightforward on ruby, and p5, backends.
20:07 mncharity Also like macros, but can work around their absence with metaprogramming the p6 files.
20:07 pmurias joined #perl6
20:08 mncharity pmurias: re --profile, can you give a rough rule-of-thumb on where kp6 spends its time?
20:09 mncharity s/kp6, and one option is to do the same fast compile/kp6, and one option is to do the same fast compile (well, slowish parse?)
20:09 REPLeffect joined #perl6
20:10 mncharity background, we have lots of starts at Prelude code.  Which got stuck on pugs not being able to deal with them.  It would be nice to have something which could start running them, and allow work on them to proceed.
20:10 mncharity also assorted fragments from the various backends.
20:11 mncharity I don't believe kp6 is a sufficiently large dialect for that.  Eg, assignment would be nice.
20:12 mncharity hmm, that's not fair.  binding is basically working for assignment in kp6.  hmm, why *exactly*, in what way, is kp6 dialect insuficient for prelude work...?
20:14 mncharity pmurias: so, any particular reasons why you're not writing big chunks of "p6" code to be run by kp6?
20:14 mncharity :)
20:15 * pmurias was backlogging ;)
20:17 pmurias mncharity: kp6 has current high startup cost 1.3 sec (haven't looked yet why, it didn't the last time i added profiling)
20:17 mncharity so anyway.  some risks of spending time on the yaml dumper are... () it's not clear anyone but me wants to use it, which makes me a pointfailure () the result might be such that one doesn't want to use it?  hmm, why... narrow coverage or bugs?  could manage that risk by running --target-parse over the t/spec and all t/ and see how it does.  hmm, that's an action item for me.
20:17 pmurias the parsing takes most time on bigger tests
20:19 pmurias mncharity: two reasons kp6 has a slow parsers and i have to be preparing for my end of secondary education math exam
20:19 mncharity re 1 sec startup, pugs is similar, but people have still tried to use it...
20:19 mncharity LOL
20:20 mncharity and giving kp6 a faster emitter,runtime wouldn't help with the slow parse.
20:20 mncharity ok, thanks. :)
20:21 mncharity trying to figure out what a sort of kp6-like p6 implementation would need to do differently to get used more.  can't do anything about math exams, but can aim to be a faster parse. :)
20:22 mncharity that's another risk which could be checked - time rakudo --target=parse.  make sure it's sufficiently fast.
20:22 mncharity sigh, I'm in "oh, no, you really shouldn't" mode.
20:23 mncharity cognominal_: it would be great if you could get the yaml dumping working.
20:23 mncharity If I had it right now, I expect I would be using it right now.
20:24 mncharity If you have any questions about what I'd like to do with it, or anything else, please just ask.
20:25 pmurias mncharity: the yaml-ast could be fed to kp6 quite easily
20:26 pmurias i think it's mostly an issue of fixing Pads
20:26 mncharity what's unfixed about them?
20:27 lichtkind joined #perl6
20:27 pmurias evaluator
20:27 mncharity and before that, a first question of, given your experience and timing measurements, would loading from yaml actually be helpful?
20:27 pmurias mncharity: i didn't make much measurements
20:28 mncharity right
20:28 mncharity hmm...
20:28 mncharity ok.  so need fuzzy/hypothetical.  "evaluator"?
20:28 * mncharity looks at a dump...
20:29 justatheory joined #perl6
20:30 pmurias it's easy to recreate a closure for evaling code in so they get their scopes right
20:31 mncharity eep.  Dumping code and helping it will work when it gets loaded.
20:31 mncharity *hoping
20:31 mncharity s/code/runtime subs/
20:31 pmurias mncharity: i can try to get the loading of ast if it would be of help
20:32 mncharity I think that's one for the interesting idea list.  The next time someone has to wrestle with kp6, we have this as an option.
20:33 mncharity err, the "interesting idea but let's not worry about it now" list.
20:33 mncharity the having to undump working subs converted it, for me, from a "oh, this should be easy", to "oh, lot's of pain, and it may never work".
20:34 pmurias mncharity: the can be recreated
20:36 mncharity but with only a fuzzy/hypothetical need, the effort can't be written off as "it's easy, let's just do it so we have it around later, in case it's needed".  spending real time which could instead go elsewhere, needs a real need, a real payoff, and we don't really have one for this, no?
20:37 mncharity one buys software with chunks of peoples' lives.  which is a commodity one really wishes to spend carefully.
20:38 mncharity even if doing so is not traditional :)
20:38 mncharity friend with 6 hours of meetings a day comes to mind.  dilbert land.
20:39 pmurias mncharity: you have to get the ast from somewhere in the first place
20:39 gbacon meetings--
20:40 mncharity right.  so the only role for a kp6 undumper would be to run the kp6 parser once, and the emitter multiple times (without having to rerun the parser).
20:40 mncharity I don't think it feasible to generate dumped kp6 ast from another, non-kp6 source.
20:41 mncharity which isn't enough payoff to be worth the effort, no?
20:41 pmurias usefull for example when working on the emitter and recompiling the whole of kp6
20:41 mncharity indeed
20:42 pmurias mncharity: why?
20:42 pmurias i mean why it's not feasible
20:42 pmichaud (from scrollback: "parrot team is focusing on mmd and roles")   I'm not sure that's an entirely accurate assessment.  At the moment jonathan is the one with the most available tuits for doing work, and mmd and roles seems to be his particular focus at the moment.  But it would be a mistake to claim that this is a purposeful direction on the part of the team.
20:43 pmichaud in my case, I'm low on tuits, but my focus will be on the tools and getting basic parsing to work and cleaning up the class/object implementation a bit
20:44 cognominal_ pmichaud, when you get time , please read my bugs report and commit my patch :)
20:44 cognominal_ I will be happy to contribute to you focus
20:45 cognominal_ s/you/your/
20:45 pmichaud okay.  but see "low on tuits" above.  :-)
20:45 mncharity pmichaud: re focus, thanks :)   hmm, maybe that paragraph should be cut and pasted to a wiki somewhere...
20:45 cognominal_ so the  "when you get time"
20:46 pmichaud actually, things should get drastically better now (cross fingers, knock on wood, etc.)   Paula _finally_ made it to her 2nd round of chemotherapy yesterday (four weeks late) and she seems to be having almost no debilitating side effects.
20:47 cognominal_ ho, I forgot about that. Good luck
20:47 pmichaud thanks
20:48 pmurias mncharity: writing a solid perl5 rule engine would solve most of kp6 problems
20:49 pmurias but is a high time investment
20:49 cognominal_ it is missing an operator grammar parser.
20:50 cognominal_ I mean the perl5 engine
20:50 mncharity re 'no debilitating side effects', that's really great.  having seen alternatives.
20:50 pmichaud (paragraph cut and paste to wiki) -- yes, it might be good to do that.  I think that many times people interpret progress in a given area (e.g., mmd, roles) as being a deliberate choice of focus among the leaders.  But in many cases the things that move forward are simply those that scratch a particular implementor's itch.
20:51 pmichaud and so the reason that rakudo has junctions, objects, mmd, roles, etc. is because we have one productive developer who really wants to focus on that.  It's not that we're deliberately targeting that -- that's just the way the tuits fall.  (I suspect this is true for many volunteer-based projects.)
20:51 cognominal_ suffering of severe atopic dermitis that is itchin as hell,  I hate that expression.  :)
20:51 pmichaud and yes, I'm _very glad_ that jonathan is doing the work he is doing -- it's all helpful.
20:51 cognominal_ if I scratch my itch, I bleed.
20:52 pmichaud cognominal_: sorry for the expression, I'll replace it with another if you have one handy for my future use :-)
20:52 mncharity lol
20:53 cognominal_ this is not the bleeding edge I want to be in.
20:53 TimToady I have been extremely itchy lately too, and was ruining some of my skin till I started putting steroids on it instead of scratching...
20:54 TimToady the weirdest thing is to have an itch inside your lung--there's no way to scratch it even if you decided to...
20:54 pmichaud oh, I've had that
20:54 cognominal_ beware of regular use of topical steroids, it ruined my skin.
20:54 TimToady I'm very careful with steroids
20:54 pmichaud itch in lung is awful -- keeps feeling like I needed to cough something up
20:54 cognominal_ occasionnal use is great so if you can keep it so.
20:55 TimToady I basically ruined a cornea with steroids once (by necessity), so I'm quite familiar with the local and systemic effects of steroids, and just how much to use and how to taper off.
20:56 TimToady back when I got shingles in my right eye, steroids were all there were for that.
20:56 TimToady (acyclovir was only in clinical trials at that time)
20:56 cognominal_ hopefully for me there is now new molecules for my AD like tacrolimus, and old systemic medecine newly applied to AD like methotrextate.
20:58 cognominal_ methotrexate!
20:58 TimToady my brother was on methotrexate for many years for psoriasis, but recently had to quit
20:59 knewt_ joined #perl6
20:59 TimToady anyway, eventually got the eye fixed with a cornea transplant, so that worked out, eventually...
20:59 cognominal_ hopefully we don;t have to integrate gattaca to program perl
20:59 TimToady were eventually == after 14 years...
21:00 TimToady I don't think my genome is terribly close to perfect...
21:07 mncharity pmurias: re 'writing a solid perl5 rule engine would solve most of kp6 problems', well, there's misc/pX/Common/yet_another_regex_engine/Regexp_ModuleA.pm, but I wouldn't call it solid.  Passes almost all the p5 re_tests, and their p6 variants, but leaves lots of gaps, and known problems.  And while it has commits, i'm not sure it's set up to do ratcheting.
21:07 mncharity s/but leaves/but that leaves/
21:09 mncharity I'm not suggesting it's less solid than kp6... but likely differently non-solid, which could obviously be a difficulty in swapping it in for kp6's.
21:09 pmurias mncharity: kp6 is really minimalistic
21:10 mncharity it's support for grammar declarations is a definite kludge, very fragile, just enough to be able to write them when you know what you are expecting to parse them.  just a couple of line hack.  which could be addressed, but fyi.
21:11 mncharity re minimalistic, it might indeed be feasible.  I suspect so.  I'd be glad to help someone else do it.  It's just never reached the top of my own todo list.  But I'd be glad to help.
21:13 pmurias mncharity: do you think it will be fast enough
21:14 pmurias is it ratchety?
21:18 mncharity it's not at all ratchety, but its also quite fast.
21:20 mncharity cd misc/pX/Common/yet_another_regex_engine
21:20 mncharity prove t
21:21 mncharity you used to be able to swap it in as the pugs regex engine, but I suspect that's bitrotted.
21:22 kyrbe joined #perl6
21:22 mncharity oh, but it looks like the t/regex tests can be run directly.  as long as they haven't changed much in form (it's a "file scraper" kludge).
21:24 mncharity README has instructions, and a project history.
21:25 mncharity biggest pain was p5 5... 5.6?  5.8?  was proving fragile, making one not want to refactor, because things might then undebuggably break.
21:26 kyrbe left #perl6
21:27 pmurias it look a bit opaque...
21:28 pmurias * looks
21:28 kane_ joined #perl6
21:31 mncharity the p5 code, yes, rather.
21:36 luqui joined #perl6
21:36 mncharity big picture is there's a backtracking engine factory, Match, a regex AST, which emitters which invoke the factory, a p5 syntax bootstrap, a p6 syntax bootstrap, and grammar api (implementation messy, but grammar interitance (p5) works, and rules are both executable, and objects (and so can be used for analysis and optimization)).
21:38 mncharity so it does a lot, but yes, the "can't refactor without introduction subtle p5 bug tickling which the test suite has insufficient coverage to detect" left things ugly.
21:39 mncharity Thus my hope to rewrite it in p6, or at least ruby.  :)  Though now with 5.10... who knows, perhaps would could simply do a cleanup path without danger.
21:39 mncharity s/would/one/
21:39 mncharity s/path/pass/  sigh
21:41 mncharity (btw, apropos STD and redsix, I misremembered.  redsix was the year before.  it was the yet_another_regex_engine which had me flailing about for a p6 grammar).
21:42 mncharity and correct OPP.
21:42 justatheory joined #perl6
21:50 silug_ joined #perl6
21:55 pugs_svnbot r20066 | buchetc++ | [INSTALL] update ghc 6.6.1 workaround
21:55 pugs_svnbot diff: http://dev.pugscode.org/changeset/20066
21:55 lambdabot Title: Changeset 20066 - Pugs - Trac
22:25 pugs_svnbot r20067 | putter++ | misc/winter_jig/sixen/sixcmd: Deal more gracefully with the user not having created a rakudo exe.  And with an invalid implementation being requested.
22:25 pugs_svnbot diff: http://dev.pugscode.org/changeset/20067
22:25 lambdabot Title: Changeset 20067 - Pugs - Trac
22:32 Chillance joined #perl6
22:32 pugs_svnbot r20068 | putter++ | misc/winter_jig/ast_rakudo/parse_t_spec.t: Created.  Runs rakudo --target=parse against pugs t/spec/ .t files.
22:32 pugs_svnbot r20068 | putter++ | Currently 35 of 128 files are successfully parsed.  One non-terminates (S29-conversions/ord_and_chr.t).
22:32 pugs_svnbot diff: http://dev.pugscode.org/changeset/20068
22:32 lambdabot Title: Changeset 20068 - Pugs - Trac
22:37 Quaver joined #perl6
22:49 japhb joined #perl6
23:02 pugs_svnbot r20069 | buchetc++ | [t/spec] coro examples
23:02 pugs_svnbot diff: http://dev.pugscode.org/changeset/20069
23:02 lambdabot Title: Changeset 20069 - Pugs - Trac
23:14 Limbic_Region joined #perl6
23:19 alester joined #perl6
23:21 bockmabe Hey, who's the current Pumking?
23:29 TimToady of which pump?
23:30 bockmabe perl6
23:31 TimToady perl6 is too large for one pumpking to think about, so we have many of them
23:31 Limbic_Region TimToady - perl 6 still binds rules on streams correct?/
23:31 bockmabe Ah, I see.
23:32 bockmabe I was trying to see if there is a correlation between the IRC social network in #perl6 and the Pumpkingyness of those in #perl6.
23:32 TimToady Limbic_Region: that is currently specced to be mediate by cat objects that emulate lazy strings
23:32 TimToady *mediated
23:33 Limbic_Region effectively yes though
23:33 TimToady there needs to be some way to do it
23:33 Limbic_Region have you read the pm threads on the topic?
23:34 TimToady bockmabe: um, in #perl6 a pumpking is anyone who will pick of one of the balls and run with it for a while
23:34 bockmabe Gotcha.
23:34 TimToady Limbic_Region: not that I recollect
23:35 TimToady Limbic_Region: recent threads?
23:35 meppl good night
23:36 TimToady like Why does my Perl regex substitution for linebreak fail?
23:36 Limbic_Region no, not recent threads
23:36 Limbic_Region sorry, am bouncing betwen channels
23:36 Limbic_Region TimToady - if you are interested, I could /msg you the ones in particular I was thinking of
23:38 TimToady well, I do have plenty of other things to think about with what little brain I have at the moment, so I don't really have cycles for handholding PMers at the moment...
23:39 TimToady I barely have enough wind to walk at a steady pace currently, and it's slowing me down rather...
23:39 Limbic_Region TimToady - handholding PMers isn't why I was going to suggest it.  Perhaps fresh ideas about implementation is all
23:40 TimToady as long as there's some way eventually for a regex to ask for more string when it runs out, it doesn't much matter how
23:40 TimToady but lazy strings are not really fundamental to p6, I don't think
23:40 TimToady that's why we have Cat objects
23:41 Limbic_Region ok
23:41 TimToady which will make an iterator look like a flat string, hopefully, to the extent necessary
23:42 TimToady cattable semantics may end up leaking back to normal strings if there's no overhead, but I'm not mandating it for now
23:43 TimToady originally we were just going to allow @foo ~~ /pattern/ to autocat, but decided it was a bad idea
23:51 silug_ joined #perl6
23:53 MarcWeber joined #perl6
23:53 MarcWeber left #perl6

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

Perl 6 | Reference Documentation | Rakudo