»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! | Rakudo Star Released!
Set by diakopter on 6 September 2010.
masak consider that there's no production-use Pod (6) parser in existence yet. 00:00
oh, unless you perhaps count Damian's, which is out of date.
lue that would explain why I saw a lot of ambient material in those files. I'm only familiar with Pod6.
Teratogen pod can't be THAT hard to parse!
lue it isn't really, I assume no-one's been interested enough recently (except me) 00:01
masak Teratogen: hi! welcome back. :) 00:02
Teratogen hi masak! =)
masak Teratogen: no, it's not really. as evidenced by the four or so parsers that are out there already.
Teratogen: what's hard, at least if you ask me, is getting good integration with a Perl 6 implementation. that's what I'd like to tackle next. 00:03
the nice things in Pod 6 can be found in the deeper integration with the programming language. just as with Perl 6 regexes, actually.
hope that answer helps.
00:05 Raynes joined
lue .oO[ I wish to put a hex on this computer, but it would probably enjoy that type of curse ;) ] 00:06
masak is very happy to finally be working on week 20 of the Web.pm grant, so he can wrap it up, write a retrospective, and then apply with a good conscience for a Pod grant
00:09 Raynes left, Raynes joined 00:10 sji left
masak "invoke() not implemented in class 'Undef'" -- how I don't miss thee at all. :) 00:12
00:14 risou joined 00:19 justatheory joined
lue
.oO(An advent post on Pod6 seems like an OK idea...)
00:28
masak yes, but we tend to lean towards features that are already in Rakudo.
Pod6 is implemented only to a very small degree. 00:29
00:30 orafu joined
ch3ck3r kittlar masak 00:40
masak ch3ck3r: go to bed! :)
ch3ck3r i'm not tired :/ 00:41
masak neither am I. but at least I'm doing something useful. :P
ch3ck3r :) 00:42
01:11 icwiener left 01:17 nadim_ left
lue afk 01:50
masak blog post! strangelyconsistent.org/blog/novemb...the-oldies 01:52
01:53 PZt joined
colomon First performance of the "Emperor" is a good catch. masak++ 02:14
masak thanks.
dalek ecza: a35af99 | sorear++ | / (3 files):
Make "iterator" an optimized context operator
02:16
sorear this is my third commit for the day. I had to reset the first two because they didn't help 02:17
this one is pretty good though - almost 3 second speedup
I'm going to have to start using callgrind :/
masak sorear++ 02:18
02:22 jasonmay_ is now known as jasonmay 02:39 redicaps joined 02:40 bluescreen joined 02:41 bluescreen is now known as Guest89375 02:44 Guest89375 left
masak sleeps 02:53
02:53 masak left 03:22 envi joined 03:36 jasonmay left 03:39 jasonmay joined 03:44 RandalSchwartz joined
RandalSchwartz can't build current git head 03:44
is that typical? :)
during perl Configure.pl --gen-parrot, got 03:45
.. .gmake: *** No rule to make target `compilers/pirc/Rules.mak'. Stop.
sorear not typical, no 03:46
RandalSchwartz so how do I recover from that?
it was during the "gmake realclean" in the parrot subdir 03:47
sorear rm -rf parrot parrot_install
diakopter call an exterminator; you've got parrots
sorear you should realclean *before* git pull, not after
RandalSchwartz so parrot sometimes moves forward in bad ways
03:47 colomon left
RandalSchwartz or the overarching script doesn't know how to deal with pulling/ 03:48
sorear reason being that realclean is only supposed to deal with contemporary generated files
RandalSchwartz where's the mistake?
so it should do realclean, pull, then make?
sorear compilers/pirc just got kicked out of the parrot repository today
yes
03:48 nymacro joined
RandalSchwartz ahh, so I could have just done a reset --hard 03:48
rather than refetching all? 03:49
sorear reset --hard, clean -fx
-dfx
RandalSchwartz I presume this is rare? 03:50
and I happened across the corner case?
or is this a known breakage that someone needs to address, but not enough tuits?
sorear it's rare but it affects everyone at once 03:51
RandalSchwartz what's the easiest way to figure out how rakudo differs from the specs 03:52
RandalSchwartz is researching for Learning Perl 6
sorear there's a high level list of missing features in the latest Rakudo Star announcement 03:53
RandalSchwartz yeah, I saw those.
sorear there are also line items in the spec-test metadata; grep for #?rakudo
RandalSchwartz ahh, that'll be useful 03:54
03:59 satyavvd joined 04:00 colomon joined 04:12 colomon left 04:27 nymacro left 04:35 nymacro joined 05:17 nymacro left, satyavvd left, satyavvd_ joined 05:23 satyavvd_ left 05:24 kanishka joined 05:30 kaare joined, kaare is now known as Guest11857 05:37 fhelmberger joined 06:05 nymacro joined 06:09 shachaf joined 06:12 nymacro left, nymacro joined 06:14 _twitch joined 06:19 am0c left 06:26 nadim_ joined
dalek ecza: 280c536 | sorear++ | / (5 files):
Use new list iteration interface for regexes
06:32
06:55 kanishka left 07:21 Axius joined 07:22 xinming_ joined 07:25 xinming left 07:27 Axius left
moritz_ good morning 07:30
07:34 wtw joined
diakopter hi 07:37
sorear hi 07:41
07:42 nothingmuch joined
dalek ecza: 4cc78c1 | sorear++ | lib/ (3 files):
Run inferior runloops on same coroutine
08:01
sorear RFC: gist.github.com/719714 # for p6[acl] 08:07
niecza announcey 08:08
probably just [ac] 08:10
08:10 Trashlord joined 08:23 ch3ck3r left
sorear pokes moritz_ 08:23
moritz_ stabs sorear 08:24
just a wee bit, mind you :-)
sorear ick, stabs 08:25
dalek ecza: aad67c1 | sorear++ | lib/Threads.pm6:
Debitrot Threads.pm6
08:28
ecza: 879fbdf | sorear++ | v6/tryfile:
Use low-level coding in Regex.ACCEPTS
sorear dwarfs moritz_
moritz_ retreats to Moria
sorear down to 50s 08:29
08:31 justatheory left 08:42 mj41_ joined, jfried joined 08:45 mj41_ is now known as mj41 08:51 redicaps left
sorear moritz_: who might I talk to about the art of the announcement? 08:58
dalek ecza: a981b22 | sorear++ | / (6 files):
Merge back tryfile augments
09:09
09:13 neroxx joined 09:28 timbunce joined 09:29 dakkar joined 09:34 am0c joined
moritz_ sorear: depends on which aspect you want to talk about 09:34
sorear: masak and pmichaud are good at writing such announcements
sorear: I can help you to get a bit more attention 09:35
sorear well, that gist link - first draft of niecza announce 09:37
I'd like some feedback from anyone more experienced
moritz_ sorear: you should include your nickname when talking about #perl6 09:41
sorear: otherwise it looks fine to me
sorear: if you also send the email to perl6-announce, it will automatically appear on the planetsix blog aggregator 09:42
sorear ah 09:45
what do you mean, attention?
moritz_ tipps like the above (get on the blog aggregator), hackernews, reddit etc. 09:47
one more thing: you could mention that your current runtime is the CLR 09:48
sorear ok
moritz_ and maybe some performance figures
09:54 timbunce left 10:00 timbunce joined
sorear Announcement draft 2: gist.github.com/719783 10:06
10:07 thelazydeveoper joined
jnthn Rather than bore you with a long list of features that are not yet implemented, 10:08
here are some of the things that are not not yet implemented:
...I'm bored! ;)
sorear I'm trying to capture a little of that masakian silliness. Not sure if it's backfiring. 10:09
moritz_ liked it
10:09 ch3ck joined 10:13 thelazydeveoper left, thelazydeveloper joined 10:33 neroxx left 10:34 neroxx joined 10:47 satyavvd joined 10:50 icwiener joined 10:58 alc joined
dalek ecza: 8ff39ae | sorear++ | / (3 files):
Fix several holes in the regex optimizer
11:07
sorear out
11:08 wamba joined 11:33 f00li5h joined 11:41 timbunce left 11:42 satyavvd left 11:48 sunnavy joined, xinming_ left 11:53 xinming joined 11:55 daxim joined 11:57 colomon joined 12:03 cotto joined 12:17 pencilk joined 12:26 pmurias joined 12:35 cotto left, cotto joined 12:44 pencilk left 12:48 cotto left 12:56 am0c left, cotto joined 13:02 thelazydeveloper left 13:14 takadonet joined
takadonet morning all 13:19
13:19 MayDaniel joined 13:21 risou_ joined 13:24 risou left 13:29 Guest11857 left 13:37 MayDaniel left 13:38 am0c joined 13:45 ggoebel joined 13:47 pmurias left 13:52 Psyche^ joined, Psyche^ is now known as Patterner 14:11 nero2x joined 14:14 neroxx left 14:16 _kaare joined 14:17 satyavvd joined, plainhao joined 14:18 joyer``` joined 14:21 nadim_ left 14:23 nymacro left, nadim_ joined 14:24 RandalSchwartz left 14:33 bluescreen joined, bluescreen is now known as Guest27466 14:40 Guest27466 left, nero__ joined 14:41 [particle] joined 14:43 nero2x left
colomon o/ 14:48
takadonet o/ 14:49
14:49 [particle] left 14:50 ggoebel left 14:51 satyavvd left 14:54 [particle] joined, ggoebel joined 14:56 am0c left
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet 15:03
15:09 lichtkind joined
lichtkind i have problem wit %h = 2 => 'a', 3=> 'g'; 15:10
shouldnt be autoconvert to hashref?
moritz_ why?
lichtkind because it would be consistent with array 15:11
moritz_ why?
colomon rakudo: my %h = 2 => 'a', 3=> 'g';; say :%h.perl; say %h.WHAT 15:15
p6eval rakudo : OUTPUT«"h" => {"2" => "a", "3" => "g"}␤Hash()␤»
colomon rakudo: my @h = 2, 3; say :@h.perl; say @h.WHAT 15:16
p6eval rakudo : OUTPUT«"h" => [2, 3]␤Array()␤»
lichtkind moritz_: thanks but so far i understood my rekudo repl i worked differently i check this again 15:18
15:18 [particle] left
moritz_ lichtkind: I can't make sense of anything that you say, somehow :/ 15:18
lichtkind moritz_: i said that my rakudo repl showed me something different then here but i found the bug now, thanks 15:20
moritz_ lichtkind: note that the REPL stringifies, which can be surprising if you expect it to do anything else
or if you don't know the stringification rules for the objects you're dealing with 15:21
15:22 risou joined 15:23 am0c joined, MayDaniel joined
lichtkind moritz_: i gave in frankfurt yesterday talk about context sensitive operators in perl 6 at ffm perl fowkshop, was good 15:23
15:25 wtw left, risou_ left
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet 15:30
15:31 [particle] joined, sftp joined 15:36 kanishka joined
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet 15:41
15:49 _twitch left 15:56 REPLeffect joined 16:00 justatheory joined 16:09 [particle] left 16:18 [particle] joined 16:22 risou_ joined 16:23 MayDaniel left 16:24 risou left
colomon pondering if porting bernhardkausler.wordpress.com/2009/...to-python/ to p6 would make a worthwhile Advent calendar post. 16:26
16:29 masak joined
masak oh hai, #perl6 16:29
lichtkind hai masak
takadonet masak: yo
PerlJam colomon: sure. 16:30
kthakore hi PerlJam ! 16:33
masak "The goal of this project is to have fun while learning about how to make a fast Perl 6; if we accidentally make a fast Perl 6 in the process, so much the better." gist.github.com/719783 16:36
sorear++ 16:37
also, "not not yet implemented" :P
reading that announcement, I'm thinking (1) niecza looks like an implementation in which one could actually write something non-trivial already, and (2) I should try that at some point soon. 16:39
sorear: I would recommend settling on a release schedule soonish. including whether to do time-based or feature-based releases.
16:42 thundergnat joined
thundergnat Hi #perl6 16:43
takadonet thundergnat: yo
masak thundergnat: \o
thundergnat Is there anybody around that has built a working R* 1010.11 on Windows XP?
I fanally got around to downloading anf trying it and have been (somewhat) unsucessful, 16:44
er, finally, actually 16:45
Ran into a known bug: trac.parrot.org/parrot/ticket/1873 and worked around that. It now BUILDS, but is _extremely_ fragile. 16:46
perl6 -v yeilds: This is Rakudo Perl 6, version 2010.11 built on parrot 2.10.1Null PMC access in get_bool()... 16:47
masak watches TheDamian at osdc.blip.tv/file/4442577 16:48
ch3ck \o
masak TheDamian: hey! pmichaud didn't make that 35th release, I did! :P
ch3ck: o/
ooh. didn't know TheDamian disagreed about the name "Perl 6". huh. 16:50
"parallel languages in the same language family". good, good. 16:51
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ign_tablet 16:52
masak "[Perl 6] also has to obey more rules than Perl 5. It's not so much of a cowboy language." This sorta-kinda expresses something that I've sorta-kinda wanted to express myself at times. 16:54
PerlJam masak: I like his percentages because 80% of statistics are made up :) 16:55
"language design 95% complete"
masak haven't gotten to that part yet.
"there are NO undeclared variables in Perl 6". O RLY? 16:56
PerlJam it was right at the beginning
masak then I missed it.
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....lta_tablet 16:57
16:58 thundergnat left 17:06 Kodi joined
Kodi Would anyone object if I marked S32::Temporal as not being a draft anymore? It's pretty stable now. 17:07
masak agrees
Kodi++
maybe we should have a "rehabilitation program" to get other draft synopses to a non-drafty state. 17:08
Kodi Yeah, it's about time!
moritz_ wants to get some synopsis into a "draft" state again 17:09
masak :)
17:11 PacoLinux joined 17:13 joyer``` left, jfried left 17:14 thelazydeveloper joined
masak TheDamian: unary dot-equals not implemented yet? huh? 17:14
rakudo: $_ = 'oh hai'; .=uc; .say 17:15
p6eval rakudo : OUTPUT«OH HAI␤»
masak guess he was just being conservative, or something :)
dalek ecs: 5994eb0 | (Kodi Arfer)++ | S32-setting-library/Temporal.pod:
[S32/Temporal] Graduated out of draft state and corrected my description of the offset method.
: 7b9ac4f | (Kodi Arfer)++ | docs/feather/syn_index.html:
[syn_index.html] Temporal is no longer a draft or a type.
moritz_ Kodi++ 17:16
Kodi I'd like to help bring Containers to life, too, but pmichaud wants me to wait for him to clean up Hash. 17:17
masak makes sense. 17:18
oh! if anyone's looking for an Advent Calendar topic, I think flip/reverse/invert would be a good one.
colomon +1 17:19
moritz_ +2 # accumulative
masak :P
also, the reason 'say for @stuff' doesn't work any more. (TheDamian explains it well in the talk)
these are simple, basic things, but I think they're perhaps not widely known. 17:20
and they're exactly the kind of thing people might like to read.
"In Perl 6, Inf is a real value". someone on Twitter said "fail!" over this, and I don't really understand why. 17:21
Kodi masak: Perhaps as a pun on "real", since Inf isn't a real number. 17:22
moritz_ mathematically speaking, Inf is not a number at all
masak Kodi: oh, then it might simply be a misunderstanding.
moritz_: indeed.
rakudo: say Inf ~~ Numeric
p6eval rakudo : OUTPUT«1␤»
masak "A, but what happens if you say C<1 ..^ Inf>? Then... it doesn't run nearly as long." *lol* 17:23
TheDamian tries C<^^10> and then sounds slightly disappointed it doesn't do anything multidimensional. heh, I argued for the removal of such multidimensional behaviour, on the basis of it being less useful than prefix:<^> simply numifying its argument. 17:25
that was back in 2008 or 2009.
here: rt.perl.org/rt3/Ticket/Display.html?id=60828 17:33
I don't see my own name in that discussion, neither on IRC. maybe I'm remembering wrong. 17:35
17:35 hercynium_ joined 17:37 colomon left 17:42 colomon joined
masak I don't understand TheDamian's point about the increased importance of "sanitizing input" after {} gets a special meaning in interpolated string literals. 17:43
string literals and user input are totally disjunct, aren't they?
jnthn yeah 17:44
Sounds like a mis-understanding.
masak seems like an odd point to make.
I do agree that {} in qq are totally disruptive for people who don't know about them.
but not in an injection kind of way. 17:45
jnthn aye
Kodi What on earth is going on here? gist.github.com/720279 17:46
masak Kodi: I say bug. 17:47
moritz_ Kodi: parsing bug, I'd guess
masak Kodi: historically, there have been problems with line-ending closing braces without semicolons.
moritz_ somhow it invoces &f, even though it shouldn't
masak this looks like such a case.
Kodi nods. 17:48
masak please submit a rakudobug. 17:49
Kodi Sure.
flussence regarding the {} thing: you can contort PHP into running arbitrary code inside ${} too, but nobody's up in arms about it
masak Ruby has #{}, I think.
moritz_ &{ ... } would be 6ish 17:50
masak rakudo: my $s = "OH &{ say "OH HAI" }() HAI"; say $s 17:51
p6eval rakudo : OUTPUT«OH HAI␤OH &Bool::True() HAI␤»
moritz_ rakudo: say "{}"
p6eval rakudo : OUTPUT«Nil()␤»
Kodi masak: By the way, if I find a bug, add a test for it, and fix it before anybody else mentions it (as I've done once or twice), should I submit a rakudobug for it too? 17:56
masak Kodi: I could argue both ways on that one. :) 17:58
17:58 hercynium__ joined, hercynium__ left, hercynium__ joined
masak rakudo: my $b = 99; sub r { "$b bottle{$b-1??"s"!!""} of beer" }; my $w = "on the wall"; while $b { say "&r() $w, &r()!"; --$b; say "Take one down, pass it around, &r() $w!"; say "" } 17:58
p6eval rakudo : OUTPUT«99 bottles of beer on the wall, 99 bottles of beer!␤Take one down, pass it around, 98 bottles of beer on the wall!␤␤98 bottles of beer on the wall, 98 bottles of beer!␤Take one down, pass it around, 97 bottles of beer on the wall!␤␤97 bottles of beer on the wall, 97 bottles of beer…
masak waits for jnthn's reaction. :)
rakudo: my $b = Inf; sub r { "$b bottle{$b-1??"s"!!""} of beer" }; my $w = "on the wall"; while $b { say "&r() $w, &r()!"; --$b; say "Take one down, pass it around, &r() $w!"; say "" } 17:59
p6eval rakudo : OUTPUT«(timeout)es of beer on the wall, Inf bottles of beer!␤Take one down, pass it around, Inf bottles of beer on the wall!␤␤Inf bottles of beer on the wall, Inf bottles of beer!␤Take one down, pass it around, Inf bottles of beer on the wall!␤␤Inf bottles of beer on the wall, Inf bottles…
masak heheheh.
ETIMEDOUTDRINGINGINFINITEAMOUNTSOFBEER 18:00
18:00 hercynium__ left
jnthn Infinity bottles of beer?! 18:00
:D
masak ah, there you are :)
"that's one long wall" 18:01
jnthn :P
18:02 hercynium_ left
Kodi We need a Cardinal type so we can have uncountably many bottles of beer. 18:02
jnthn Makes the pain of implementing that interpolation all worth it. :P
18:03 hercynium_ joined, hercynium_ left, hercynium_ joined
jnthn Kodi: If you drink enough bottles of beer, a finite amount becomes practically uncountable. ;-) 18:03
Not that I have personal experience of drinking that many... :-)
moritz_ of course not. 18:05
jnthn :P
18:05 hercynium__ joined
jnthn Despite really liking beer, I actually also really quite dislike being drunk, so tend to be fairly controlled. :) 18:06
Trashlord or just drink non alcoholic beer 18:07
18:07 hercynium_ left
jnthn Trashlord: It tastes like s... 18:07
:)
I'd rather drink nice beer in moderation.
Trashlord I don't have much experience with the non alcoholic brands
jnthn I had to take medication once where I couldn't have alcohol. I tried a few of them then... 18:08
...they were awful.
masak "It tastes like s..." ...soda? :) 18:09
jnthn masak: Precisely. :P
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet 18:13
tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet 18:18
jnthn nom time &
18:18 hercynium__ left, Kodi left 18:19 hercynium_ joined
tadzik good evening sixers 18:19
moritz_ moin
masak greetings and salutations, tadzik. 18:20
18:23 risou_ left, risou joined
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet 18:23
18:29 envi left
masak ooh, libgit2.github.com/ -- someone please hook Perl 6 up to this with zavolaj... :) 18:30
18:31 envi joined 18:32 hercynium left, hercynium_ is now known as hercynium, hercynium_ joined
colomon is anyone doing anything with zavolaj at the moment? 18:32
18:33 dakkar left
dalek tpfwiki: (james sdfgdf)++ | www.perlfoundation.org/perl6/index.cgi?perl_6 18:34
tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet
takadonet well we should start hacking then :)
tadzik masak: sounds like a nice evening project 18:35
18:35 envi left
colomon it would be awesome++ to have a git module available for p6 18:35
masak yes. 18:36
same with an XML module.
takadonet I would hack on it
on the git module not the XML
dukeleto are y'all talking about a p6 binding to the Git core libraries? 18:37
colomon dukeleto: no
to libgit2.github.com/ 18:38
masak got the link from Trivium++ chneukirchen.org/trivium/2010-11-28 18:43
dukeleto colomon: that is what I am talking about :)
I have been talking about that in here before 18:44
That was a google summer of code project, and now Github is paying for it to be finished
dukeleto is planning on doing Parrot bindings to libgit2
masak ooh
colomon oooooo
masak that would amount to the same thing.
dukeleto masak: yet give many more people access to it, potentially. 18:45
the gsoc_nci branch landed, so a lot more is possible with Parrot NCI
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet
dukeleto we have libffi now
libgit2 is still barely functional tho, so don't hold your breath 18:46
masak ok. 18:48
colomon is not having any luck getting the unix-fork example in zavolaj to run. 18:49
and of course, zavolaj has no tests, just examples. :\
so perhaps just getting zavolaj up to speed would be a good project.... 18:50
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet 18:51
flussence does that mean p6 can talk to any C library now? 18:53
moritz_ not quite "any" 18:54
flussence well, more than a month ago? 18:56
moritz_ iirc there are restrictions to what zavolaj can do 18:57
flussence last time I looked, it sounded as if it's restricted to what Parrot supports :/
(i.e. at compile time) 18:58
tadzik it can't look inside structs
flussence can it read them as Bufs though? 18:59
tadzik not sure
18:59 PerlJam joined, alc left
masak and so it begins :) twitter.com/ash_gti/status/9318084078739456 18:59
"We expect other languages to steal Perl 6's regex syntax, too" -- TimToady
tadzik they will, eventually
PerlJam I wished that long long ago.
19:00 muixirt joined
colomon Hmmm.... seems like we should maybe have the equivalent of zavolaj for the Parrot NCI? 19:00
masak I've been thinking of writing an nqp-rx port in either Ruby, C or Google Go.
tadzik hmm 19:01
it can be used in Parrot Languages, no?
PerlJam masak: I vote for C if you're taking suggestions :)
19:01 daxim left
masak PerlJam: I am. especially if there are reasons attached. :) 19:02
moritz_ nqp-rx ports seem to be quite the fashion today :-)
masak moritz_: for me, the objective would primarily be to gain a better understanding of nqp-rx.
PerlJam masak: speed + portability + general coolness are my only reasons.
tadzik twitter.com/quietfanatic/statuses/9...2000766976 -- that's a lie, no?
moritz_ masak: good motivation 19:03
masak Google Go seems to have speed and general coolness as well.
moritz_: that was one of the big wins with GGE. I got to learn PGE so well that I could actually predict bugs in it.
tadzik shamelessly reddits his own blag toast
masak tadzik++ 19:04
19:04 PerlPilot joined
tadzik masak: that's due to your amusement :) 19:04
www.reddit.com/r/perl/comments/edgj..._grammars/ 19:05
colomon is wishes svn had a "stash" command like git's...
masak tadzik: "awe" is the correct word here. :)
colomon *wishing, sigh
tadzik doesn't awe mean fear or something?
masak colomon: git-svn?
tadzik: it can.
tadzik: but its basic meaning is, I think, "taken aback"-edness. 19:06
colomon masak: didn't work well when I tried it, and massively inconvenient for the job at hand.
masak: guess I can just make a patch file and then revert....
masak too bad. git-svn often serves as a lifeline for me.
19:06 PerlJam left 19:07 PerlPilot left
tadzik cosimo_: ping 19:07
19:07 PerlJam joined
masak moritz_: this is still one of my favorite fallouts from the GGE project: rt.perl.org/rt3/Ticket/Display.html?id=72440 19:08
tadzik oh, we're to start with the Advent Calendar in the near future. Could anyone proofread my article?
PerlJam tadzik: sure
masak alpha: say "1ab2ab3c" ~~ /^ \d ** abc $/ ?? "OH NOES" !! "oh phew"
p6eval alpha : OUTPUT«OH NOES␤»
masak perl6: say "1ab2ab3c" ~~ /^ \d ** abc $/ ?? "OH NOES" !! "oh phew"
p6eval rakudo : OUTPUT«OH NOES␤»
..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤ unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.16/blib6/pugs/perl5/lib';␤ eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** '<HANDLE>' trapped by operat…
masak nqp-rx still suffers from this bug, it seems. 19:09
19:09 nero__ left
dukeleto tadzik: 'awe' used to mean that, but has turned around to have a positive connotation in the last few hundred years 19:10
jnthn rakudo: say "1ab2ab3c" ~~ /^ \d ** abc $/ ?? "OH NOES" !! "oh phew"
p6eval rakudo : OUTPUT«OH NOES␤»
masak should use ?? !! and "OH NOES" more often in bug reports :) 19:11
jnthn rakudo: say "1ab2ab3c" ~~ /^ \d ** abc $/
p6eval rakudo : OUTPUT«1ab2ab3c␤»
jnthn rakudo: say "1ab2ab3c" ~~ /^ \d ** [abc] $/
p6eval rakudo : OUTPUT«␤»
jnthn rakudo: say "1ab2ab3c" ~~ /^ \d ** a $/
p6eval rakudo : OUTPUT«␤»
masak rakudo: say "1ab2ab3c" ~~ /^ \d ** [ab] $/ 19:12
p6eval rakudo : OUTPUT«␤»
masak hm.
jnthn (just trying to work out what it's doing)
masak jnthn: it's in the RT ticket.
jnthn I suspect looking at the PAST tree could be revealing...
Oh, OK
19:13 PerlPilot joined
colomon rakudo: say "1ab2ab3c" ~~ /^ \d ** 'abc' $/ 19:13
p6eval rakudo : OUTPUT«␤»
masak rakudo: say "1ab2ab3c" ~~ /^ \d ** [ab] / 19:14
p6eval rakudo : OUTPUT«1ab2ab3␤»
masak it works without the $
wonder what that's about.
tadzik awe is like "WOAH!"?
masak oh wait.
rakudo: say "1ab2ab3" ~~ /^ \d ** [ab] $/
p6eval rakudo : OUTPUT«1ab2ab3␤»
masak oh, of course. 19:15
rakudo: say "1ab2ab3c" ~~ /^ \d ** [ab] c $/
colomon please to explain?
p6eval rakudo : OUTPUT«1ab2ab3c␤»
masak rakudo: say "1ab2ab3c" ~~ /^ \d ** abc $/
p6eval rakudo : OUTPUT«1ab2ab3c␤»
masak colomon: see rt.perl.org/rt3/Ticket/Display.html?id=72440 :)
19:16 PerlJam left
masak people, help me with this one: twitter.com/JoeCannatti/status/9324306970451968 19:16
it's wonderful to get such tweets.
what's the number one things I should throw at him? 19:17
he wants to be awed :)
advent calendar? book?
something else?
tadzik hmm 19:18
advent calendar is nice. Or moritz's Perl 5 to 6, if he's a Fiver
masak not sure he is.
tadzik anyway, a "Cool Perl 6" blog or series is a nice thing to have
for such folks
moritz_ or point him to a working, nice grammar 19:19
tadzik . o O ( perl6isawesome.wordpress.com )
masak tadzik: :)
tadzik it could be an aggregator, or just publically writable blag where we could post some Awe-making things
with an educational value. Who's with me?
sorear good * #perl6 19:20
tadzik good * sorear
masak recommends p6advent, p5->p6, book, and the setting
dalek ecza: 0303fed | sorear++ | v6/tryfile:
Do a bit of CSE in STD.ws
ecza: bf85a66 | sorear++ | / (2 files):
merge back .suppose fix
masak shopping & 19:22
tadzik the setting?
masak src/core 19:23
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet 19:29
tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index...._io_tablet
19:31 thelazydeveloper left 19:37 risou left
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet 19:39
19:40 rainerschuster joined
TimToady rosettacode.org/wiki/Category:Perl_6 is also a good place to point people if you don't know what language they're coming from 19:48
.oO(The main difference between Perl 5 and Perl 6 is that when you golf Perl 6, it usually gets *more* readable.)
19:51
colomon TimToady++ 19:52
cosimo_ tadzik: still there? 19:58
tadzik cosimo_: yeah 19:59
Facter doesn't work for me
cosimo_ tadzik: doesn't work as in? 20:00
make test?
20:03 alester joined
dalek : 0808670 | duff++ | misc/perl6advent-2010/topic-brainstorming:
Add some topics of my own
20:05
20:06 Hor|zon joined
masak points the gentletwitterer to rosettacode.org/wiki/Category:Perl_6 20:07
tadzik cosimo: e.g.
cosimo: wklej.org/id/428495/ 20:08
masak nom & 20:18
20:18 masak left 20:21 XaRDaX joined 20:33 plainhao left
hercynium rakudo: 10.2 - 10.1 20:33
p6eval rakudo : ( no output )
hercynium rakudo: say 10.2 - 10.1
p6eval rakudo : OUTPUT«0.1␤»
hercynium \o/ 20:34
(was just curious about something)
jnthn
.oO( 3 years of compiler development and people are curious whether it can do basic arithmetic correctly yet... ;-) )
20:35
moritz_ a valid question 20:36
muixirt rakudo: say 43**3 20:37
p6eval rakudo : OUTPUT«79507␤»
muixirt hmm, what does this preciely do? perl6 -e 'say 43**3' 20:40
hercynium on #perl someone was having an issue with that exact calculation on Perl5 and I wanted to let them know Perl6 handles such vagaries correctly :)
jnthn hercynium: Oh...floating point fun? :) 20:41
BinGOs meh.
hercynium yep
jnthn heh :)
sorear Is mentioneing Perl6 on #perl a kicking offense?
+n't
diakopter doubts it
hercynium possibly :)
BinGOs where did that notion come from ? 20:42
diakopter (but I wouldn't test it, b/c the attitude of "testing it" would be detected and be a kicking offense)
diakopter doesn't know
BinGOs Doubt it, as I appear to be the only active op currently.
colomon rakudo: say 10.2.Num - 10.1.Num 20:48
p6eval rakudo : OUTPUT«0.0999999999999996␤»
colomon ooooo
sorear rakudo: say 10.2e0 - 10.1e0 20:49
p6eval rakudo : OUTPUT«0.0999999999999996␤»
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet 20:50
tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet 20:56
21:02 nadim_ left 21:11 fhelmberger left 21:15 ggoebel left
muixirt in a directory with a file named HLL.pir in it perl6 refuses to work, why exactly? 21:16
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet 21:18
sorear muixirt: trac.parrot.org/parrot/ticket/1589
21:22 alester left
muixirt sorear: sorry for coming up with an old issue 21:23
sorear it's not your fault they haven't gotten tuits to fix it 21:24
muixirt quite a lot files to avoid 21:25
sorear is p6a moderated? 21:33
moritz_ yes 21:35
well
all p6. lists are anti-spam moderated
which means that the first of your mails to that list waits for human approval 21:36
sorear I guess it's because I haven't posted to p6a before
diakopter has forgotten what p6a is 21:38
moritz_ perl6-announce
21:38 TypeNameHere____ left 21:41 nadim_ joined, zostay joined 21:43 Guest27466 joined 21:46 am0c left 21:52 ash_ joined
cosimo tadzik: mmh 21:53
weird 21:55
ash_ rakudo: token foo { 'ab' }; say 'ab' ~~ /<ab>/; 21:56
p6eval rakudo : OUTPUT«Useless declaration of has-scoped token in a module; add our or my to install it in the lexpad or namespace␤Method 'ab' not found for invocant of class 'Cursor'␤ in <anon> at line 22:/tmp/bKhh90OvG8␤ in 'Cool::match' at line 2509:CORE.setting␤ in 'Regex::ACCEPTS' at line 6016:CO…
ash_ what am i doing wrong there? i thought thats how you were supposed to do that, but i guess not?
jnthn rakudo: my token foo { 'ab' }; say 'ab' ~~ /<&ab>/; 21:58
p6eval rakudo : OUTPUT«Could not find sub &ab␤ in <anon> at line 22:/tmp/stEnl7B0U8␤ in 'Cool::match' at line 2509:CORE.setting␤ in 'Regex::ACCEPTS' at line 6016:CORE.setting␤ in main program body at line 22:/tmp/stEnl7B0U8␤»
jnthn rakudo: my token foo { 'ab' }; say 'ab' ~~ /<&foo>/; # even :)
p6eval rakudo : OUTPUT«ab␤»
jnthn ash_: They're methods so has-scoped by default. 21:59
ash_ ah, there you go
hmm, got ya
PerlPilot jnthn: but only for named tokens, rules, and regex
22:00 am0c joined
jnthn PerlPilot: Well, yes, if there's no name, it wont be installed anywhere. :) 22:01
That's symmetric with anon methods too though.
22:01 PerlPilot left
ash_ LTM is confusing me... 22:01
22:01 PerlJam joined
ash_ rakudo: say 'abcd' ~~ / 'ab' | 'abcd' /; 22:02
p6eval rakudo : OUTPUT«ab␤»
ash_ why doesn't that match 'abcd' ?
isn't abcd longest?
PerlJam | isn't implemented properly yet
it's the same as || now
ash_ ah
pugs: say 'abcd' ~~ /ab|abcd/; 22:03
p6eval pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤ unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.16/blib6/pugs/perl5/lib';␤ eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** '<HANDLE>' trapped by operat…
ash_ hmm
is pugs broken?
pugs: say 1
p6eval pugs: OUTPUT«1␤»
ash_ nope, guess it just doesn't like my regex
but, if things were implemented fully 'abcd' ~~ /ab|abcd/ would match abcd? 22:04
jnthn Yes 22:05
ash_ S05-metasyntax/longest-alternative.t is wrong btw, it does token foo { }; without my/has and doesn't use &
does the regex engine generate a DNF currently? 22:07
PerlJam generate a Duke Nukem Forever? :-) 22:08
ash_ would be awesome
en.wikipedia.org/wiki/Deterministic..._automaton 22:09
PerlJam that would be a DFA
(as opposed to an NFA)
ash_ oops, lol my bad
dalek ecza: 6cd5303 | sorear++ | v6/README:
[v6] Add a tiny README
22:10
ecza: 3f34bbc | sorear++ | / (7 files):
Overhaul storage of simple boxed values

my $x = 5; now allocates 12 words between 2 objects instead of 20 words between 4 objects. If you want to ignore the 6 word, 1 object overhead of the container it's even bigger.
sorear niecza: say "abcd" ~~ /ab|abcd/; # ash_
p6eval niecza bf85a66: OUTPUT«␤»
sorear hmm
niecza: say $( "abcd" ~~ /ab|abcd/ )
p6eval niecza bf85a66: OUTPUT«abcd␤» 22:11
ash_ neat, sorear++
sorear my ~~ returns a list of the positional captures, so that my ($a, $b) = "ab" ~~ /(.)(.)/; will work
/ab|abcd/ has no positional captures, so it returns nothing in list context
which is what say() provides 22:12
ash_ rakudo: my ($a, $b) = "ab" ~~ /(.)(.)/; #wonder what rakudo does here...
p6eval rakudo : ( no output )
ash_ err
my ($a, $b) = "ab" ~~ /(.)(.)/; say $a, $b;
rakudo: my ($a, $b) = "ab" ~~ /(.)(.)/; say $a, $b; 22:13
sorear ash_: Perl 6 regexes are based on PEGs, not DFAs
p6eval rakudo : OUTPUT«abAny()␤»
sorear Perl 6 might provide a DFA/NFA engine, but it won't be accessed using unrestricted regex syntax
TimToady: ping 22:15
ash_ hmmm i would of figured a DFA was an efficient way of implementing a regex, but i am not exactly sure how PEG's relate to DFA/NFA's
arnsholt ash_: Remember that Perl 6 regexes are more powerful than regular expressions 22:21
IIRC PEG grammars are a superset of context-free grammars
Which is simply impossible to handle using FSAs
ash_ why? which functionality is out of the capabilities of FSA? 22:23
or rather, why can't a PEG be expressed in terms of FSA
TimToady matching $0, for instance
sorear: pong
ash_ $0 as in the first capture? 22:25
TimToady PEG is agnostic to the rules by which it disambiguates; Perl 6 happens to use LTM as one of its criterion, and defines the declarative head of an expression such that it can generally be done with FSA if you choose to implement it that way
nod
various things (defined in S05) kick you out of declarative mode into procedural mode, and matching $0 is one of those
the hope is that the transition from declarative to procedural can largely be managed transparently to the user's concerns 22:26
22:26 ch3ck3r joined
TimToady though you can always use a closure or :: to force procedural 22:26
sorear TimToady: #1 - a match like if $foo ~~ /a.*b.*c/ { } could be done entirely using a FSA, if $/ can be proven unused and the match is in an obvious boolean context. Is this an optimization we want to make or should there be a different interface? I don't like fragile optimizations 22:30
22:30 ch3ck left
sorear TimToady: #2 - say "foo" ~~ /oo/ # No output, because /oo/ has no positional captures and thus the match returns nothing in list context. Correct? 22:30
TimToady: #3 - 22:31
perl6: my $f = sub ($x) { say "One" }; $f($f = sub ($x) { say "Two" });
p6eval pugs: OUTPUT«One␤»
..rakudo : OUTPUT«Two␤»
ash_ lol 22:32
thats pretty odd
22:32 wamba left
ash_ but i guess the difference is when the assignment happens (before or after the invocation) 22:32
TimToady #3 is probably just Undefined Behavior 22:33
ash_ does precedence factor into order of operations? 22:34
TimToady not there
#2 could arguably return the whole match in that case 22:35
currently unspecced though
on #1, the question is not whether to use FSA (we might do that there in any case), but whether to do the extra work to build a generic $/ 22:37
so the interesting question is how much we can determine that $/ is unwanted 22:38
ash_ can you determine that? or should the programmer say its unwanted somehow? 22:40
sorear If /a.*b/ is matched with a DFA, then we need to rematch it with a PEG when $/.to is accessed 22:41
TimToady most DFAs can tell you the .to already
sorear Which is worse than just using the PEG to begin with 22:42
Maybe .from would have been better, huh
TimToady depends on whether you're relying on an outer scanner to find the 'a' 22:43
which can often run faster than a DFA if it's BMable 22:44
(no help with a single char like 'a' though)
sorear aaaa BM I need to learn so much more about regex theory 22:45
TimToady ((outside of a pre-studied string with an inverted index into character locations)
sorear not to be confused with regular expression theory
how does study work?
TimToady just that, it builds a linked list of all the 'a's, all the 'b's, etc 22:46
then it looks for the rarest letter in the search string, 'k', say, and only looks in those locations
where rarest is assuming some language skew such as English
I suppose one could do a dynamic calculation to pick the shortest linked list 22:47
the overhead of that might amortize well over a longer string 22:48
but study really only helps if you're going to search the same string many times
otherwise inverting the index doesn't get you anything
BM is worth using on a one-shot string, though 22:49
unless you're searching for something like 'aaaaaa'
well, maybe it can help there too 22:50
ash_ what do you mean by BM? 22:51
google is failing me there
TimToady since mismatching an 'a' lets you advance 6 chars, if you're willing to back up 5 on first 'a' that actually does match
otoh, how this interacts with NFG will be an "interesting" subject 22:52
or even NFC
(with utf-8 we usually do BM is byte-oriented anyway)
s/is/as/
diakopter ash_: Boyer-Moore 22:54
TimToady one of the reasons Perl 5 can do a lot of scanning rapidly is that it often uses Boyer-Moore (or variants) to avoid calling the regex engine at all 22:55
ash_ okay, thanks, i'll see if i can find more info on that 22:56
flussence I remember reading something about grep that mentioned that...
supposedly they use all kinds of bizarre tricks in that program for the sake of speed 22:57
ash_ i have always wondered how some perl string things are so fast, like ack being able to parse a large number of files and find a simple string very effectively, its always amazing to me how quickly that returns 22:58
TimToady even when only the first character is known, it still scans outside the regex engine
that would mostly be the fault of BM
the longer the search term, the more benefit you get from it
sorear right now niecza only has a PEG engine. I need to understand stuff better in order to usefully fix this 22:59
PEG suffices for grammars, but STD has some tests like in getsig, $name ~~ /^(\$|\@|\&|\%)\:\w/ 23:00
that regex is incredibly slow atm 23:01
23:03 dju left 23:04 dju joined 23:06 XaRDaX left
TimToady nap& 23:08
23:12 flatwhatson joined 23:19 _kaare left 23:21 whiteknight joined 23:22 masak joined
masak ahojte! 23:22
blog post! strangelyconsistent.org/blog/novemb...resolution
sjohnson don ahojte 23:23
masak yep. I'm done tilting windmills for the night. 23:24
sorear hello masak! 23:25
masak someone gives chromatic's "Modern Perl" book low grades because it doesn't have any Perl 6 in it: twitter.com/chromatic_x/status/9340263218552832
23:25 hercynium left
masak sorear: hi! congrats on the release! 23:25
sorear++
dalek ast: 4cb303e | (Kodi Arfer)++ | S04-statements/terminator.t:
[S04-statements/terminator.t] Added a test for RT #79964.
23:26
sjohnson cool
masak rakudo.org down: downforeveryoneorjustme.com/http://rakudo.org/ 23:29
sorear I need to figure out releases in general 23:31
Tene masak: four-colour theorem is that no more than four will be required. That's not really relevant for that image... 23:32
masak Tene: it was a (weak) attempt at humor.
Tene masak: Ah. Sorry. I've got my humour process stopped today to free up ram. 23:33
masak :)
Tene: happy news, though: 'make test' in Web.pm only turns up two unexpectedly passing TODO tests. 23:34
Tene masak: That's great to hear.
masak the rest of the failing tests have been tucked away beneath todo or skip annotations.
Tene You're making a branch to start migration to master, then?
masak nah, I'm doing the last bit of stuff required to wrap up the grant. 23:35
THEN I'm making the branch :)
feel free to make a branch before that, if you like.
23:36 muixirt left
masak by the way, am I the first person to notice the totally brain-dead API of Test.pm? 'multi sub todo($reason, $count)' but 'multi sub skip($count, $reason)'. wtf? 23:36
I volunteer to simultaneously fix the whole spectest suite and Test.pm to make that brain damage go away.
sorear Test.pm is pretty brain dead in general
masak and the fudge machine. 23:37
sorear I say, don't use anything but plan(Int) and ok(Bool,Str)
masak I think Test.pm could benefit from a wee bit of committee design.
just a tiny bit.
sorear Test.pm is four mutually incompatible modules with the same name, all loosely based on Perl 5's Test::More 23:38
masak sorear: but that (using just those two subs) is clearly a personal guideline of yours, and not a recommendation from the people who co-wrote Test.pm :)
sorear I wrote one of the four! 23:39
masak I like the idea of Perl 6 providing a bit more than Perl 5. but I don't like when the extra bits are brain-damaged.
maybe it's time to standardize Test.pm, then.
sorear &todo and &skip aren't extra bits
masak if it's in the spec, we *have* to do it right, no?
sorear yes
standardizing Test would be a good idea 23:40
ash_ it would be nice to have a standardized Test
masak the leader of such a project would have to be utterly sane, free of corruption, and a sincere, humble character. I nominate myself. 23:41
:P
ash_ seconded
sorear I second masak
masak wow.
ash_ skip 5, "they don't parse yet" vs skip "they don't parse yet", 5; 23:42
masak :(
ash_ todo "they don't parse yet", 5; vs todo 5, "they don't parse yet"
23:42 sftp left
ash_ those seem very ambiguous to me 23:42
23:42 risou joined
masak I must confess that the Int-first forms are obvious to me. 23:42
skip $n, $reason? 23:43
todo $n, $reason?
ash_ skip *, "i don't wana tell you"
masak that's not a real use case, sorry :)
ash_ you can't skip whatever?
masak see "utterly sane" above :P
sorear I'd like an API that can be implemented with very few implementation features 23:44
masak well, it could mean Inf or something, I guess.
sorear: yes, that's a good goal.
sorear no object oriented nonsense
ash_ what if it meant, skip until one passes, then pick it backup?
masak sorear: right.
sorear: which basically means globals or dynamic vars instead.
sorear: which do you prefer?
ash_ plan, is, okay, skip, todo?
Hor|zon no OO does mean globals lol 23:45
sorear masak: for what are you thinking of using dynamic vars?
masak ash_: &skip means "don't run". it is accompanied by commented-out code.
sorear: for the state implicitly carried around in Test.pm
Hor|zon not*
masak sorear: number of tests passed/run so far, number of tests to skip, etc. 23:46
sorear masak: I'd prefer to spec an API - people trying to boostrap very restrictive environments will have to rewrite Test.pm anyway
masak ash_: so "until one passes" doesn't work, since the commented-out tests never run.
sorear: agreed. 23:47
ash_ $*tests-passed; $*tests-skipped; $*tests-run; $*tests-failed; # redundant, but lets you not have to re-calc
sorear it'd be better if there were no exported globals
we could have a get_tests_passed
masak no need for exported globals as far as I can see.
23:47 rainerschuster left
masak sorear: yes, but why? 23:48
ash_ masak: makes sense, i was thinking of a function that told the next N tests to just not report success/failure, not commenting them out
masak ash_: right. &todo does something like that. 23:49
ash_: it still reports "ok"/"not ok", but it also adds a '# TODO' comment.
ash_: that way, the harness knows which ones were expected fails and which ones were unexpected successes.
all these things are (I guess) part of TAP and not to be tampered with. 23:50
sorear masak: Test::More lets you instantiate a local Test::Builder object for running nested test suites
that's hard to do if the API specs direct access to globals
also, exporting variables is a feature that we don't need to depend on
masak right. but why would the API spec direct access to its globals? 23:51
I think I'm missing something more basic here.
isn't Test.pm basically a state machine that can keep all its state hidden?
sorear masak: Sorry, I thought you were proposing direct global access
masak no, and you already convinced me that we should stay out of deciding how the internal state is to be done. 23:52
that's up to the implementor; the spec's job is to provide a sane API.
sorear I need to go soon - it would be a very good idea to get Schwern and/or ingy involved in this
masak indeed.
single comment on tadzik++'s proggit thread is disappointing: www.reddit.com/r/perl/comments/edgj..._grammars/ 23:54
ash_ nifty article, i missed it earlier 23:57
masak I was figuratively blown away by it.