Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-07-03

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:00 fglock for/if/sub/method/class/...
00:00 nothingmuch okay
00:00 ingy hola
00:00 nothingmuch that sounds pretty consistent with what I have
00:00 ingy hi audreyt
00:00 nothingmuch hi ingy
00:00 fglock ... block/expression
00:01 ingy hi nuffin
00:01 fglock hi ingy
00:01 clkao ingy: you've done the generator
00:01 clkao ?
00:02 nothingmuch ingy: clkao was pointing me at ACME::Goto::Line but he knows NOTHING
00:02 nothingmuch RIGHT CLKAO?!
00:02 clkao_ ya
00:02 bsb joined perl6
00:02 fglock and these nodes can have other nodes inside (that's it, mostly) - sub declarations are a bit complex because of the attributes, etc
00:02 nothingmuch hola bsb
00:02 bsb hey nothingmuch
00:02 lumi Hi bsb
00:03 bsb hi lumi
00:03 ingy hi fglock
00:04 fglock hi bsb
00:04 fglock hi lumi
00:04 nothingmuch hi fglock
00:04 nothingmuch hi lumi
00:04 nothingmuch hi ingy
00:07 ingy hi clkao
00:09 fglock so there is nothingmuch in the v6.pm syntax tree
00:10 frederico joined perl6
00:14 nothingmuch fglock: i'm going to dive into v6
00:14 nothingmuch give me 10 mins
00:14 nothingmuch but a friend of mine is having a nervous breakdown on MSN, and i'm on the receiving end, so my latency will be bad
00:14 ingy haha
00:14 fglock ok - maybe a possible path is progressive migration
00:14 fglock k
00:14 ingy is that friend me?
00:17 nothingmuch fglock: yes, i'm for it
00:17 nothingmuch ingy: no
00:17 nothingmuch you are just having a code breakdown
00:17 audreyt nothingmuch++
00:19 hikozaemon joined perl6
00:21 clkao nothingmuch: you can dive to v6 with me as well
00:21 nothingmuch clkao: okay
00:22 nothingmuch i'll tak e you up on that once i'm done having my conversation
00:27 tup joined perl6
00:35 ludan joined perl6
00:35 stevan joined perl6
00:37 fglock clkao: svk is working now
00:37 ludan hi
00:37 stevan good-m??se all
00:37 ludan clkao: how are you? do you remember me? we met in Pisa
00:37 ingy hi stevan
00:37 stevan hullo ingy
00:37 * stevan is very tired from 12 hours of travel,.. half of which was improvised
00:38 clkao_ fglock: you might want to have a mirror for the last 100 revisions only
00:38 clkao ludan!!
00:38 ludan :D
00:38 ludan clkao: how is going?
00:39 clkao ludan: ok, hackathon'ing
00:39 ingy audreyt: ping
00:39 ludan clkao: i'm in the netherlands now
00:39 clkao oh
00:39 ludan are you always in London?
00:40 audreyt pong
00:40 * ingy will add .xxxc support to M::C on the plane
00:40 ingy audreyt: did you get my msg?
00:41 ludan i've to go to sleep now...read you tomorrow guys
00:41 ludan bye
00:42 ludan left perl6
00:43 fglock ingy: can M::C touch the pmc file when Makefile.PL runs, so that we can distribute precompiled pmc?
00:43 audreyt that's what pmc_support does in M::I
00:43 ingy fglock: it does
00:44 ingy fglock: see orz.pm
00:44 fglock ok!
00:44 * ingy catches flight
00:48 gaal audreyt: is Noop and Exp or a Stmt? (or both?)
00:48 audreyt Exp
00:48 audreyt anything that can happen at rhs of assignment
00:48 audreyt is exp
00:49 gaal so ($x, undef, $z) = @blurp has a noop in the tree?
00:49 audreyt it's illegal
00:49 audreyt ($x, *, $z) = @blurp
00:49 audreyt is it
00:49 gaal ok
00:50 nothingmuch clkao: ping-ish after zev
00:51 gaal hm. where does old Exp's Prim go now?
00:52 gaal and parse error (NonTerm), can that stay Exp?
00:53 audreyt NonTerm is no longer used.
00:53 audreyt Prim... is interesting
00:53 audreyt thinking
00:54 audreyt probably still needs to be there
00:54 audreyt probably
00:56 clkao nothingmuch: after i cool down my laptop and myself
01:00 ajs_home joined perl6
01:02 gaal is label really Indetifier or can it be Maybe Identifier?
01:03 audreyt an empty label?
01:04 audreyt Set Identifier ?
01:04 audreyt Maybe Identifier?
01:04 audreyt I think Maybe is it. maybe.
01:05 gaal Set makes no sense to me? But the other two both work. since we don't patmatch against it a lot I thought Maybe can make more formal sense
01:06 gaal .oO( Indentifier? Attack of the tab keys )
01:06 audreyt Identifier means we'll use "null" as Nothing
01:06 audreyt formal is fine. let's do that.
01:07 gaal k
01:10 svnbot6 r11080 | fglock++ | px/fglock/v6.pm - fixed t\03-equal.t
01:10 audreyt whew
01:10 * audreyt is done with Jifty for the day
01:10 audreyt however it's also rather late now :/
01:11 * audreyt decides to 1)shower 2)sleep and resume pugshacking tomorrow
01:12 obra sounds sane
01:12 obra though it's not That late
01:12 obra ;)
01:16 rw-rw-r-- pugshacking sounds really dirty out of context...
01:20 audreyt true.
01:21 mdiep__ joined perl6
01:21 scook0 joined perl6
01:21 audreyt fglock: try your grant again at TPF?
01:22 fglock audreyt: sure
01:27 weinig is now known as weinig|sleep
01:48 nothingmuch clkao: ping
01:49 clkao nothingmuch: pong
01:49 nothingmuch v6
01:49 nothingmuch ??
01:49 nothingmuch meh
01:49 nothingmuch i'm not that restless, i just can't type
01:50 fglock uh?
01:51 amnesiac joined perl6
01:51 nothingmuch fglock: hu
01:56 gaal audreyt: we forgot Param traits (is rw etc.). data ParamTrait = TraitRW | TraitCopy | {- other common ones -} | TraitSimple Identifier | TraitArg Identifier [Value]
01:56 gaal ?
01:56 * nothingmuch looks at clkao  in an insulted manner
01:56 * nothingmuch begs for attention
01:57 * gaal looks at nothingmuch in a mooselike manner
01:57 audreyt gaal: sounds good.
01:59 gaal elkcellent.
02:02 bsb Is sprintf still around in p6?  or has it been rethunk somehow?
02:03 gaal hmm. likewise code traits, but should those be on a SimpleCode or on named code nodes?
02:03 gaal hey bsb. I think it's still in but you can also do $smth.as()
02:05 bsb I've been having to look at Python, and they have % as a sprintf like operator
02:05 audreyt bsb: it's .as()
02:05 audreyt but sprintf is still there
02:05 bsb and they have named params to formatting
02:06 bsb "%(name)02s" or something
02:06 bsb thought there might be a capture <-> sprintf synergy
02:06 bsb which Syn has .as()?
02:07 bsb .. s02
02:27 gaal do subroutine PRE and POST blocks receive arguments?
02:28 gaal (I'm presuming they do not)
02:30 TreyHarris gaal: they had better, if they're going to fulfill the DBC stuff that I thought was their raison d'etre.
02:30 TreyHarris if you're talking about can they see the subroutine's arguments
02:31 gaal hm. so implicitly same signaure as the do block?
02:32 gaal (the "do" block is the main sub part)
02:32 TreyHarris yes, i would assume so.  in DBC, PRE is supposed to be used to set preconditions that must be met for the sub to work correctly, and POST expresses postconditions that must be met for the sub to successfully complete.  they may both be keyed to the arguments, but they shouldn't get anything apart from what the do block gets
02:33 TreyHarris (the idea being that in DBC you don't have to read the subroutine to ensure you're meeting the API, just look at the pres and posts.  it's also assumed that in production, you may turn pres and posts off for performance, they're not supposed to have side-effects.)
02:34 gaal ...which leads me to wonder whether they are not represented internally as traits at all but rather as fields in a Code data type
02:34 gaal TreyHarris: yes, you're making sense to me
02:34 TreyHarris gaal: is that a polite way of saying, "i've got it already, now shut up"? :-)
02:35 gaal well, if I were *polite* I'd say thanks
02:35 gaal ...thanks!
02:35 TreyHarris hee
02:38 TreyHarris the only weird thing about DBC preconditions and postconditions is that both are stacked from most derived to least derived method, but pre's are OR'd together, and posts are AND'd together.  the idea being that if the precondition of Dog::praise is "have food ready", the precondition of Labrador::eat must allow you to obtain simply by having food ready, but it might also let you "have a hand ready to pet with"
02:40 TreyHarris in other words, in pure DBC, while you may decide whether a subclassed method calls its supermethod or not, you cannot choose to avoid calling your superclassed pre- and postconditions.  dunno if Larry wants to relax that requirement though.
02:40 gaal should precendence and associativity be represented just as Yet Another Typed Trait on code? I'm not sure if traits should be [CodeTrait] or a map; some seem to accept multiple values, some none.
02:41 TreyHarris gaal: i'm not sure i understand the implications of either choice.
02:42 gaal the first gives flexibility and possibly poor performance and somewhat clumsy code.
02:42 reZo joined perl6
02:42 gaal background, we're refactoring the pugs AST.
02:43 gaal my question was primarily aimed at audreyt but apparently she's sleeping already
02:44 gaal (though I haven't seen evidence to that effect)
02:45 TreyHarris she just sent mail to p6-l
02:46 TreyHarris so jump up and down and wave, she might see you :-)
02:47 gaal Ah, so there is evidence she's asleep. There you go :)
02:47 TreyHarris ah, coding is her waking activity and emailing is her sleeping one?
02:48 audreyt gaal: prec is best stored as a rational number
02:48 audreyt fixity is enumerated
02:48 gaal not exactly... but we're used to seeing her after she sleeps.
02:48 gaal hi audreyt
02:49 audreyt hi, and btw I'm sleeping :)
02:49 miyagawa lol
02:49 audreyt gaal: Code should admit fixity and prec and explicit fields
02:49 gaal audreyt: but how is the traitbad stored?
02:49 audreyt the idea is all typed info we get on compile time
02:49 audreyt we use distinct fields
02:49 audreyt to make casing easier
02:50 audreyt and all the usertags we just lump together in a set or map
02:50 gaal s/d/g/
02:50 audreyt I'd say just a Map really
02:50 audreyt Map Identifier Val
02:50 audreyt Map Ident Val
02:50 gaal (renamed to Ident)
02:50 gaal hah
02:51 nothingmuch .'ןמ13
02:51 * audreyt dreams that she is "audreyt" on freenode and IRC'ing on #perl6
02:51 gaal nothingmuch: מוס
02:51 audreyt kinda like Zhuang-Zhou and the butterfly
02:51 nothingmuch מוס
02:52 obra audreyt: can you also dream that p6 is done
02:52 obra ?
02:52 robkinyon joined perl6
02:53 * gaal is getting kinda sleepy too... more hacking tomorrow I guess
02:53 * gaal dreams of lucid dreams
02:54 obra  tomorrow, we'll hack from $office
03:00 lisppaste3 joined perl6
03:00 audreyt obra: p6 will be done when I wake up from it :)
03:19 svnbot6 r11081 | cmarcelo++ | * HsJudy minor tweaks: pjerr don't need to be IO type, new
03:19 svnbot6 r11081 | cmarcelo++ | test program.
03:21 obra audreyt: :)
03:22 audreyt gaal: can I safely turn off my computer?
03:25 clkao_ audreyt: ;)
03:32 gaal audreyt: I'll log out
03:32 gaal done
03:36 audreyt :) &
03:59 svnbot6 r11082 | fglock++ | px/fglock/v6 - passes 15/22 test files
04:02 clkao_ fglock++
04:26 fglock left perl6
04:36 nothingmuch kolibrie: i screwed up and only remember the picture after we turned in our keyes
04:36 nothingmuch nothingmuch--
04:50 clkao_ please do not karma yourself
04:50 xern joined perl6
04:52 shachaf joined perl6
05:41 nothingmuch joined perl6
05:43 nothingmuch joined perl6
05:48 DebolazX joined perl6
06:11 Aankhen`` joined perl6
06:11 svnbot6 r11084 | cmarcelo++ |  r11098@roma:  cmarcelo | 2006-07-03 03:05:46 -0300
06:11 svnbot6 r11084 | cmarcelo++ |  * HsJudy: build elems, keys, toList and map on top of a single
06:11 svnbot6 r11084 | cmarcelo++ |  map_ function which properly iterates in the Judy type.
06:12 iblechbot joined perl6
06:15 cmarcelo joined perl6
06:20 cmarcelo how do you people push changes from a local branch to a mirror in svk? I did with "svk push" and was expecting $EDITOR open up but it didnt.. =P
06:30 Entonian joined perl6
06:32 bsb cmarcelo: there is a way, I forget it.  see: svk help sm
06:33 clkao svk sm -fl
06:34 cmarcelo tks
07:03 ingy hola
07:16 ingy audreyt: I put a new Module::Compile on CPAN
07:16 ingy audreyt: and a new Compile::Generators
07:16 ingy audreyt: the M::C handles non-module files
07:17 ingy audreyt: so adjust v6.pm accordingly
07:17 ingy audreyt: I can try to adjust it, but pugs was failing to build last time I tried
07:28 elmex joined perl6
07:41 shachaf joined perl6
07:45 cmarcelo left perl6
07:54 kanru joined perl6
07:57 * ingy give up on making Pugs::Compile::Perl6 pass tests
08:04 drrho joined perl6
08:42 mdiep___ joined perl6
08:44 shachaf joined perl6
08:51 jiing joined perl6
09:09 kanru joined perl6
09:24 shachaf_ joined perl6
09:26 buetow joined perl6
09:42 froh-doh joined perl6
09:48 meppl guten morgen
10:15 Aankh|Clone joined perl6
10:30 rashakil joined perl6
11:07 mj41_ joined perl6
11:12 Debolaz joined perl6
11:17 shachaf joined perl6
11:29 chris2 joined perl6
11:37 szbalint joined perl6
11:45 audreyt ingy: you don't have to build pugs
11:45 audreyt ingy: just adjust in perl5/Pugs-Compiler-Perl6
11:46 nothingmuch morning
11:47 Bleadof joined perl6
11:48 audreyt my room's AC drops to 70F automagically at night
11:48 audreyt so I was frozen awake again (for 6 days consecutively)
11:48 audreyt trying to get some more sleep now
11:51 nothingmuch audreyt: i woke up from cold + nightmare (
11:51 nothingmuch Data::Bind::Compile(
11:51 audreyt v6 already do D::B::C
11:51 audreyt wouldn't hurt to abstract it out a bit into its own layer though
11:51 nothingmuch if you have nothing to cook yousrelf with my sleeping bag made sleeping very hard for me in the last week
11:51 audreyt that way Perl6::Subs can use it
11:52 nothingmuch i guess Per6::Subs should M::C and use D::B
11:52 shachaf joined perl6
11:52 audreyt chip gave me P6::Subs comaint
11:52 audreyt so I'm thinking about releasing it as a Module::Compile subclass
11:52 nothingmuch okay =)
11:53 nothingmuch (re sleeping bag: it was too warm)
11:54 audreyt too /warm/?
11:54 nothingmuch yes
11:54 nothingmuch that was my problem despite crazy AC
11:54 * audreyt is green with envy and purple with frozeness
11:55 nothingmuch you can prolly use it as a blanket
11:55 nothingmuch i can bring it up for you
11:55 audreyt that sounds good
11:55 audreyt &
11:57 * nothingmuch waits for everyone to wake up
12:05 mauke_ joined perl6
12:06 shachaf_ joined perl6
12:14 Limbic_Region joined perl6
12:20 mauke_ is now known as mauke
12:31 * gaal meows
12:37 weinig|sleep is now known as weinig
12:43 visq gaal: hello !  you et.al. started refactoring the Haskell implementation ?
12:48 vytautas joined perl6
12:48 gaal visq: yes, but the first commit won't be for a while
12:49 visq I browsed the Haskell source for a while (ghci rocks)
12:49 gaal the refactoring target is not everything in the implementation -- just the AST, but that does imply some futher changes.
12:49 nova-alpha joined perl6
12:49 gaal yes it does
12:50 visq The implementation of Numeric.hs seems to need some changes, though
12:50 gaal also ctags
12:50 nova-alpha is now known as alpha
12:50 visq Integer.isa(Rat).isa(Num) for example; especially coercion in op2Numeric
12:50 alpha is now known as nova-alpha
12:50 visq s/Num/Double/ !
12:53 gaal commits welcome if you can figure out a better scheme :)
12:53 * gaal goes to look for coffee
12:54 froh-doh joined perl6
12:57 visq Hardcoding coercion to the best of VInt,VRat,VNum in the context of primitive numeric ops isn't that hard
12:58 xdg joined perl6
13:03 frodo72 joined perl6
13:04 frodo72 is now known as froh-doh
13:05 nothingmuch gaal++
13:05 nothingmuch http://cpanratings.perl.org/dist/Best
13:05 lambdabot Title: "Best reviews -"
13:06 gaal .oO( A site dedicated for reviews of my module )
13:06 elmex joined perl6
13:06 gaal The license incidentally should be MIT, but MM doesn't know how to eat that :(
13:08 gaal visq: if you know what to do, go for it
13:08 visq gaal: btw: I fixed that catalog_tests perl script to run with windows path seperators some time ago - not much fun though ;)
13:10 gaal visq++ visq++ visq++
13:10 visq hehe, for setting up windows ...
13:11 gaal indeed. BTW, have you added yourself to AUTHORS? please do
13:12 visq not yet; I will
13:17 svnbot6 r11085 | benedikth++ | AUTHORS: add myself to list
13:23 cognominal joined perl6
13:25 neoesque joined perl6
13:28 iblechbot joined perl6
13:35 vel joined perl6
13:45 frederico joined perl6
13:59 cdpruden joined perl6
14:00 spinclad where's the hackathon?
14:03 fglock joined perl6
14:13 Aankh|Clone is now known as Aankhen``
14:13 clkao_ nothingmuch: data::bid::compmile was your nightmare?
14:14 shachaf_ joined perl6
14:19 shachaf__ joined perl6
14:20 gaal clkao_: I can attest that nothingmuch woke up saying something about Data::Bind
14:20 gaal I think it was that he figured out how to do aliases
14:22 nothingmuch clkao_: yes =)
14:24 clkao don't read data::bind code before sleep
14:24 lisppaste3 joined perl6
14:26 gaal audreyt: do we need our new PadEntry to still have the Bool freshness flag?
14:27 fglock does '$a.m1.m2' parse as '$a.m1;$a.m2' or '($a.m1).m2' ?
14:27 gaal the latter, I hope
14:27 spinclad the latter
14:27 fglock thanks
14:30 shachaf__ is now known as shachaf
14:37 diotalevi left perl6
14:45 justatheory joined perl6
14:53 sahadev joined perl6
14:54 cognominal joined perl6
14:55 shachaf_ joined perl6
15:01 shachaf__ joined perl6
15:07 shachaf joined perl6
15:15 pmurias joined perl6
15:15 svnbot6 r11086 | fglock++ | px/fglock/v6 - t/07-isa.t passes 2 tests
15:15 pmurias hi
15:16 Limbic_Region seen pmichaud
15:16 jabbot Limbic_Region: pmichaud was seen 45 days 23 hours 30 minutes 43 seconds ago
15:16 Limbic_Region hrm
15:16 pmurias is p6ast.hs supposed to be valid haskell?
15:16 Limbic_Region fglock do you know what, if anything, is the successor to Perl6::Rules for rules in p5?
15:16 Limbic_Region s/fglock/fglock and/or anyone/
15:16 pmurias PCR
15:17 fglock yup
15:17 fglock Pugs::Compiler::Rule
15:18 Limbic_Region ok, forgive me for sounding like the neophyte that I am but does the Pugs in the namespace imply I need pugs to generate the p5?
15:18 pmurias no
15:19 pmurias it's pure p5
15:19 pmurias maybe with PadWalker
15:19 fglock I think it means "Pugs-in-p5" as in "Pugs-in-Haskell"
15:20 cognominal joined perl6
15:20 Limbic_Region no worries, I am going to pose a question to the list and wanted to be as focused as I could
15:20 Limbic_Region thanks
15:20 fglock you can ask here too :)
15:21 * pmurias is trying to use p6ast.hs for his haskell and TaPL practice
15:21 pmurias should i fix syntax errors in p6ast.hs? (1 found)
15:22 Limbic_Region fglock - well, you likely have more important things to do then to come up with an example of using P::C::R to parse (and evaluate) mathematical expressions
15:23 fglock Limbic_Region: actually, Pugs::Compile::Perl6 could do that out of the box
15:23 fglock s/Compile/Compiler/
15:23 fglock math expressions are parsed using a precedence parser instead
15:24 fglock but Pugs::Compiler::Rule grammar actually use rules instead - it just takes more work
15:25 Limbic_Region fglock - feel free to tell me that I am a nimrod then in my post to the list
15:25 Limbic_Region I still want to post it so as to potentially benefit others
15:26 fglock Limbic_Region: see http://svn.openfoundry.org/pugs/perl5/Pugs-Compiler-Rule/lib/Pugs/Grammar/Rule/Rule.pm - the last rules have looser precedence; the rules at the start have tighter precedence
15:26 fglock ok
15:29 Limbic_Region fglock - sent
15:35 robkinyon joined perl6
15:35 svnbot6 r11087 | fglock++ | px/fglock/v6 - 01-pod.t no longer needs eval()
15:39 Limbic_Region out of curiosity, did that message hit the list yet?
15:40 fglock yes
15:40 Limbic_Region I can never remember if a sent message comes back to me or not
15:40 Limbic_Region ok - thanks
15:45 svnbot6 r11088 | fglock++ | px/fglock/v6 - pass t/07-tailcall.t
15:48 fglock bbiab &
15:56 fglock Limbic_Region: http://search.cpan.org/~fglock/Pugs-Compiler-Rule-0.07/lib/Pugs/Grammar/Precedence.pm
15:56 lambdabot Title: "Pugs::Grammar::Precedence - Engine for Perl 6 Rule operator precedence - search. ..."
15:57 Limbic_Region fglock - that doesn't help with the evaluation part
15:57 Limbic_Region but thanks
15:57 elmex joined perl6
15:59 fglock http://svn.openfoundry.org/pugs/perl5/Pugs-Compiler-Rule/compile_p6grammar.pl - doesn't do what you want, but you can see what the syntax looks like for evaluating rules in p5
16:00 fglock it's a parser emitter written in rules
16:00 fglock s/parser emitter/parser plus emitter/
16:01 fglock lunch &
16:02 Limbic_Region fglock - I am off to lunch - would appreciate it if you replied to the email instead of just here (again - for the benefit of others)
16:02 Limbic_Region lunch &
16:04 gaal mooseœ×œkkkkk~.
16:11 shachaf_ joined perl6
16:11 ingy audreyt: PCP6 was not passing tests
16:11 ingy audreyt: so I didn't adjust
16:12 fglock Limbic_Region: sent
16:12 fglock lunch for real &
16:13 clkao ingy: why are you playuing with that?
16:13 clkao fglock++ # almost working
16:13 nothingmuch joined perl6
16:14 spinclad pmurias: p6ast.hs looks to me like brainstorming -- a mix of example P6 syntax and the haskell data statements to support it
16:14 shachaf_ is now known as shachaf
16:16 shachaf_ joined perl6
16:17 vel joined perl6
16:18 gaal pmurias, spinclad: yes, it was a desifn sketch. the .hs name is just because we're lazy and don't want to type :setf haskell :)
16:19 spinclad thanks, my eyes can uncross now
16:20 ingy clkao: I moved the file execution code into M::C
16:20 ingy hi fglock
16:20 rgs hi ingy
16:21 ingy hi rgs
16:22 rgs ingy: I've sent a patch for YAML via RT.
16:22 ingy rgs: thanks
16:22 ingy I'll get to it in a few
16:22 pmurias gaal: i so the emmbeded P6 syntax,
16:22 rgs woot.
16:23 ingy I started writing a new YAML.pm
16:23 ingy YAML3000.pm
16:23 rgs from scratch ?
16:23 ingy it's a port of PyYaml
16:23 ingy so it will work perfectly
16:23 pmurias i wanted to know if haskell was used as a notation, or is the code intented to be also used as the haskell representation of the ast
16:23 kolibrie nothingmuch: that's okay about the photo.  Exactly what happened to me.  Had my camera out, didn't remember till I had turned in my keys.
16:23 nothingmuch kolibrie: =(
16:24 ingy because PyYaml is teh shizzle
16:24 kolibrie Maybe I can turn the picture of it in my brain into an oil painting
16:25 nothingmuch kolibrie++
16:25 pmurias ingy: are you secretly a pythoner :)
16:25 svnbot6 r11089 | gaal++ | * set ignore property on spec docs, as they are slurped
16:25 svnbot6 r11089 | gaal++ |   from an upstream repo
16:26 pmurias or pythonist
16:26 gaal pmurias: the .hs there is almost verbatim what we are using.
16:27 pmurias gaal: is the new ast actually used at the moment?
16:27 gaal one major difference from the existing ast is that pads don't live in Env any more
16:27 gaal pmurias: we're moving to it, hopefully by the end of this hackathon
16:29 spinclad this hackathon has adjourned to Boston by this point?  or in Chicago still?
16:29 gaal BOS
16:30 spinclad may i ask where?  as i was planning on taking some sort of part...
16:31 gaal spinclad: 408 highland av, #416, 2nd floor, somerville
16:31 gaal best practival office
16:31 gaal s/v/c/
16:32 merlyn where can I read more about this mixed PGE that can parse top-down mixed with bottom-up?
16:32 merlyn I know there was the session last week, but I was still hung over. :)
16:33 merlyn so I didn't take very good notes
16:33 integral PM posted some yapc slides to parrot-porters
16:33 spinclad gaal: thanks, i'll make my way there
16:33 merlyn that'd help... I'll go look
16:34 pmurias integral: thats p6i?
16:34 integral pmurias: yeah
16:34 merlyn I don't see that in the past 50 messages
16:34 pmurias neither do i
16:36 clkao fglock: it seems that your branch is emitting perl5 up to where it can still parse the file ;)
16:37 integral hrm, well it was at least one of the lists :-/
16:37 merlyn Yeah, if you can be more specific. :)
16:37 TimToady merlyn: I'm thinking about renaming ==> and <== to "prefeed" and "postfeed", with "feed" the generic term and "fed" the modifier on the target: "This is a prefed function."
16:38 integral subject, "Pm's YAPC::NA talk online", date: Tue, 27 Jun 2006 16:41:51 -0500
16:38 TimToady I think pipe indicates liquids, and a feed can be either solids or liquids.
16:38 merlyn Yeah, that's closer
16:38 TimToady and it's a verb.
16:38 merlyn the noun/verb-ing of pipe was a treat.
16:39 merlyn feed is nearly the same
16:39 gaal spinclad: cool
16:39 merlyn but prefeed doesn't imply a direction for me instantly
16:39 TimToady and not heavily overloaded yet in CS.
16:39 TimToady it's pre as in prefix
16:39 merlyn but what prefixes what?
16:39 TimToady considering the entire feed chain to be a prefix operator
16:39 merlyn ok
16:39 TimToady it's prefix to the fed thing
16:39 merlyn it'll take some getting used to.
16:39 merlyn ok
16:40 theorbtwo Erm, is that the same result as saying that pre-feed means the arrow goes on the beginning of it, as in <==?
16:40 TimToady no, that's a postfeed, specified after the fed func
16:41 TimToady and yes, it'd take some getting used to.  still thinking about it.
16:41 TimToady don't much care about .uniq/.unique
16:41 theorbtwo I think I'd prefer "leftward" and "rightward", pointing out the direction of data flow, and the direction the arrow points.
16:41 TimToady not frequent enough to matter.
16:42 Yaakov Hey, it's Larry.  Hello!
16:42 theorbtwo @foo ==> bar() is a rightward feed.
16:42 lambdabot Maybe you meant: faq todo yow
16:42 TimToady right/left feed would also work.
16:42 TimToady except that a right feed happens on the left of the fed func
16:42 TimToady so the "ward" is not superfluous
16:42 TimToady which makes it clunky.
16:43 TimToady feedinto/feedfrom maybe
16:43 TimToady Yaakov: howdy do.
16:44 Yaakov Pretty darned well, thanks for aasking.
16:44 robkinyon_ joined perl6
16:44 theorbtwo Then you'll end up pronouncing things in the wrong order, with the preposition at the end of a prepositional phrase.
16:45 TimToady feed/feedback :)
16:46 spinclad @a feedsinto &f; &f feedsfrom @a
16:46 lambdabot Maybe you meant: all-dicts arr ask . v
16:46 TimToady audreyt: @?LABEL was intended to be all the labels visible outward in the dynamic scope.
16:47 TimToady ::?CLASS is probably redundant with $?CLASS now
16:47 theorbtwo Hm, I guess that works.
16:47 TimToady perhaps with occasional circulocutions: ::($?CLASS)::($yow)
16:47 merlyn I saw something that showed expr ==> *; expr ==> *; expr ==> *; ... ***
16:47 TimToady they might just turn into feeds/fed
16:47 merlyn is there something that gets at the current list of built-up "whatevers"
16:48 merlyn in the interest of the debugger and other introspective things
16:48 TimToady @firstlist feeds &foo fed @secondlist
16:48 spinclad feeds/fedby ?
16:48 lambdabot Unknown command, try @list
16:48 merlyn like if I have code between the second and third of rhose
16:48 merlyn can I ask something if we have two whatevers so far
16:48 TimToady if bound to *@@args, yes.
16:49 * spinclad &
16:49 merlyn ok, so there's some introspection available for the state of the world.  good
16:49 TimToady each elem of @@args would be one "dimension"
16:49 TimToady but *@args means you want them flattened
16:49 TimToady (lazily, of course)
16:51 TimToady $BL ~~ s/circulocutions/circumlocutions/
16:54 TimToady < merlyn> I saw something that showed expr ==> *; expr ==> *; expr ==> *; ... ***
16:55 TimToady I'd say that syntax is probably a placeholder for something else that we haven't thought of yet.
16:55 TimToady the problem it's trying to solve is foo ==> bar ==> baz
16:55 TimToady is trying to feed foo to bar, not foo and bar to baz.
16:56 merlyn yes, I see that.  but if there's a place for a statement break, there should be some sort of introspection for "our story thus far..."
16:56 TimToady so we need some way to juggle the pointy ends of pipes and attach multiple of them at the correct spot.
16:56 TimToady might just rely on named arrays for that though.
16:56 ingy hi TimToady
16:56 TimToady named arrays would solve the story thus far problem.
16:57 TimToady ingy+-
16:57 TimToady :)
16:57 TimToady ingy: are you in Boston now?
16:58 obra ingy couldn't come to boston :/
16:58 TimToady ah well. me too.
16:58 merlyn that's what happens when you have a warrant out for you. :)
16:59 nothingmuch joined perl6
16:59 ingy I'm back in Seattle
16:59 ingy hi nothingmuch
16:59 TimToady I prefer to specialize in unwarranted behavior.
16:59 merlyn o/~ back in... seattle, again... o/~
17:00 * theorbtwo wonders if a Canada joke would be out of line.
17:00 TimToady the only straight line in Canada is the 49th parallel.  :)
17:00 ingy I implemented lightweight generators in Perl using Module::Compile closures and goto
17:00 ingy sun you can yield/next like in python
17:00 * nothingmuch disagrees
17:01 TimToady nothingmuch is disagreeable.
17:01 ingy nothingmuch owes me
17:01 nothingmuch no i don't
17:01 ingy you break your promises?
17:01 nothingmuch you never listened =)
17:01 TimToady he's breaking is parameters with an argument.
17:01 TimToady *his
17:03 TimToady ingy: I think I know what a "goto" is, but what is a "Module::Compile closure"?
17:04 rgs commas aren't optional
17:04 ingy sorry... M::C, closures, goto
17:04 TimToady eats, shoots, and leaves...
17:04 ingy right
17:05 ingy bad panda, no leaf
17:05 fglock clkao: re parse the file - sure - and we'll get precompiling for free
17:05 ingy hi fglock
17:07 fglock ingy: hi!
17:11 robkinyon_ is now known as robkinyon
17:12 fglock after a bareword space in an expression, everything else is slurp as parameters?
17:13 fglock bareword plus space
17:15 fglock like: ( name 1, 2 or 3 ) - is it parsed as name(1,2 or 3) or (name(1,2) or 3)
17:16 fglock bbiab &
17:18 PerlJam fglock: are you assuming that perl hasn't yet seen the definition of "name"?
17:19 TimToady it will be taken provisionally as a listop, with listop precedence
17:19 TimToady so name(1,2) or 3
17:19 TimToady but it will fail compilation if name is not supplied by CHECK time.
17:20 TimToady it will also fail if name is declared as a unary or 0-ary func.
17:24 fglock TimToady: thanks
17:30 TimToady I guess the stuff that comes through a feed is "fodder".
17:42 gaal audreyt: can objects still have Dynamic opaque content or is it all slots now?
17:42 Limbic_Region speaking of feed and fodder - anyone know what I ate that is making me soooo sleepy
17:43 TimToady fodder?
17:43 gaal chocolate coated chocolate moose?
17:44 TimToady did you eat anything with tryptophans?
17:44 TimToady like, say, cow?
17:44 Limbic_Region apparently, that's an urban legend TimToady
17:44 * Limbic_Region just looked for that very reason
17:45 Limbic_Region http://www.snopes.com/food/ingredient/turkey.asp
17:45 lambdabot Title: "Urban Legends Reference Pages: The Big Sleep"
17:45 TimToady don't care if it's an UL, cow makes me sleepy...
17:45 gaal maybe you're just bored with the taste?
17:45 robkinyon meat in general is very heavy which can cause sleepiness
17:46 Limbic_Region it does say that eating solid foods (and likely some more than others) causes an increased blood flow to the abdominal region for digestion which might have something to do with it
17:46 robkinyon it's much harder to digest meat than vegetable matter
17:46 TimToady I think the belief that urban legends sites speak the truth is an urban legend.  :)
17:46 Limbic_Region heh
17:47 Limbic_Region in any case - my brain has decided to observe tomorrow's holiday prematurely and as such - the parsing experiment is on hold until Wednesday
17:47 Limbic_Region thanks for the pointer fglock though I would still prefer a working example
17:47 TimToady of Perl 6?
17:48 Limbic_Region well - specifically Perl 6 rules
17:49 Limbic_Region and if at all possible, without the use of Parrot or Pugs
17:50 Limbic_Region but the latter is not really a requirement since I have both working quite nicely at work and at home
17:51 ingy TimToady: check out http://rafb.net/paste/results/BJZAbm91.txt (re: generators)
17:56 nothingmuch i still don't know how your goto works and mine doesn't
17:56 nothingmuch in ters of making the while recheck the condition
18:02 ingy nothingmuch: huh
18:04 gaal audreyt: where are objectIds registered?
18:05 gaal some uplexy pad?
18:06 ingy nothingmuch: perl likes me
18:07 nothingmuch ingy: okay
18:09 rafl Which version of ghc is needed to build 6.2.12?
18:09 gaal I think 6.4.1 is still ok
18:10 gaal on debian, which I'm assuming you're asking aobut :)
18:10 audreyt gaal: objspace
18:11 rafl So my 6.4.2 should work fine. Nevertheless I get some errors which seem to indicate some ghc or ghc-pkg b0rkage.
18:11 rafl gaal: Of course it's about Debian. :-)
18:11 gaal audreyt: but is that global? i thought there was the possibility of masking packages
18:11 gaal or do they nest?
18:12 rafl Ideas? http://nopaste.debianforum.de/3599
18:12 gaal anymoose mkType "foo" no longer makes sense
18:12 audreyt gaal: well, PIL^N models it as
18:12 audreyt type ObjectSpace = SeqOf (Weak NativeObj)
18:13 fglock audreyt: can you help me a bit with the parser?
18:13 ingy hi audreyt
18:14 ruoso joined perl6
18:14 gaal is Data.Seq version dependent? I don't see it on hoogle
18:15 ingy fglock: why are there 2 v6.pm-s?
18:15 gaal oh, got it, src/Data/Seq.hs
18:15 ingy I need to patch one... which one?
18:15 ingy or both?
18:16 audreyt fglock: sorry, I just woke up, gotta get some food first
18:16 audreyt and then I'll join the hackathoners
18:16 gaal audreyt: we were just discussing getting food
18:16 fglock ingy: perl5/Pugs-Compiler-Perl6/lib/v6.pm is the right one
18:16 * Limbic_Region suggests audreyt avoid the fodder
18:16 gaal so if you aren't bent on breakfast-type chow you can join us here and eat
18:17 fglock ingy: the one in misc/px/ is a prototype for next version - I'll merge later
18:17 audreyt gaal: heh, I just reheated the rice form yesterday...
18:18 pasteling "rafl" at 217.246.159.40 pasted "Pugs 6.2.12 build failure on Debian" (363 lines, 31.2K) at http://sial.org/pbot/18189
18:18 ingy fglock: ok
18:18 fglock now I'm hungry - I'll get something to eat too &
18:18 audreyt gaal: so I'll finish it here I guess
18:18 ingy fglock: what is the basic changes?
18:19 ingy audreyt: is PCP supposed to pass tests?
18:19 fglock ingy: the grammar is all new
18:19 ingy fglock: oh, so not changing v6.pm
18:19 ingy I see
18:20 ingy ll
18:20 ingy erp
18:20 fglock ingy: yes - I'm rewriting the grammar in order to try to merge with Parrot/P6 later
18:20 ingy I mean the v6.pm wrapper is not changing
18:20 ingy fglock: btw, your code seems to have DOS line endings :(
18:20 fglock no
18:21 audreyt yeah, please someone run utils/add-svn-props.sh over all fglock code
18:21 audreyt :)
18:21 fglock ingy: sorry
18:21 fglock I use windows in the weekends
18:22 audreyt that's fine, that's what add-svn-props.sh is for
18:22 audreyt (to normalize line endings so DOS people see crlf and UNIX people sees lf)
18:23 fglock cofee &
18:28 rashakil joined perl6
18:34 rafl Does third-party/fps somehow differ from http://www.cse.unsw.edu.au/~dons/fps.html?
18:34 lambdabot Title: "Data.ByteString / FPS"
18:34 fglock re parser: is it better to have the dot in a method call parsed as an operator, or is the dot a part of the '$object.method(param)' term?
18:35 audreyt rafl: it's a snapshot that works with pugs, and I pull from upstream every now and then
18:36 audreyt fglock: I parse the ".method()" as a postfix
18:37 fglock audreyt: you mean, including the parameter list?
18:37 audreyt right, that's "method postfix"
18:37 audreyt the secondmost tight prec
18:37 rafl audreyt: There's no configurable way to not install those third-party modules somewhere else than in the users home directory, I guess?
18:38 audreyt rafl: currently, no, though I can see installing them to system may work
18:38 audreyt rafl: but then that means that step needs to happen as root before pugs gets built
18:39 Aankhen`` What are .hi files?
18:39 audreyt Aankhen``: they are like C's .h files that describes what a .o file contains
18:39 rafl audreyt: Why not use a temporary packages.conf somewhere under the build tree to register them and install them with the rest of pugs after the build?
18:39 audreyt rafl: we tried that
18:39 Aankhen`` I thought C .h files are header files? :-S
18:40 rafl audreyt: What was wrong with that approach?
18:40 audreyt Aankhen``: and .hi are "interface" files
18:40 audreyt rafl: that will require "make install" stage to readjust the .conf
18:40 Aankhen`` Ah.
18:41 rafl audreyt: What's the problem with that? Except someone may need to write some code that does it?
18:41 audreyt rafl: it could be made to work, I think, and is the correct way.
18:42 audreyt rafl: that requires a ghc-pkg wrapper
18:42 ingy clkao: ping
18:42 audreyt since cabal doesn't take ghc-pkg flags
18:42 rafl audreyt: I've done that several times while packaging haskell libraries for Debian.
18:42 audreyt rafl: and the wrapper needs to be written in Haskell and compiled to .exe much like Setup.exe (or merge both? maybe)
18:42 rafl audreyt: Why does it need to a .exe?
18:43 audreyt rafl: because Win32 would require that
18:43 audreyt I mean an executable, not the suffix
18:43 fglock audreyt: I was confused with '.meth listop' in S03 - I was reading it as 2 words - think it needs quotes
18:43 audreyt i.e. a #!/usr/bin/perl wrapper wouldn't do
18:43 rafl How about perl? It's a prereq anyway?
18:43 audreyt yes but you can't pass arguments into it
18:43 audreyt --with-ghc-pkg=perl
18:43 audreyt that doesn't work
18:43 rafl I see.
18:44 audreyt I suspect you can fiddle with PERL5OPTS or something to cheat
18:44 rafl Luckily I recently had some haskell lessons at university. :-)
18:44 audreyt but the cleanest way is just build a ghc-pkg wrapper from .hs into .exe
18:44 audreyt the same time Setup.exe gets built
18:44 gaal audreyt: have you compiled PIL^N recently? I'm getting compiler errors on Data.Seq
18:44 audreyt rafl: so if you can Solve This Tangled Mess then wow, you++
18:45 rafl audreyt: At least I'll give a try.
18:46 coumbes joined perl6
18:46 svnbot6 r11091 | ingy++ |  r713@ingy:  ingy | 2006-04-14 21:47:37 -0700
18:46 svnbot6 r11091 | ingy++ |  Fixed so that pod2html works
18:46 gaal audreyt: http://sial.org/pbot/18190
18:46 lambdabot Title: "Paste #18190 from Someone at 66.92.67.231"
18:48 ingy svk-- # hanging...
18:48 Limbic_Region is there anyway with svn/svk to ensure every single file in my local rep matches that of the repo?
18:49 audreyt gaal: fixed
18:49 Limbic_Region on more than one occassion I have gotten a message about foo not being updated and to run with merge track something or other
18:49 gaal cheers
18:49 vel joined perl6
18:52 svnbot6 r11092 | audreyt++ | * repair "make pil" to work with newer libs and GHC.
18:52 svnbot6 r11093 | ingy++ |  r714@ingy:  ingy | 2006-04-15 04:42:01 -0700
18:52 svnbot6 r11093 | ingy++ |  S26 first sweep of changes
18:53 * ingy wonders wtf svk is doing
18:57 elmex_ joined perl6
18:59 shachaf joined perl6
18:59 svnbot6 r11094 | audreyt++ | * Another set of fps changes to make "make pil" happier
19:03 gaal audreyt: objectIds can't live in objectspace, they aren't objects. where do I keep a Str -> objectId mapping and is it global?
19:05 audreyt Str?
19:06 * audreyt is confused
19:06 gaal mkType "Moose"
19:06 gaal should return the id of Moose.meta
19:06 audreyt instead of a VType value?
19:07 gaal do we stil have VType?
19:07 audreyt we do
19:07 audreyt it's the prototypical object for something named that
19:07 audreyt inside the scope
19:11 gaal is it still represented the same way? as a wrapped string?
19:12 audreyt I think so.
19:12 audreyt otoh, it can alternately be represented as a instance
19:12 audreyt with no slots
19:12 gaal and I still don't understand how the lookup is to work. data Object no longer has a VType field, we changed it it the ojectID of meta
19:12 TreyHarris pugs has no float support?
19:12 audreyt and .meta as the id
19:13 gaal ?eval 0.234234
19:13 evalbot_11071 is now known as evalbot_11094
19:13 evalbot_11094 117117/500000
19:13 TreyHarris heh
19:13 gaal ?eval 0.234234.as("%f")
19:13 evalbot_11094 \"0.234234"
19:13 svnbot6 r11095 | fglock++ | px/fglock/v6 - fixed .meth
19:13 TreyHarris so it has float support, so long as the floats are strings :-)
19:14 gaal it's just very happy to use Rats when it can
19:14 vel joined perl6
19:15 audreyt gaal: let's talk f2f :)
19:15 audreyt obra: please pick me up in... 15mins?
19:15 Limbic_Region oh, is anyone taking pics at the hackathon?
19:15 svnbot6 r11096 | audreyt++ | * repair "make pil'.
19:16 * Limbic_Region would love to be able to put faces to handles since he couldn't be there to see ppl f2f
19:18 obra audreyt: food just appeared. I'll want a few more minutes to actually eat
19:19 audreyt sure!
19:21 gaal Limbic_Region: nobody seems to have a camera here, but see nothingmuch's moosepage on flickr
19:22 elmex_ is now known as elmex
19:25 * miyagawa just arrived NY
19:27 Limbic_Region gaal - link?
19:28 gaal Limbic_Region: http://www.flickr.com/photos/nuffin/sets/72157594183758406/
19:28 lambdabot Title: "YAPC::NA::2006 Møøse photos - a photoset on Flickr"
19:29 stevan M???????????ssseeeee
19:29 gaal stevan!
19:29 gaal you are moosed
19:29 stevan gaal: Alias seems to think we are doing an "underground marketing campaign:
19:29 Limbic_Region err, lots of photos but apparently not lots of names/tags
19:29 stevan no love for just pure moose ness
19:29 gaal no, just taking over the world
19:29 stevan Limbic_Region: the roll overs have the names on them
19:30 gaal Limbic_Region: there are tags in many of them (annotations)
19:30 Limbic_Region roll overs?
19:30 * Limbic_Region recognizes Randal and always knew he wasn't human
19:30 stevan Limbic_Region: careful with the ones of ingy, they are not 100% work safe ;)
19:31 stevan Limbic_Region: the little flickr tags.. they appear when you roll over the pics
19:31 Limbic_Region ahhh - roll over
19:31 Limbic_Region got it
19:32 * PerlJam wonders what the odds are of two people named "Patrick Michaud" attending YAPC ...
19:32 TimToady 100%
19:32 stevan yeah exactly,.. I thought that too
19:33 stevan We are working on cloning audreyt as well, so this should be more common in subsequent YAPCs
19:33 audreyt TimToady: hi. is ::?CLASS just $?CLASS?
19:33 PerlJam stevan: awesome!
19:33 audreyt TimToady: and is @?LABEL just $?LABEL?
19:33 Aankhen`` LMAO stevan.
19:34 TimToady I answered that earlier.
19:34 audreyt hm.
19:34 audreyt I didn't see them in backlog-machine
19:34 * gaal missed the answer too
19:34 * audreyt checks her backlog reader
19:34 audreyt audreyt: @?LABEL was intended to be all the labels visible outward in the dynamic scope.
19:34 audreyt ::?CLASS is probably redundant with $?CLASS now
19:34 gaal http://colabti.de/irclogger/irclogger_log/perl6?date=2006-07-03,Mon&amp;sel=340#l511
19:34 lambdabot Title: "#perl6 2006-07-03,Mon"
19:34 audreyt TimToady: "dynamic" scope?
19:34 audreyt not lexical?
19:35 gaal audreyt: obra on his way to you
19:35 audreyt i.e. OUTER or CALLER's label?
19:35 audreyt gaal: oh. ok.
19:35 TimToady lexical then dynamic, I guess.
19:36 clkao audreyt: obra just went out
19:36 dduncan joined perl6
19:36 TimToady same order they'd be searched for.  But it's probably not important
19:36 audreyt i.e. anything that can be goto'd to
19:37 TimToady I was thinking of loop labels.
19:37 TimToady finding gotoable labels seems a lot harder.
19:37 TimToady specially if we make line numbers gotoable.  :)
19:37 audreyt wait...
19:37 audreyt do you mean @?LABEL only remembers the labls associated with Code
19:38 audreyt rather than with statements?
19:38 audreyt also, is .ref still used to return the prototype object
19:38 audreyt or is it .class now?
19:39 audreyt Dog.new.ref; # Dog
19:39 TimToady doesn't "remember" anything.  Just constructs the list of labels it'd find if you tried "next NoneSuch".
19:39 audreyt 'k
19:39 TimToady don't really need it, probably.
19:39 TimToady I want to kill .ref.
19:39 audreyt hard to find a use case.
19:39 audreyt ok. then .proto? .class? .object_class?
19:39 TimToady .type maybe, or .proto
19:39 audreyt still need something that's not .meta
19:39 audreyt .type is fine too
19:40 TimToady yes
19:40 TimToady can't use .meta
19:40 TimToady merlyn and I were discussing this very thing
19:40 TimToady .type is probably the most transparent
19:40 TimToady and available
19:40 TreyHarris what's wrong with .meta?
19:41 TimToady it's the metaclass object, not the type
19:41 TreyHarris beside being CS-y, which i know merlyn doesn't like?  oh, so .meta will exist, it just can't be used for that.
19:41 TimToady you could have a single metaclass object managing multiple types, and vice versa.
19:42 TimToady yes
19:42 PerlJam TimToady: BTW, I was rereading the Synopses last night and I noticed that, in general, it doesn't say much about when things go wrong.  The only example I remember is in S06 where it talks about "attributive parameters".  It doesn't say what should happen when the object doesn't have an attribute with the name used in the submethod.
19:42 TimToady plus it's just a really old-school meaning of "type" for it to be the prototype object.
19:43 TimToady "Abraham is a type of all who believe".
19:43 PerlJam s/it doesn't/they don't/
19:44 TimToady well, in general, if something goes wrong, you get an exception.  Sometimes it's thrown, and sometimes it's just returned.
19:46 TimToady what it does with an attributive parameter that isn't supplied would presumably be just the same as an ordinary parameter that doesn't have a default.
19:46 TimToady (where optional means defaulting to undef)
19:47 pmurias joined perl6
19:47 pmurias nothingmuch: ping
19:47 nothingmuch pmurias: pong
19:47 TimToady but in general, not supplying a required parameter would result in a die rather than a fail.
19:48 pmurias nothingmuch: does the new wemail interface work for email sending?
19:48 TimToady and yes, that's not specced anywhere.
19:48 nothingmuch die == your fault
19:48 nothingmuch fail == maybe your fault
19:48 nothingmuch but probably not?
19:48 nothingmuch pmurias: i tested it and it seemed to, yes
19:49 TimToady fail == huh?  die == fu!
19:49 nothingmuch TimToady: i think that's what I meant =)
19:49 nothingmuch as in, bad input vs. bad circumstances
19:49 nothingmuch there should be a style guide for this
19:50 TreyHarris my browser's off in la-la-land for the moment and i don't have my browser's off in la-la-land for the moment and i don't have the .pod files handy, so apologies if this is in the synopsis, but is croak built-in now?
19:50 nothingmuch also, when does 'use fatal' and 'no fatal' actually take effect?
19:50 pmurias nothingmuch: used the old one and it worked (worse is better:)
19:50 nothingmuch ialways assumed that whenever an error object passes through (implicitly or explicitly) a use fatal block it dies
19:50 nothingmuch and that no fatal has an implicit try { } around every call to out of scope code
19:51 TimToady croak is currently unspecced.
19:51 nothingmuch pmurias: okay, i'll look at the smtp logs
19:51 rindolf joined perl6
19:51 nothingmuch croak should be Carp::Clan like, IMHO
19:51 rindolf Hi all.
19:51 rindolf Hi nothingmuch
19:51 nothingmuch Hi
19:51 rafl Is there a ghc equivalent to perls Config.pm?
19:51 rindolf nothingmuch: I need help with http://sial.org/pbot/18191 - it's in Haskell.
19:51 lambdabot Title: "Paste #18191 from "rindolf" at 88.155.89.47"
19:52 nothingmuch create_empty doesn't need to be in the IO monad
19:52 rindolf nothingmuch: OK.
19:52 rindolf nothingmuch: so how do I use it with main?
19:52 nothingmuch just use empty and a non binding
19:52 rindolf nothingmuch: thanks.
19:52 nothingmuch instead of <- have a where/let
19:53 rindolf Couldn't match `IO' against `Map k'
19:53 nothingmuch or just putStr (to_str empty)
19:53 nothingmuch right, because empty returns values from the type 'Map k' (k is an unbound type variable (s))
19:53 rindolf nothingmuch: yes, but how do I add more elems to it?
19:53 TreyHarris croak being built-in would be nice, imho.  "my fault" (die) versus "your fault" (croak) is a good duality.
19:53 nothingmuch you don't, it's a purely functional data structure
19:54 nothingmuch the add function returns a new map object
19:54 nothingmuch s/object/thingy/;
19:54 gaal FWIW, Carp::longmess has been in Prelude.pm for ages now
19:54 rindolf nothingmuch: I see.
19:54 nothingmuch whcih contains all the values from the previous one and this one too
19:54 nothingmuch there's prolly an IORef like map object that can work for you
19:54 nothingmuch i just don't know about it
19:54 nothingmuch maybe even JudyHS
19:54 nothingmuch since Judy can be abused very effectively for caching
19:55 nothingmuch err
19:55 nothingmuch hashing, not caching
19:56 nothingmuch doesn't the map class have an instance of Show, btw?
19:56 nothingmuch also, i believe maps should be sorted by default since IIRC they're implemented as trees
19:56 gaal @hoogle Data.Map
19:56 lambdabot No matches, try a more general search
19:56 nothingmuch yes
19:56 nothingmuch insert :: Ord k => k -> a -> Map k a -> Map k a
19:57 nothingmuch k, the key, needs to be of the class Ord
19:57 nothingmuch so maps use ordering to search in log n instead of constant time
19:57 nothingmuch or n time
19:57 pmurias is there an official static type system for perl?
19:57 nothingmuch pmurias: Perl 6?
19:57 gaal wtm? Map is not core?
19:57 pmurias yes
19:57 nothingmuch there is a fairly well known type annotation system
19:58 nothingmuch and a probable approach to how to infer (it'll probably be local type inferrence)
19:58 gaal http://haskell.org/ghc/docs/latest/html/libraries/base/Data-Map.html#t%3AMap
19:58 rindolf Hi gaal
19:58 gaal instaces: ... (Show k, Show a) => Show (Map k a)
19:58 gaal Hi there
19:59 gaal so if the key and value are Show, so is the map
19:59 nothingmuch @hoogle showTree
19:59 lambdabot Data.IntMap.showTree :: Show a => IntMap a -> String
19:59 lambdabot Data.IntSet.showTree :: IntSet -> String
19:59 lambdabot Data.Map.showTree :: (Show k, Show a) => Map k a -> String
19:59 nothingmuch that's a debugging function
19:59 nothingmuch you can use that
19:59 nothingmuch http://haskell.org/ghc/docs/latest/html/libraries/base/Data-Map.html#21
20:00 pmurias how much does type_meta.pod apply?
20:01 nothingmuch if you annotate and it's mostly by me or luqui than probably noit much ;-)
20:01 nothingmuch oh
20:01 nothingmuch hmm
20:01 nothingmuch that actually explains fairly well how there is no real type system yet =)
20:02 pmurias luqui was supposed to have a big influence on the type system
20:03 nothingmuch yes, but this stuff never really materialized yet
20:03 nothingmuch it's too early to know
20:03 nothingmuch we need typing in pugs to figure out the details
20:03 nothingmuch and then make smarter decisions
20:04 nothingmuch luqui has stepped back from the project since
20:06 pmurias shower&
20:06 nothingmuch pmurias: okay, something was less strict before
20:06 nothingmuch probably spam related
20:06 larsen joined perl6
20:06 nothingmuch i'll reconfigure some stuff and it should work soon
20:07 nothingmuch pmurias: done
20:13 svnbot6 r11097 | fglock++ | px/fglock/v6 - 3 tests to go - t/07-simple-multisubs.t, t/10-moose1.t, t/11-capture.t
20:13 nothingmuch rindolf: how are you managing?
20:14 petdance joined perl6
20:17 pmurias nothingmuch: did you read TaPL?
20:17 ludan joined perl6
20:17 pmurias nothingmuch++ #non-sucking-mail-services
20:18 fglock joined perl6
20:18 nothingmuch pmurias: i lent my copy to lumi
20:19 nothingmuch i didn't get it back yet
20:19 nothingmuch and I haven't gotten to it before
20:19 nothingmuch so no =(
20:21 * nothingmuch basks in his karma
20:22 pmurias how do you get your karma level?
20:22 pmurias get info abouy
20:23 pmurias @karma nothingmuch
20:23 lambdabot nothingmuch has a karma of 0
20:23 pmurias @karma pmurias
20:23 lambdabot You have a karma of 0
20:23 nothingmuch lambdabot has a different syntax
20:23 pmurias ?
20:24 pmurias ?karma nothingmuch
20:24 pmurias perlbot karma nothingmuch
20:24 perlbot Karma for nothingmuch: 43
20:24 nothingmuch @karma+ and @karma-
20:24 pmurias perlbot karma pmurias
20:24 perlbot Karma for pmurias: 5
20:24 nothingmuch jabbot: karma nothingmuch?
20:25 jabbot nothingmuch: nothingmuch? has neutral karma
20:25 nothingmuch jabbot: karma nothingmuch
20:25 jabbot nothingmuch: nothingmuch has karma of 79
20:25 lambdabot nothingmuch has a karma of 0
20:25 nothingmuch purl on irc.perl.org wins though
20:25 lambdabot and's karma raised to 1.
20:25 pmurias jabbot karma pmurias
20:25 nothingmuch nevermind, i'm glad you like my mail services =)
20:25 fglock perlbot karma fglock
20:25 perlbot Karma for fglock: 130
20:25 Juerd perlbot karma juerd
20:25 perlbot Karma for juerd: 66
20:25 Juerd 600 to go.
20:25 nothingmuch heh
20:29 ruoso perlbot karma ruoso
20:29 perlbot Karma for ruoso: 6
20:29 ruoso heh
20:36 rindolf nothingmuch: not well at all.
20:36 rindolf nothingmuch: it takes too much time.
20:36 rindolf nothingmuch: with Perl, I would have finished it by now.
20:36 rindolf Anyway, I'd like to report some Mandriva bugs I found in Cooker.
20:36 Juerd perlbot karma rindolf
20:36 perlbot Karma for rindolf: 15
20:37 rindolf nothingmuch++ # Helping me a bit.
20:38 nothingmuch rindolf: well, you don't *have* to use haskell
20:39 nothingmuch as audrey says haskell is good for when you know what you exactly what you want to do
20:40 nothingmuch while perl is good for when you're poking around
20:40 nothingmuch both probably more so than any other language
20:40 rindolf nothingmuch: I see.
20:40 rindolf nothingmuch: well, I'm trying to write a script I want to write in a differnet language than Perl.
20:41 gaal "Perl 6's model is essentially like Perl 5's except that it treats classes as first class objects, not strings" ~~ audreyt
20:41 rindolf nothingmuch: my candidates were Smalltalk (that I'm learning at the moment), Haskell (which I learned back then) and Common Lisp that I'd like to learn.
20:42 nothingmuch okay
20:42 rindolf I'm also refactoring the Graham Function Perl 5 script so it wil be easier to translate to ST and CL.
20:42 nothingmuch haskell is probably not the best scripting language
20:43 Juerd What is it called when something happens often, but at irregular intervals?
20:43 ruoso periodic
20:43 ruoso ?
20:44 rindolf nothingmuch: tell that to wli.
20:44 dduncan I wonder if mine works yet ...
20:44 dduncan Karma for dduncan
20:44 petdance joined perl6
20:44 rindolf perlbot: karma for dduncan
20:44 perlbot Karma for dduncan: 24
20:44 jabbot rindolf: for dduncan has neutral karma
20:45 rindolf Hi petdance
20:45 petdance hi shlmoi
20:45 dduncan perlbot: karma for Darren_Duncan
20:45 perlbot Karma for Darren_Duncan: 6
20:45 jabbot dduncan: for Darren_Duncan has neutral karma
20:45 nothingmuch rindolf: by "scripting" i mean "forgiving, adhocish"
20:45 dduncan unfortunately, mine's split due to the latter being my SVN username
20:45 rindolf nothingmuch: yes, I know.
20:45 nothingmuch it's not so much the type of program, but the methodology
20:45 rindolf nothingmuch: thing is wli is writing his scripts in Haskell.
20:46 rindolf nothingmuch: I know.
20:46 nothingmuch that's good for wli
20:46 rindolf nothingmuch: do you know Common Lisp? Can you recommend an implementation?
20:46 nothingmuch but wli is probably not learning haskell right now
20:46 rindolf nothingmuch: do you know who wli is?
20:46 nothingmuch nope,nope, and nope
20:46 nothingmuch well, i kinda know cl, i know scheme
20:47 nothingmuch but i haven't more than played around
20:47 petdance oh wait, I don't want this channel on autojoin.
20:47 petdance I just like parrot.  Perl6 is too real! :-)
20:47 Odin-LAP joined perl6
20:48 rindolf nothingmuch: I also know Scheme.
20:48 rindolf nothingmuch: or at least knew. Now my knowledge is somewhat rusty.
20:48 nothingmuch scheme and cl are similar languaages, but subtly different. however, cl is much more than just a language
20:48 Juerd ruoso: Not what I'm looking for...
20:48 audreyt TimToady: this:
20:48 audreyt Because Perl 6 uses a false C<.id> to signify a non-instantiated prototype,
20:48 audreyt all instances should arrange to return a C<.id> that boolifies to true.
20:49 nothingmuch it has
20:49 nothingmuch ack, typing
20:49 audreyt I take that it means Int.id and Dog.id is both 0
20:49 rindolf Maybe I'll write a TAP runner in CL.
20:49 audreyt (or False)
20:50 nothingmuch rindolf: okay
20:50 ruoso Juerd, in which sense you mean?
20:50 Juerd Wish I knew.
20:51 rindolf nothingmuch: since MikeSchwern wants two different implementations and stuff.
20:51 rindolf So there will be 3 or 4.
20:51 audreyt TimToady: so I wonder if there should be a separate (.meta.id, .id) tuple
20:51 audreyt that is good enough for (say) hashes that use objs as keys
20:51 dduncan One thing I've never been quite clear on ... are .id each integers?
20:52 dduncan and nothing else?
20:52 dduncan s/nothing/something/
20:52 dduncan forget that
20:52 Juerd I hope they will be integers.
20:52 Juerd It would be a nightmare if they could be any object.
20:52 nothingmuch rindolf: good luck
20:53 dduncan my reading of them so far didn't indicate any type, though a few examples suggest integers
20:53 rafl audreyt: While writing the ghc-pkg-wrapper, would it be safe to use components in src (namely System.FilePath)?
20:53 Juerd Strings may be useful too.
20:53 Juerd Then they can include hostnames in network cluster builds.
20:53 dduncan that said, I wonder about container types
20:53 Juerd But the performance difference is huge.
20:53 dduncan eg, what is the .id of a Pair object?
20:54 dduncan how is that determined
20:54 Juerd 42
20:54 dduncan I need to know things like how a .id is determined for a Pair or Seq or Mapping etc, so I know the best way to generate such for complex things like my Relation
20:56 dduncan I'm assuming it can't just be a hash, since sometimes multiple things would hash to the same value, and two unique .id are supposed to guarantee two identical values, regardless of the type, and for immutable types, even with different actual objects
20:57 rindolf OK, reported one Mandriva bug - now trying to recall others.
20:57 spinclad_ joined perl6
20:57 rindolf Found one - akregator won't open links using konqi.
21:05 Limbic_Region joined perl6
21:08 chip audreyt, all: hi
21:08 chip audreyt: Q about PIR
21:09 xdg joined perl6
21:13 vsoni joined perl6
21:13 svnbot6 r11098 | fglock++ | px/fglock/v6 - pass t/10-moose1.t
21:13 vsoni chip: hi chip
21:14 chip rehi :-)
21:14 unobe joined perl6
21:15 obra hey chip
21:16 chip obra: hi jesse
21:18 rindolf Hi chip
21:18 rindolf chip: didn't the King of Prussia whatever press charges against you?
21:19 rindolf chip: in any case, I really appreciate the work you've done to maintaining perl5, etc.
21:21 dduncan hi chip, how's the old block?
21:22 Limbic_Region nothingmuch ping
21:22 nothingmuch Limbic_Region: pong
21:22 spinclad_ cheeep!
21:22 coumbes joined perl6
21:23 Limbic_Region very cool moose pics
21:23 * Limbic_Region is from Maine where moose are common place
21:23 * Limbic_Region isn't sure which are better looking though
21:25 * Limbic_Region especially liked the traitor shot
21:26 dduncan url?
21:27 spinclad_ chip: audrey's talking with gaal atm
21:27 fglock clkao: ping
21:28 Limbic_Region http://www.flickr.com/photos/nuffin/sets/72157594183758406/
21:28 lambdabot Title: "YAPC::NA::2006 Møøse photos - a photoset on Flickr"
21:28 Limbic_Region anyone know what "1 file skipped, you might want to rerun merge with --track-rename." from svk means and how to fix it
21:29 spinclad_ offline borg
21:33 clkao fglock: pong
21:33 ingy clkao: ping
21:33 clkao ingy: hey
21:33 ingy clkao: two things
21:34 ingy first I changed M::C to include the file hacks with your package hack
21:34 fglock clkao: almost ready for merging - can you point me to svk instructions?
21:34 ingy but I changed caller(4) to caller(2)
21:34 ingy not sure if it's right, so please test
21:34 ingy Secondly, I hate svk ;)
21:35 ingy well right now I even hate svn!
21:35 ingy why won't anything work today??!!
21:35 * ingy pouts
21:36 jiing joined perl6
21:40 * fglock wonders what "Automatically merge" would do
21:40 svnbot6 r11099 | fglock++ | px/fglock/v6 - ready to merge back to perl5/
21:46 chip spinclad_: ok
21:46 chip spinclad_: hey there
21:46 chip dduncan: yo dude
21:46 clkao fglock: svk sm -C //path/to/px/fglock/pc-p6 //path/to/perl5/pc-p6
21:46 clkao ingy: why did you change it to caller(2)?
21:47 fglock clkao: starting...
21:48 fglock installing Devel::Caller in order to test perl5/PCP6 - "Module::Build is not configured with C_support" - any ideas?
21:48 ingy clkao: well it's in a different place
21:49 ingy I'm not even sure that caller isn't too fragile...
21:49 ingy anyway let me know if it works or not
21:49 dduncan hello chip
21:49 ingy and I'll fix it clkao
21:52 clkao fglock: resintall module::build after you have something extutils:: something c. i forgot
21:52 clkao hate module::build
21:52 fglock k
21:54 clkao or you can do the merge down by swapping the two args, and make sure it works. then merge back
21:55 fglock perl5/PCP6 tests don't pass - checking...
21:57 fglock "die _emit" :)
21:58 clkao uhm :p
22:00 fglock error - Repository /home/fglock/.svk/local does not exist, create? (y/n)y / No such depot: home.
22:02 svnbot6 r11100 | ingy++ |  r1931@ingy:  ingy | 2006-06-26 13:29:00 -0700
22:02 svnbot6 r11100 | ingy++ |  perl5/
22:04 clkao er? i thought you have svk checkout already/ you haven't used svk at all?
22:04 svnbot6 r11101 | ingy++ |  r2126@ingy:  ingy | 2006-07-03 11:44:37 -0700
22:04 svnbot6 r11101 | ingy++ |  Refactor v6.pm to use M-C-0.17 which does the .xxxc file check.
22:04 svnbot6 r11101 | ingy++ |  All add clean_files to Makefile.PL
22:04 ingy svk++ # decided not to segfault this time
22:08 fglock clkao: do I need an import or checkout first? (I was only using svn until now)
22:13 clkao fglock: ya.
22:15 fglock clkao: can I reuse the svn directory, or will it be mixed up
22:17 fglock (still reading the svk instructions)
22:17 clkao uhm no. but someone suggested something to turn svn checkout into an initail svk mirror and checkout
22:17 clkao fglock: ask nothingmuch for quick tour. i am working on something now
22:17 TreyHarris lol.  message from one of our 'developers' to the internal Perl list: "i have program that needs to check every few hours whether condition is met.  right now, i go into infinite loop and check time() to see if enough has past.  any way to just tell program to go idle for some hours? thx"  i should tell him to sleep on it, maybe the problem will come to him in the morning.
22:17 fglock clkao: ok
22:18 chip irc.perl.org connection went down
22:20 spinclad_ left perl6
22:21 TimToady society is to blame.
22:22 svnbot6 r11102 | gaal++ | * remove unneccessary method so that Data.Seq compiles on GHC 6.4.2 again
22:22 svnbot6 r11101 | ingy++ |  r2126@ingy:  ingy | 2006-07-03 11:44:37 -0700
22:22 svnbot6 r11101 | ingy++ |  Refactor v6.pm to use M-C-0.17 which does the .xxxc file check.
22:22 svnbot6 r11101 | ingy++ |  All add clean_files to Makefile.PL
22:23 nothingmuch fglock: clkao has assigned me to you
22:23 * ingy raises an eyebrow at svnbot6
22:25 fglock nothingmuch: I have 2 dirs in svn, I want to merge using svk
22:25 nothingmuch how did you make the two dirs?
22:25 nothingmuch svk cp in your checkout?
22:26 fglock no, but clkao said he fixed it already
22:26 fglock I only installed svk afterwards
22:26 nothingmuch svn cp
22:27 nothingmuch is also the same
22:27 nothingmuch okay, so if clkao fixed it
22:28 fglock can I convert the my svn checkout to svk?
22:28 nothingmuch then it's probably going to be svk smerge -f path_to_branch  -t path_to_trunk
22:28 nothingmuch you canj just check it out again
22:28 fglock with 'svk co' ?
22:29 nothingmuch yes
22:29 nothingmuch svk co http://svn.openfoundry.org/pugs
22:29 lambdabot Title: "Revision 11075: /"
22:29 nothingmuch or just the dir
22:29 nothingmuch that will ask you to mirror
22:29 nothingmuch you can accept the defaults
22:29 nothingmuch but you probably don't want all
22:30 nothingmuch because that will take hours
22:30 fglock I'm trying with 'svn co -r HEAD http://svn.openfoundry.org/pugs/ .
22:30 ingy IT'S FASTER TO ORDER THE PUGS CD FROM AMAZON
22:30 lambdabot Title: "Revision 11075: /"
22:31 fglock done!
22:31 nothingmuch i dunno how to merge with svn
22:32 fglock nothingmuch: I'll retry with 'svk sm -C //path/to/px/fglock/pc-p6 //path/to/perl5/pc-p6' - clkao recommended
22:32 ZuluOne Juerd: frequent
22:33 nothingmuch clkao knows $n times better than me
22:33 Juerd ZuluOne: That doesn't have to be random intervally
22:33 ZuluOne doesn't have to be
22:33 ZuluOne it has no connotations one way or t'other
22:33 Juerd I'm looking for a word that does have the connotation of random intervals.
22:34 ZuluOne I don't believe such a word exists, but I'll check.
22:34 fglock nothingmuch: I get 'No such depot: home.'
22:34 nothingmuch oi
22:34 nothingmuch that seems beyond me
22:34 nothingmuch did you check //path/to/px with svk?
22:34 fglock oops - I type svn instead of svk before - one sec.
22:36 ZuluOne Recurrent has a very slight connection of irregularity.
22:36 ZuluOne Intermittent might be OK: depends on the context.
22:38 ZuluOne Fitful is quite a good fit, but would sound weird in a technical context.
22:38 ZuluOne Of course, the obvious solution is just "irregular."
22:39 ZuluOne What actually is the context?
22:40 fglock nothingmuch - I'll finish later - thanks! &
22:41 nothingmuch fglock: ok
22:43 svnbot6 r11103 | gaal++ | * Add ghci quickfix-able mode for vim
22:44 fglock left perl6
22:44 gaal audreyt: cp ~gaal/.vim/plugin/Align* to your dir
22:45 gaal every other .hs-writing vim user: http://vim.sourceforge.net/scripts/script.php?script_id=294
22:45 lambdabot Title: "Align - Provides commands and maps to help produce aligned text, eqns, declarati ..."
22:46 ZuluOne Juerd?
22:47 dduncan coming up fast ...
22:47 dduncan so who wants to do commit #11111?
22:47 dduncan the likes of which only comes about every 11111
22:49 lumi Juerd: Sporadically?
22:49 Juerd Not often enough :)
22:50 ZuluOne Juerd: What is the context?
22:51 Juerd I think I was looking for intermittent.
22:51 ZuluOne k
22:51 Juerd ZuluOne: An alarm system that beeps.
22:51 ZuluOne yep, sounds like intermittent
22:52 Juerd thesaurus++  # found it, beginning at irregular
22:52 Juerd Is English the only language that has this phenomenon (thesaurus)?
22:52 ingy rgs: YAML-0.62 uploaded
22:52 ZuluOne There is no problem that Roget's cannot solve.
22:53 Juerd ZuluOne: The halting problem?
22:53 ZuluOne If the halting problem is that you can't find a synonym for it, then sure :->
22:54 lumi It turns it into a hesitant bother
22:56 ZuluOne 145 Cessation: change from action to rest
22:56 Juerd Good night
22:56 ZuluOne gnight
23:13 * rafl needs testers for http://files.perldition.org/pugs_local_packages_conf.diff
23:14 audreyt rafl: commit it
23:14 audreyt and you get testers
23:14 audreyt automatically
23:14 rafl audreyt: I don't have the bandwidth to update my svk co and merge it, sorry.
23:14 rafl audreyt: Could you commit it, please?
23:15 rafl audreyt: The patch currently works fine for compiling pugs. I'm not sure what happens if it get's installed, yet.
23:17 audreyt ok
23:17 audreyt testing
23:20 * rafl goes for a cigarette in the meantime.
23:23 ingy stevan: ping
23:24 svnbot6 r11104 | gaal++ | * handle multi-line errors (which ghc is likely to produce :-)
23:29 diotalevi joined perl6
23:31 cognominal joined perl6
23:40 vsoni hi audreyt
23:44 * xerox pokes audreyt
23:45 audreyt pong
23:45 Entonian joined perl6
23:50 * rafl goes to bed
23:50 rafl Good night everyone

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

Perl 6 | Reference Documentation | Rakudo