Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-03-02

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:01 ispy_ joined #perl6
00:54 c9s joined #perl6
00:55 wayland76 Btw, a note to those discussing French Quotes earlier.  The new versions of Xorg, while they have their problems, can (I'm told) support multiple keyboards with different mappings
00:55 wayland76 I personally plan to make a "Perl" mapping that will contain French Quotes, and all the other Unicode I'll be wanting to use
01:01 literal has anyone been discussing possible Rakudo / Parrot participation (under TPF) in Google's Summer of Code ?
01:05 wayland76 Incidentally, I've seen comments (mostly from pmichaud) about putting various S29 methods on Any
01:05 wayland76 Is this discussed somewhere?  Link?  :)
01:09 Whiteknight joined #perl6
01:10 skids slow here today, eh?
01:11 wayland76 Well, it's the time of day
01:12 wayland76 If I want live Perl6 chat, I have to get up early, or wait for the evening :)
01:12 wayland76 literal: I haven't seen any discussions, but I only follow Rakudo, not Parrot
01:15 * skids can't even really "follow" rakudo
01:16 skids If I read all the mls and tracked down all the obscure but important blogs, I wouldn't have time to contribute left.
01:17 wayland76 Well, it helps if you write half the mls messages yourself :)
01:17 skids hehe.
01:18 wayland76 And admittedly, I'm only following the stuff that interests me
01:18 wayland76 For example, I'm ignoring the range discussions; there are enough people involved to do a good job without me :)
01:19 wayland76 And I only follow rakudo.org, the parrot website, IRC, and Moritz's blog (because of his monthly summaries :) )
01:19 wayland76 But I agree about not having enough time to really follow things
01:19 skids Me I'd be happy if I could figure out something that ISN'T being actively discussed and just needed implementation.
01:25 wayland76 skids: PIR, or pure Perl6?
01:26 skids I can handle a little PIR but I don't know most of the library.
01:26 wayland76 ok.
01:26 wayland76 Have you looked at the Rakudo ROADMAP, or are those things beyond you?  (They're beyond me :) )
01:27 skids not in a little while.  I'll take another look.
01:27 wayland76 Well, it hasn't changed :)
01:27 wayland76 (unless I'm wrong again)
01:28 wayland76 However, until the A section is done (M1, M2, M3, M4, etc) some of the others may be difficult
01:30 skids Yeah I'll be needing to cut my teeth on something a little less meaty first -- most of that stuff involves multiple components.  Gotta focus on learning one at a time.
01:31 skids And having very little CS/parser experience you don;t want me anywhere near the grammar. :-)
01:31 wayland76 oh, ok :)
01:31 wayland76 I was originally thinking of operator overloading as possibly being something achievable
01:32 skids The most interesting to me was the IO.  Both because I need it and because it is more at the level of code I'm used to -- interface gluing.
01:32 wayland76 But that seems to require the A section
01:32 wayland76 What about spec writing -- is that something that interests you?
01:32 * skids needs socket, concurrency, and types buf int8 etc.
01:32 skids What's the need there?
01:33 wayland76 Well, everything that says "DRAFT" needs work
01:33 wayland76 if you understand concurrency, I have a special task for you :)
01:34 skids Well, I understand it somewhat, have used threads, and it is something I want to learn to be very comfortable with eventually.
01:34 wayland76 Great
01:34 wayland76 I wanted to do something about the concurrency spec, but was lacking most of the relevant knowledge
01:35 wayland76 You'll need the specs checked out of the pugs repository
01:35 skids I read the Parrot spec, but the Parrot specs tend to be pretty terse.
01:35 wayland76 The current plan for S17 is for it to cover the Event Loop, POSIX signals, IPC, and concurrency
01:35 wayland76 Well, I haven't read the Parrot spec :)
01:36 skids I have pugs co'd
01:36 wayland76 The current S17 is broken into the sections I just mentioned
01:36 skids (On concurrency not the whole Parrot spec yet)
01:36 wayland76 I've been doing some work on the signals, but am fairly unqualified for most of that stuff
01:37 wayland76 Moritz tells me that the general idea is that we'll follow the stuff here: http://www.seas.upenn.edu/~​lipeng/homepage/unify.html
01:37 wayland76 This unifies the Event Loop and Threads into a single model, instead of multiple conflicting models
01:38 skids OK I'll read up on that.  Parrot also has a loop.
01:39 wayland76 I haven't gotten very far into this, but the third page of the linked PDF shows the threads implementation layered on top of the event loop
01:39 wayland76 S17 currently has a heading for the event loop with nothing under it.
01:39 wayland76 (likewise for IPC)
01:39 wayland76 If you could do something that will fill these in, that would be great
01:40 meppl good night
01:40 skids n8
01:40 wayland76 Also, I'm under the impression that the threads stuff in S17 is fairly out of date, and not necessarily in line with current plans
01:40 wayland76 'night meppl
01:40 meppl ;)
01:41 wayland76 ...so don't feel you have to align with the current S17 stuff in writing the event loop stuff
01:41 skids I'll grep ml archives creatively and see if I can dredge up material.
01:41 wayland76 ok, cool
01:41 wayland76 There was an IRC discussion a few days ago.  I'll find it for you.
01:43 wayland76 No I won't.  Use the IRC search, and look for "seas.upenn"
01:44 kanru joined #perl6
01:44 wayland76 http://irclog.perlgeek.de/search.pl?channel=perl6
01:49 wayland76 That will turn up a number of hits.  It seems more useful that you look through these yourself.
01:53 wayland76 Oh, yeah, you may also be interested in skimming over this:  http://search.cpan.org/dis​t/AnyEvent/lib/AnyEvent.pm
01:54 wayland76 I think ruoso was keen for us to have a role that could have any kind of event model on the backend
01:54 wayland76 I'm not sure whether the goals of the two documents I sent you are compatible, though :)
01:59 alester joined #perl6
02:09 skids The "unity" stuff seems right up my alley.  Very interesting paper.
02:11 bacek__ joined #perl6
02:12 alc joined #perl6
02:13 PerlJam joined #perl6
02:13 lisppaste3 joined #perl6
02:13 slango joined #perl6
02:13 xinming_ joined #perl6
02:13 oskie joined #perl6
02:13 Grrrr joined #perl6
02:13 Helios joined #perl6
02:13 IRSeekBot joined #perl6
02:13 buu joined #perl6
02:44 dalek rakudo: 0d369db | pmichaud++ | perl6.pir:
02:44 dalek rakudo: Initial version of importing setting exports into global namespace.
02:44 dalek rakudo: Has a few problems dealing with multimethods -- will get jnthn++ to help.
02:44 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​d369db5ebe505885325d15e78715dc8e46fcc54
02:45 bacek joined #perl6
02:53 aindilis` joined #perl6
03:16 frooh are "is export" methods supported in the Setting now?
03:22 TimToady last I heard, no
03:23 agentzh joined #perl6
03:23 TimToady but you can always write a wrapper
03:23 frooh it's not a big deal
03:23 frooh I was just hoping to help
03:24 frooh and I couldn't see anything that was not exported that I could pull off
03:31 Eevee_ joined #perl6
03:33 pmichaud I just added the code for 'is export' but haven't tested it yet.
03:33 pmichaud There are some issues with multimethods.
03:33 frooh hm
03:34 pmichaud my suggestion would be to try some and see what works (and what doesn't)
03:34 frooh so it's committed then/
03:34 pmichaud 0d369db, yes.
03:34 frooh gnarly
03:34 frooh will try now
03:34 ispy_ joined #perl6
03:35 * frooh tries the really easy stuff
03:36 justatheory joined #perl6
03:47 frooh what does multi mean exactly?
03:52 jan joined #perl6
03:52 frooh rakudo: my @a; @a.pop
03:52 p6eval rakudo 0d369d: RESULT«undef»
03:53 frooh rakudo: my @a = <1 2 3>; @a.pop
03:54 p6eval rakudo 0d369d: RESULT«"3"»
03:54 frooh rakudo: my @a = <1 2 3>; @a.pop(2)
03:54 p6eval rakudo 0d369d: OUTPUT«too many arguments passed (3) - 1 params expected␤current instr.: 'parrot;Perl6Array;pop' pc 6599 (src/classes/Array.pir:114)␤»
04:05 frooh ok, so I got my thing to work, but it only works as a method
04:05 frooh although splice is the same way
04:05 frooh (my thing being pop)
04:17 Eevee joined #perl6
04:22 frooh which I presume has to do with is export stuff
04:30 ml` joined #perl6
04:32 Kimtaro joined #perl6
04:35 Tene_ joined #perl6
04:48 alexn_org joined #perl6
05:20 wayland76 My understanding of multi is that it means that more than one routine can have the same name (as long as they have different signatures)
05:21 wayland76 rakudo: multi sub foo(int $int) {} multi sub foo(Str $str) {}
05:21 p6eval rakudo 0d369d: OUTPUT«Malformed routine definition at line 1, near "foo(int $i"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
05:21 wayland76 rakudo: multi sub foo(Int $int) {} multi sub foo(Str $str) {}
05:22 p6eval rakudo 0d369d: OUTPUT«Statement not terminated properly at line 1, near "multi sub "␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
05:22 wayland76 rakudo: multi sub foo(Int $int) { print "hi $int"; } multi sub foo(Str $str) {} foo(1);
05:22 p6eval rakudo 0d369d: OUTPUT«Statement not terminated properly at line 1, near "multi sub "␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
05:22 wayland76 rakudo: multi sub foo(Int $int) { say "hi $int"; } multi sub foo(Str $str) {} foo(1);
05:22 p6eval rakudo 0d369d: OUTPUT«Statement not terminated properly at line 1, near "multi sub "␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
05:22 wayland76 rakudo: multi sub foo(Int $thisint) { say "hi $thisint"; } multi sub foo(Str $str) {} foo(1);
05:22 p6eval rakudo 0d369d: OUTPUT«Statement not terminated properly at line 1, near "multi sub "␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
05:23 wayland76 rakudo: sub multi foo(Int $thisint) { say "hi $thisint"; } multi sub foo(Str $str) {} foo(1);
05:23 p6eval rakudo 0d369d: OUTPUT«Malformed routine definition at line 1, near "multi foo("␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
05:23 wayland76 rakudo: multi sub foo(Int $thisint) { say "hi $thisint"; }; multi sub foo(Str $str) {}; foo(1);
05:23 p6eval rakudo 0d369d: OUTPUT«hi 1␤»
05:23 wayland76 rakudo: multi sub foo(Int $thisint) { say "hi $thisint"; }; multi sub foo(Str $str) { say "yo $str"}; foo(1); foo "there";
05:23 p6eval rakudo 0d369d: OUTPUT«hi 1␤yo there␤»
05:24 wayland76 rakudo: sub foo(Int $thisint) { say "hi $thisint"; }; sub foo(Str $str) { say "yo $str"}; foo(1); foo "there";
05:24 p6eval rakudo 0d369d: OUTPUT«hi 1␤Parameter type check failed for $thisint in call to foo␤current instr.: 'die' pc 16347 (src/builtins/control.pir:204)␤»
05:24 wayland76 frooh: Note the difference between these last two lines.  The first one works, the second doesn't.
05:29 pugs_svn r25650 | wayland++ | Wrote this a few days ago, but forgot to svn add.
05:37 frooh wayland76: gotcha
05:38 Kimtaro joined #perl6
05:38 Sepheebear joined #perl6
05:41 justatheory joined #perl6
05:51 pugs_svn r25651 | wayland++ | S28:
05:51 pugs_svn r25651 | wayland++ | -  Did more heading changes to make it "Special Names" instead of "Special Variables"
05:51 pugs_svn r25651 | wayland++ | -  Added lots of spec cross-references
05:51 pugs_svn r25651 | wayland++ | -  Added a $*DISTRO variable (hopefully this was just an omission)
05:51 pugs_svn r25651 | wayland++ | -  Added a SoftwarePackage class that represents the name and version of the software
05:51 pugs_svn r25651 | wayland++ |         mentioned, whether this be Perl, and OS, or a Distro.
06:01 pugs_svn r25652 | wayland++ | Should've looked first -- $*DISTRO is documented in S02 :)
06:30 ispy_ joined #perl6
06:32 ispy_ left #perl6
06:34 ashizawa_ joined #perl6
07:02 alexn_org joined #perl6
07:25 alc joined #perl6
07:45 lambdabot joined #perl6
07:50 masak joined #perl6
08:03 _jedai_ joined #perl6
08:05 AzureStone joined #perl6
08:06 M_o_C joined #perl6
08:07 DemoFreak joined #perl6
08:16 moritz_ good morning
08:16 masak good morning.
08:20 masak wow, Sunday scool class with TimToady. sounds cozy.
08:21 wayland76 ...and his laptop :)
08:22 masak #perl6 is a tough habit to shake, I can attest to that. :)
08:22 wayland76 Although it reminds me of this: http://xkcd.com/224/
08:22 masak aye, a little.
08:23 masak Perl 6 is even more ostensibly like Lisp.
08:23 wayland76 I guess my problem is that, for 50% of my day, #perl6 is dead :)
08:23 masak wayland76: that's when you write awesome Perl 6 code. (duh!)
08:24 masak :)
08:24 wayland76 Anyway, I have a question that I've been saving for this evening; is it possible to call C functions from Rakudo?
08:24 wayland76 And is there documentation on this?
08:24 masak wayland76: sounds like a #parrot question.
08:25 wayland76 I can't write perl6 at the moment; it doesn't RPM
08:25 wayland76 parrot says "do it via NCI"
08:25 masak RPM?
08:25 masak yes, I guessed they would.
08:25 wayland76 But I want to know if perl6 can call NCI stuff :)
08:25 wayland76 parrot comes with a spec file that turns it into an RPM
08:26 Matt-W Morning
08:26 wayland76 perl6 doesn't.  I was talking about someone making one, and pmichaud recommended I wait until they get some more of their install stuff worked out
08:26 wayland76 good evening Matt-W :)
08:26 masak Matt-W: morning.
08:27 masak wayland76: that's your answer then, I'd say.
08:27 wayland76 masak: For RPM, yes.  But for doing NCI from perl6, none of what I said answered that
08:28 masak wayland76: ah, ok.
08:28 wayland76 ( pmichaud was talking about RPMs )
08:28 masak wayland76: if you find a constructive answer, please tell me. :)
08:29 moritz_ the perl6-examples repo is maintained by eric256, rightß
08:29 wayland76 TimToady gave us a syntax, though: http://svn.pugscode.org/pugs/docs/Per​l6/Spec/S21-calling-foreign-code.pod
08:29 masak moritz_: aye.
08:30 wayland76 The RPM .spec file and the perl6 C calls are what I need to move forward with the things I want :)
08:31 masak which are...?
08:31 wayland76 Well, writing some code that will hopefully eventually be part of 6pan (the client-side thing)
08:31 masak interesting.
08:31 wayland76 Except I want to write an object that represents a package (as in .rpm, .deb, etc)
08:32 moritz_ @tell eric256 I have a lot of patches for perl6-examples sitting in my local git repo - should I send them somewhere? or could you give me commit access?
08:32 lambdabot Consider it noted.
08:32 wayland76 And then have input and output things for that object, so you can eg. read in a 6pan package, and emit an RPM
08:32 wayland76 :)
08:32 masak moritz_: why not just commit them to your own clone on github and do a couple of pull requests?
08:32 wayland76 But use the same set of interfaces to read an RPM and emit a .deb
08:33 wayland76 or whatever :)
08:33 moritz_ masak: because I have no clone on github, and I don't want to issue ~15 pull requests :)
08:33 masak moritz_: you could squash the commits if they're related.
08:34 masak moritz_: and clones on github are cheap.
08:36 rkendall joined #perl6
08:48 moritz_ (rakudo) I've pushed a branch called match_perl to github
08:48 moritz_ it contains an implementation of Match.perl
08:48 moritz_ but it's not runnable code, since Match.new() doesn't do what I think it should do
08:49 moritz_ so it's primarily for debugging
08:51 masak moritz_++
08:51 masak I'd really like a Match.perl
08:51 dalek rakudo: 50279cf | (Moritz Lenz)++ |  (11 files):
08:51 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
08:51 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​0279cfee97ab7372d9d3bbe9cb0b5e1c335ec33
09:02 pugs_svn r25653 | moritz++ | [t/spec] more and better tests for BUILD
09:02 moritz_ masak: the question is only if pmichaud wants to see that in master for now
09:02 masak moritz_: aye.
09:03 masak moritz_: I updated 'Rakudo: good, cool, awesome, bad, ugly, weird' in the weekend. Rakudo has really seen great progress!
09:03 masak in the last half year.
09:04 moritz_ it has iindeed
09:04 NoirSoldats joined #perl6
09:05 * moritz_ submits five new bug reports
09:06 masak moritz_: wow! whence this?
09:06 masak did you write actual Perl 6 code this weekend?
09:07 moritz_ I wanted to blog about perl6-examples
09:07 moritz_ and so I looked at some of the code
09:07 masak ah, nice.
09:07 moritz_ and fixed some of it
09:07 moritz_ and wrote some other stuff
09:07 masak :)
09:07 moritz_ and in the end I didn't get around to blogging at all ;_)
09:07 masak that happens sometimes.
09:08 masak I'll soon celebrate a one-month blog block.
09:08 moritz_ oh, and I also continued writing an article about the object system, and discovered that BUILD gets the wrong arguments
09:08 masak hm, s/blog/blogger's/
09:08 masak moritz_++
09:10 rkendall joined #perl6
09:16 kane_ joined #perl6
09:21 NoirSoldats joined #perl6
09:27 masak moritz_: did you see the p6u email about tutorials?
09:27 moritz_ masak: I did
09:28 NoirSoldats joined #perl6
09:28 masak I'd post a link to your perl5-to-perl6 blog, but I just wanted to make sure you hadn't already.
09:31 masak ...to avoid double posting, I mean. the perl6 lists are really laggingly slow.
09:32 moritz_ I didn't, because it requires perl 5 knowledge
09:32 moritz_ which is explictily what the poster does not have
09:33 masak oh.
09:34 masak I'll reply, about the parts I know about.
09:39 Matt-W we need to remember that in u4x
09:39 Matt-W don't assume Perl 5 knowledge
09:39 masak Matt-W: indeed.
09:39 Matt-W there was no form development over the weekend I'm afraid
09:39 Matt-W my brain decided to hide in the corner, gibbering
09:40 NoirSoldats joined #perl6
09:42 masak that happens sometimes.
09:43 masak I was planning to do the 'update' subcommand in proto, but never got that far.
09:43 masak did a lot of other stuff, though.
09:45 ejs joined #perl6
09:56 ejs1 joined #perl6
10:09 pugs_svn r25654 | leto++ | Fix typo in Numeric
11:13 wayland76 @tell Matt-W Did I mention there's some form-specific stuff in S28?
11:13 lambdabot Consider it noted.
11:14 wayland76 @tell Matt-W (ie. things that will need to go in the Perl5 to Perl6 section)
11:14 lambdabot Consider it noted.
11:15 Matt-W No you didn't mention
11:15 lambdabot Matt-W: You have 2 new messages. '/msg lambdabot @messages' to read them.
11:15 Matt-W yes lambdabot I know
11:21 wayland76 I figured you were the appropriate person to deal with that section of things, so I just left them in a "not defined" section until you get Form.pm more done
11:21 wayland76 :)
11:21 Matt-W lol
11:22 Matt-W that sounds like a good idea
11:24 wayland76 There are two or three other things there, waiting on the Unicode spec, and infectious traits (for tainting)
11:41 masak mberends: ping
11:55 wayland76 rakudo: my Int $y; $y = "I CAN HAZ CHEEZBURGERZ?";
11:55 p6eval rakudo 50279c: OUTPUT«Type mismatch in assignment.␤current instr.: 'die' pc 16347 (src/builtins/control.pir:204)␤»
11:55 Matt-W yay
11:57 * masak wonders whether that'll ever be caught statically in Rakudo
11:57 Matt-W I'm sure there are some type checks which could be done statically
11:57 Matt-W it'd be nice
11:58 Matt-W I would rather have that explode at compile time if at all possible
11:58 masak exactly.
12:00 meppl joined #perl6
12:03 charsbar joined #perl6
12:11 wayland76 I was hoping to be able to do something like these: http://www.thingy-ma-jig.co.uk/b​log/16-01-2007/unix-error-jokes
12:11 wayland76 (you may need to scroll down a bit)
12:25 DemoFreak joined #perl6
12:25 mib_h4hlk7pu joined #perl6
12:25 mib_h4hlk7pu left #perl6
12:33 Ariens_Hyperion joined #perl6
12:41 kanru joined #perl6
13:07 wayland76 'night all :) &
13:08 masak wayland76: 'night.
13:33 rindolf joined #perl6
13:39 c9s joined #perl6
13:45 c9s joined #perl6
13:48 kanru joined #perl6
13:50 Whiteknight joined #perl6
13:54 alester joined #perl6
13:59 mberends joined #perl6
14:05 ruoso joined #perl6
14:07 ruoso Hello!
14:07 lambdabot ruoso: You have 1 new message. '/msg lambdabot @messages' to read it.
14:07 mberends left #perl6
14:10 Matt-W hi ruoso
14:10 ruoso long weekend... I realised I now really need the weekends off... I think that's what happens after you have a child...
14:11 Matt-W My brain switched itself off at the weekend
14:11 Matt-W I didn't get any coding of any kind done at all
14:11 masak ruoso: happens to the rest of us as well.
14:24 Eevee_ joined #perl6
14:25 sahadev joined #perl6
14:30 Ariens_Hyperion joined #perl6
14:33 ashizawa joined #perl6
14:38 jordilin joined #perl6
14:46 mberends joined #perl6
14:53 ashizawa_ joined #perl6
14:55 wayland76 ruoso: I agree about ARCH and XARCH
14:56 masak yes, that sounds reasonable.
14:56 mberends masak: pong (delay > 3*3600s)
14:56 rafl joined #perl6
14:57 masak mberends: oh hai. just felt like talking about proto.
14:57 masak I've been knocked out over the weekend and thus haven't implemented the 'update' subcommand.
14:57 masak I'm still thinking about doing it, though.
14:58 masak viklund sent me a pull request the other day which I mostly rejected.
14:59 mberends Sorry about knocked out, hope you're your usual self now. I haven't come up with  a YAML replacement either yet, but am determined to do so.
14:59 masak (he wants additional flags to proto, and I want to keep the flag count down and push complexity into config.proto)
14:59 masak mberends: nothing serious, just needed rest.
14:59 wayland76 oh, I figured it was the martial arts again :)
15:00 masak wayland76: you must be confusing me with some other M person. :)
15:00 masak mberends: looking forward to the YAML replacement.
15:00 wayland76 Actually, probably a T person, but I thought it was an appropriate line whether you actually do martial arts or not :)
15:00 masak mberends: specifically, being able to create a config.proto with the keys in insertion order, and with usage comments above each.
15:01 masak wayland76: I see. :)
15:01 mberends it's easy to do the easy yaml that we need, but harder to do all yaml. typical Perl situation.
15:02 masak mberends: let's take the easy way out then.
15:02 mberends :)
15:02 masak and simply fail on YAML that we don't think we'll ever need to handle.
15:02 alester joined #perl6
15:02 masak that is, recognize it, but refuse to continue.
15:02 masak if it's there, it's probably because the user is experimenting with config.proto
15:02 mberends agreed. Does a Rakudo hash preserve order?
15:03 masak better to have known but tight limitations than none at all.
15:03 masak mberends: it explicitly doesn't.
15:03 masak mberends: which means that we will not want to use a hash there.
15:03 masak (but still serialize it in the same way in config.proto)
15:03 mberends ouch. then you'd be better off with an array.
15:03 masak aye.
15:03 masak an array of pairs.
15:04 * mberends thought the same
15:04 alester Morning all.
15:04 masak mberends: but it still makes sense to serialize it as a hash, because the array doesn't add anything useful.
15:04 masak alester: marnin'
15:05 * mberends is confused by 'serialize an array as a hash'
15:06 PacoLinux joined #perl6
15:06 mberends serialize a duck as a duck, surely?
15:06 masak mberends: we have two conflicting goals when we serialize: we want to retain the order,
15:06 masak and we don't want to add cruft.
15:06 mberends yes
15:06 mberends cruft--
15:06 masak an array would be cruft.
15:06 masak it's really a hash that we want to store.
15:07 masak it's just that we have an opinion about its insertion order.
15:07 mberends an array of pairs is less crufty
15:07 masak yes, that solves the ordering problem.
15:07 masak oh, wait.
15:08 masak Perl 5. :)
15:08 mberends but I agree that an order-preserving hash would be ideal
15:08 masak it's proto that generates the config.proto file, not installer
15:08 masak we'll need to make do without the array of pairs...
15:09 * masak hacks up a solution to show what he means
15:11 Ariens_Hyperion you want to keep insertion order with efficient insertion?
15:11 kanru joined #perl6
15:12 masak Ariens_Hyperion: no, I want to keep insertion order without concern for efficiency.
15:12 masak the thing that matters here is to serve the user as well as possible by ordering the settings right.
15:13 masak mberends: http://gist.github.com/72798
15:14 mberends sorry, ongoing distraction for a few minutes...
15:14 masak that one probably doesn't handle escaping correctly, but it gets the point across, I hope.
15:14 masak mberends: no problem. take your time.
15:19 masak mberends: oh, and the last comment in http://github.com/masak/proto/commit/38​05e096988318643d4df07cc8c8902d0899c2f8 is pretty important -- I'm thinking about fixing that one before anything else. until that is fixed, dependencies essentially don't work.
15:24 pmichaud good morning, #perl6
15:24 masak good morning, pmichaud.
15:24 * Matt-W is an M person who does martial arts (from backlog)
15:25 alester Hey Patrick
15:25 Matt-W hello pmichaud
15:25 masak Matt-W: but were you knocked out this weekend due to the martial arts?
15:25 Matt-W masak: no
15:26 Matt-W masak: I was a bit giddy, but not knocked out
15:26 masak Matt-W: ok :)
15:26 diakopter hm
15:26 masak I wasn't knocked out either, just low on programming mojo.
15:26 Matt-W that seems to have been a fairly general affliction
15:26 masak aye.
15:26 Matt-W mine was all gone and still hasn't come back
15:27 masak Matt-W: start by writing a really small test. :)
15:28 masak (git rebase)++ # good magic
15:28 alester I'm going to be glad when we do things w/fewer commits to master.  The last 4 commits from moritz I had to apply one at a time bin sequence. :-(
15:28 alester s/bin/in/
15:30 nihiliad joined #perl6
15:31 wayland76 pmichaud: Is there a way to do NCI stuff from perl6?
15:31 pmichaud wayland76: you mean from Rakudo, or from Perl 6?
15:31 wayland76 oop,s rakudo :)
15:31 pmichaud either way, the answer is that it can be done from Rakudo, but I don't know how to do it.
15:31 wayland76 who does?  jnthn?
15:31 pmichaud lathos
15:32 pmichaud just a sec, I might be able to point the way
15:32 wayland76 docs helpful :)
15:32 wayland76 or other help helpful :)
15:34 pmichaud I know that the SQLite3 stuff does NCI from Rakudo -- https://svn.parrot.org/parrot/trunk/ext/SQLite3/
15:34 pmichaud as far as there being a set of helpful docs, I'm not aware of any.  And istr that the NCI interfaces might be changing soon anyway.
15:36 wayland76 Hmm.  Ok, that's worth knowing.  I guess I'll sit back and wait for progress, and work on the Specs instead :)
15:37 wayland76 (and do let me know when you need some RPM-building foo for Rakudo :) )
15:39 justatheory joined #perl6
15:40 masak ah, so the trick to mixing Perl 6 and PIR code is just to use 'use' at the right moment! why didn't I think of that? :)
15:41 pmichaud can also do   Q:PIR { ... }   :-)
15:41 masak aye, that's true.
15:41 masak I have approximately zero experience with that, though.
15:42 masak someone (possibly me) should make a simple example of Q:PIR { ... } work, and then blog about it.
15:42 Matt-W snap to it!
15:43 mberends hmm, approximately zero is as likely to be negative as positive
15:43 pmichaud oh, I can give you a simple example.
15:43 pmichaud let's see if I can come up with something we'd do in PIR instead of Perl 6....
15:43 mberends socket!
15:43 pmichaud I'm not sure how to do sockets in PIR, though :-|
15:44 mberends :(
15:44 pmichaud example?
15:44 * jnthn waves
15:44 pmichaud hiya, jnthn!
15:44 * Matt-W puts on jnthn's fanfare
15:44 pmichaud hey!  how do I get a fanfare?  ;-)
15:44 masak jnthn: oh hai
15:44 jnthn My laptop and the hotel wifi didn't get on...hopefully I'll have better luck in Odessa tomorrow.
15:45 * masak fanfares pmichaud, too
15:45 pmichaud jnthn: time for a new laptop?  :-) :-)
15:45 Matt-W pmichaud: you enter at just the right moment so that it looks like you're going to produce an example and save the day, of course
15:45 jnthn pmichaud: :-P
15:45 jnthn pmichaud: Maybe once I finish my current Rakudo grant. ;-)
15:46 pmichaud oh, I'll just write up an example to go in setting... just a sec
15:46 jnthn Any news? I see the new rakudo.org - very happy that it has a Get Rakudo link. :-)
15:47 jnthn My Belgium talk seemed to go well.
15:47 pmichaud I have a rudimentary form of importing 'is export' from setting
15:47 jnthn Great
15:47 pmichaud however, I ran into a snag.
15:47 pmichaud !TOPERL6MULTISUB mucks around with the namespaces to get its work done.
15:47 masak the new rakudo.org is indeed nice.
15:48 wayland76 alester++
15:48 alester for what?
15:48 alester Oh, thanks.
15:48 jnthn !TOPERL6MULTISUB is evil.
15:48 alester I need to let people actually coment. :-)
15:48 Matt-W oh yes it's lovely
15:48 pmichaud so, I'm not yet able to do:
15:48 pmichaud class Num is also {
15:48 jnthn It was meant to be a temporary workaround until we had .HLL and type mapping. :-|
15:49 pmichaud multi method foo() { ... }
15:49 ejs2 joined #perl6
15:49 pmichaud sub foo() is export { ... }
15:49 pmichaud }
15:49 masak alester: somehow the dashed lines (under "Rakudo.org" and under all the top links) don't agree with me, however. neither do the thick pale underlines under the post titles.
15:49 masak alester: but that's just a minor kvetch. overall, kudos.
15:50 alester I don't know what you mean " don't agree with me" means.
15:50 pmichaud it kinda bugs me that the attribution for each article stays with whoever originally posted it, not who last updated it.
15:50 masak alester: it means I don't think it adds to the esthetic value of the page. :)
15:50 wayland76 That would normally mean "makes me feel sick", but I don't think he means it that strongly in this case :)
15:50 alester masak: OK, so you're jsut expressing an opinion, not that it doesn't work in your browser or something.
15:50 masak wayland76: correct.
15:50 masak alester: right.
15:51 Tene joined #perl6
15:51 masak alester: it doesn't please my eyes, is what I wanted to express.
15:51 wayland76 It's a bit too wide for my 800x600 screen :)
15:51 pmichaud actually, I'd prefer that the non-blog articles don't have any attribution at all.
15:51 pmichaud s/articles/pages/
15:51 alester OK.  That's really about on the bottom of my list, below, say "Let people make comments on blog entries" and "convert the old blog entries." :-)
15:51 pmichaud at least, not any attribution enforced by drupal.
15:51 jnthn pmichaud: The reason it looks in the NS, if it wasn't clear, is that it's the only way I'm aware of to go from a Sub to its containing MutiSub
15:52 jnthn pmichaud: IIUC you're wanting to declare a multi method and an only sub in the same namespace.
15:52 pmichaud jnthn: we can't do a copy?
15:52 pmichaud oh, I guess not.
15:52 pmichaud jnthn: I'm trying to handle the case where we have a functional interface that is different from the method interface
15:53 pmichaud for example:     multi method join($separator) { ... }
15:53 pmichaud sub join($separator, *@array) is export { ... }
15:53 pmichaud in this case the sub gets exported instead of the method.
15:54 pmichaud same goes for things like grep, map, etc.
15:54 jnthn Is it Perl 6 spec that you are allowed to have an only sub and a multi method in the same NS?
15:54 jnthn I guess as a side quetion, are methods considered "look-upable" through the NS?
15:54 pmichaud I haven't found an answer to that yet.
15:55 jnthn I think if the second of those is true, then the first can not me.
15:55 jnthn *not be
15:55 pmichaud and don't get caught up in the 'only' part -- I'd have the same problemf or a muluti
15:55 pmichaud multi
15:55 pmichaud multi sub join($separator, *@array) is export { ... }
15:55 pmichaud at least, I think it'd be the same issue.
15:55 jnthn Oh, that surprises me.
15:56 jnthn I'd have expected that case to not be a problem.
15:56 jnthn Does the presence of "is export" automatically imply multi-ness on something?
15:56 pmichaud I don't want the method join and the sub join to both be exported.
15:56 jnthn That is, it becomes a multi candidate in the namespace scope you it into?
15:56 pmichaud no, I don't think 'is export' implies multi.  At least I haven't seen anything like that.
15:57 jnthn Right, I thought not too.
15:57 jnthn In which case I don't understand how you can export a multi method and an only sub
15:57 jnthn oh wait, you aren't
15:57 jnthn Hmm.
15:57 pmichaud anyway, I agree, if methods can be looked up in the namespace, that makes it more difficult to have an only sub and a multi method in the NS.  (more)
15:58 pmichaud but my problem here is that I want to export a sub and _not_ a method.
15:58 jnthn Yes, I see what you want to do.
15:59 jnthn thinking
15:59 pmichaud oh, S12 has:
15:59 pmichaud However, you may use C<is export> on a method
15:59 pmichaud definition to make it available also as a multi sub.
16:00 Matt-W -> home &
16:01 hercynium joined #perl6
16:04 wayland76 Back to bed for me.  Enough late-night sysadminning for now :) &
16:08 pmichaud anyway, it's not super-critical at the moment, I think we can make a fair bit of progress on setting with what we have.
16:10 TimToady you can't have a multi in any namespace governed by an only
16:10 pmichaud TimToady: okay, that helps.
16:11 TimToady I'll have to backlog to see what else is being wanted to be known :)
16:11 pmichaud a couple of quick questions would help:   do methods appear in the namespace?
16:11 masak TimToady: so subs and methods are in some sense in the same namespace?
16:13 TimToady the namespace is shared, so &foo can name a method, but foo() won't see any methods
16:13 masak makes sense.
16:14 pmichaud okay, that looks like we'll need some rakudo dispatcher work to avoid foo() as exported method.
16:14 pmichaud s/exported//
16:15 TimToady yes, when exported, looks like a multi.  not sure how the dispatcher tells the difference though...
16:15 pmichaud well, we can look at the type of the component (Method vs Sub)
16:15 TimToady well, worst case, it's a wrapper
16:16 TimToady if it's just a reference, the CORE::multi will look like a method
16:16 TimToady which is a problem
16:16 TimToady assuming untyped references, which we always have
16:17 pmichaud masak/moritz:  when merging tickets in rt, I think it would be better to merge the newer ticket into the older one instead of vice-versa
16:17 TimToady we might have to clone a method when we export it
16:17 TimToady in order to do the type transformation on it
16:18 moritz_ pmichaud: I try that, but the merge interface is rather unintuitive in that respect
16:18 TimToady or clone its descriptor, anyway
16:18 TimToady merge interface?
16:18 pmichaud moritz_: okay.  always modify the newer ticket.
16:18 masak pmichaud: understood. in this particular case, however, the newer ticket was slightly different and more correct.
16:18 TimToady oh, that was moritz_
16:18 moritz_ pmichaud: I'll do that in future.
16:18 moritz_ TimToady: from RT
16:18 pmichaud masak:  I'd still prefer to keep the older ticket number -- it's okay to merge and then use the new title.
16:19 TimToady yes, thread interaction :/
16:19 masak pmichaud: I'll do that from now on.
16:19 hercynium joined #perl6
16:20 moritz_ pmichaud/mask: regarding GSOC, jonathan leto wrote that mentoring projects should contact him directly. I plan to contact him both as potential mentor for the test suite and for user documentation
16:20 pmichaud moritz_++  # excellent
16:20 pmichaud I really thought you did a fantastic job as a mentor in 2008
16:20 pmichaud so I'm all in favor of that.
16:20 moritz_ pmichaud: and if you know of any good idea for a Rakudo project, I'd support that as well (although I don't think I'd qualify as a mentor there)
16:21 * literal is interested in being a gsoc student
16:22 frioux joined #perl6
16:22 moritz_ that's a good start (as discussed on ... what? p6c? I always confuse the various lists)
16:22 masak moritz_: I'm ok with you mentoring the user documentation. I'll want to be involved in the documentation effort somehow, not necessarily as a mentor.
16:22 literal p6l
16:22 moritz_ masak: it would be great to have two mentors anyway, one "primary" and one for backup
16:22 jnthn I'm happy to mentor a Rakudo guts project on the areas I am familiar with.
16:23 jnthn Or certainly help anyone else mentor.
16:23 masak moritz_: I'll gladly be your backup mentor.
16:23 pmichaud I'm glad to help mentor as all; I'm not sure it's a good idea for me to be primary.
16:23 pmichaud but I'm up for being a primary mentor this year if there's a project that makes sense for me to do that.
16:23 moritz_ anyway, I'll put you all CC'ed
16:25 pmichaud moritz_++
16:25 jnthn pmichaud: I'd be happy to work with you on mentoring something - in fact, I'd be happier to have both of our eyes on it.
16:25 pmichaud jnthn: agreed.
16:26 nihiliad joined #perl6
16:28 moritz_ literal: any special topic you're intersted in?
16:28 pmichaud moritz_: I'm fine with having a Match.perl in the master branch, even if it's incomplete/incorrect.
16:28 moritz_ pmichaud: ok, then I'll merge it
16:28 pmichaud moritz_: I especially like how you have the notice about it being "not completely correct" -- keep that.
16:28 moritz_ rakudo: rule w { . }; 'a' ~~ m/<w>/; say $/<w>.WHAT
16:28 p6eval rakudo 50279c: OUTPUT«Match␤»
16:29 moritz_ rakudo: rule w { . }; 'a' ~~ m/<w>/; for %($/<w>).kv -> $k, $v { say $v.WHAT }
16:29 p6eval rakudo 50279c: RESULT«Method 'HOW' not found for invocant of class 'Iterator'␤current instr.: '_block14' pc 77 (EVAL_21:44)␤»
16:29 * masak installs druid with proto and is pleasantly surprised it still works
16:29 * moritz_ found a bug
16:30 moritz_ although I tried to reproduce a different bug :/
16:30 masak moritz_: shall I send it in?
16:30 moritz_ masak: please do
16:30 * masak does
16:30 jnthn pmichaud: So if I understand TimToady correct, we can't have the sub foo and method foo in the namespace without both being multi.
16:30 pmichaud jnthn: correct.  but the multiness wasn't what I was driving at.
16:30 literal moritz_: writing Perl 6 code, pretty much. For the test suite, or the setting/library, or some project like November
16:31 pmichaud I'm interested in dealing with the case where (multi) sub foo is exported and (multi) method foo isn't.
16:31 jnthn pmichaud: OK. Backing up a little, I don't see why you've run into an issue with !TOPERL6MULTISUB
16:31 moritz_ literal: ok. I think that projects closer to the compiler (test suite/setting) have better chances of being accepted, but YMMV
16:31 jnthn OK, but the export trait you'd handle in the loadinit for something that might or might not be a multi candidate, no?
16:32 jnthn And it knows its name, and having the name and the sub PMC is enough to do an export?
16:32 masak rakudo: rule w { . }; 'a' ~~ m/<w>/; for %($/<w>).kv {}
16:32 literal moritz_: yeah, whatever would benefit Perl 6 most is fine with me
16:32 p6eval rakudo 50279c: RESULT«Method 'HOW' not found for invocant of class 'Iterator'␤current instr.: '_block14' pc 77 (EVAL_20:44)␤»
16:32 pmichaud right.  which means our exporter and importers need to be smart enough to handle multis
16:32 pmichaud which I suspect they currently aren't.
16:32 jnthn As in, other languages?
16:33 pmichaud no, just within Rakudo for now.  But I have something more to go on.
16:33 pmichaud I agree that since methods appear in the namespace TOPERL6MULTISUB may be okay as-is.
16:33 pmichaud I'll play with it a bit more.
16:34 pmichaud do we have an easy way to determine if a Sub PMC has been compiled with the :multi flag?
16:34 pmichaud (in PIR)
16:37 pmichaud ahhh, get_multisig
16:37 pmichaud okay, I can fix things from there.
16:38 jnthn IIRC there is a...yes, that
16:38 * jnthn is being sociable too ;-)
16:40 dalek rakudo: 831c21f | pmichaud++ | docs/spectest-progress.csv:
16:40 dalek rakudo: spectest-progress.csv update: 315 files, 7087 passing, 0 failing
16:40 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​31c21f7d8486def0d09b81d70486160143c9baa
16:40 jnthn TOPERL6MULTISUB is making the (safe) assumption that multis can never be anonymous.
16:40 moritz_ literal: well, there are two ways: either you wait until some project proposals show up, and apply to one, or you write your own proposal for what you want. I'll be happy to mentor anything Perl 6 related that I feel comfortable with (ie anything not touching rakudo/parrot guts)
16:40 jnthn So the namespace stuff is OK as far as I can understand.
16:41 literal ok
16:42 pmichaud jnthn: yes, it was bothering me that TOPERL6MULTISUB was always forcing things into the namespace, but that appears to be okay.
16:43 pmichaud i.e., I didn't know if methods belonged there.  Parrot is moving so that methods _don't_ appear in the namespace by default, so we'll have to adjust a bit there.
16:43 TimToady maybe methods should be stored slightly differently in the symbol table, say with a twigil
16:43 moritz_ &.method?
16:43 masak mberends: another fairly critical omission right now is that 'installer' still hard-codes the projects/ directory (and that in general it doesn't care about config.proto at all)
16:43 TimToady that means something else
16:43 TimToady more likely &!method
16:43 moritz_ right
16:43 TimToady but that's wrong too, maybe
16:44 moritz_ but '&.foo' doesn't exist yet in the symbol table, right?
16:44 ruoso er
16:44 TimToady hmm
16:44 ruoso I'd guess one can use has &.foo
16:44 ruoso I mean
16:44 ruoso there's not really a reason to forbid it
16:44 ruoso I think
16:44 szbalint joined #perl6
16:44 moritz_ but that's the &!foo entry in the symbol table, isn't it?
16:45 ruoso not in the symbol table
16:45 moritz_ right
16:45 ruoso I mean
16:45 TimToady the only problem is confusion if someone says "has &.foo;'
16:45 * moritz_ confused
16:45 ruoso &!foo is resolved as "the private attribute of the invocant of the current method"
16:45 ruoso which means that it is expanded like that by the compiler
16:46 ruoso (I think there is a line or two in the spec that says something like that)
16:46 lucs joined #perl6
16:46 TimToady if someone says &.foo, are they trying to name the foo method, or call the foo virtual method to return a Code?
16:46 TimToady so it's not gonna fly
16:47 ruoso it's calling the accessof foo that returns a method
16:47 ruoso ops
16:47 ruoso a Code
16:47 TimToady yes, so we can't use that for naming a method in the symbol table
16:47 ruoso ah... you mean in the package
16:47 pugs_svn r25655 | moritz++ | [u4x] add 'invocant' to TODO
16:47 TimToady yes
16:47 ruoso hmm
16:48 ruoso is there really a twigil needed to that?
16:48 ruoso what's wrong with Package::<&method>?
16:48 TimToady the problem is how to not pay attention to methods when you're doing multi dispatch
16:48 TimToady without having to examine the type
16:48 ruoso by the fact that methods are not in the lexical scope
16:48 ruoso subs are
16:48 TimToady which is a problem if a method is alias-exported into a multi
16:49 ruoso if a method "is export" it becomes a sub
16:49 ruoso so it becomes part of the multi sub
16:49 ruoso if it isn't exported,
16:49 TimToady it's still a method too
16:49 ruoso but it isn't part of the lexical scope
16:50 ruoso it's just in that class' package
16:50 TimToady how does the dispatch tell whether &foo is a multi or a method?
16:50 ruoso it doesn't
16:50 ruoso it's &foo itself that knows that
16:50 TimToady &foo can name a method currently
16:50 ruoso really?
16:50 TimToady if it's in the package
16:50 ruoso how?
16:50 ruoso hmm
16:50 TimToady always been that way in my head
16:50 ruoso actually
16:50 pmichaud wasn't that way in mine :-)
16:51 TimToady I know
16:51 ruoso I was thinking that "our method" was only registered in "the package" and in "the object public interface"
16:51 ruoso no local alias
16:51 ruoso er
16:51 ruoso no lexical scope alias
16:51 ruoso which means
16:51 pmichaud (actually, my head had a weird superposition of thinking it could be either and waiting for TimToady to collapse the wave function :-)
16:51 moritz_ well, TimToady's wave function only collapses if somebody tries to measure it
16:52 pmichaud which is what happened for me last night -- I tried measuring it, and got little Perl 6 and Parrot particles all over the place.  Now I have to catalogue them :-)
16:53 ruoso TimToady, in summary, I wouldn't expect for you to access a variable to get a method... a method only makes sense in relation to a class or object
16:53 moritz_ sounds kinda like an accellerator
16:53 ruoso so there's no reason to install it in the lexical scope
16:53 TimToady perhaps twigils are a kind of neutrino
16:53 moritz_ not quite massless?
16:53 moritz_ weird?
16:53 moritz_ fast?
16:54 moritz_ uncharged?
16:54 TimToady that all sounds more like the sigils
16:54 pmichaud given that we already have a periodic table of operators, this discussion sounds a bit bizarre.  :-)
16:54 ruoso TimToady, I could even argue that they don't need to be installed in the Package as well, just in the class
16:54 TimToady given the oscillation of $foo = @foo and such
16:54 moritz_ well, now we need the periodic table of terms ;-)
16:54 alester So, rkendall: Drupal help about now would be fantastic.
16:55 * ruoso brb &
16:55 * jnthn heading off again for a bit - maybe be about again tomorrow once I arrive in Odessa...
16:55 pmichaud thanks for the help, jnthn!
16:55 alester We've got rakudo.org up under Drupal right now, but lots of MT blog posts that I need to convert.
16:55 jnthn pmichaud: np, happy hacking :-)
16:56 rkendall I can help with Drupal configuration, theming, tweaks, etc. Could probably help port data over too.
16:56 alester That would be a HUGE help.
16:56 alester I'm just now getting into drupal
16:56 moritz_ speaking of the website... It would be nice to have a permanent link that always points to the latest release tarball
16:56 alester moritz_: Sure.
16:57 moritz_ like rakudo.org/latest-release.tar.gz
16:57 alester Do you have an account on the site?
16:57 rkendall I can work with a copy if you don't want to give full access to a newbie
16:57 rkendall I did have a go at signing up, but didn't let me just yet
16:57 alester yeah, that's the first thing I have to turn on.
16:57 alester I can't look at all this now, I'm at work on a fire.
16:58 alester but maybe later today I'll go down that road.
16:58 pmichaud moritz:  http://pmichaud.com/perl6/rakudo-latest.tar.gz
16:58 pmichaud at least until we figure out where we want to more permanently house the release tarballs.
16:58 moritz_ pmichaud: ah, good
16:59 moritz_ that will do for putting it into an article
16:59 rkendall alester: no probs, just let me know what you would like me to do.  I'd also be happy to help with any Drupal questions (I've been using it for years)
17:00 alester That would be huge.
17:00 moritz_ ok, I'm off now, see you all tomorrow
17:00 alester The big thing is to be able to move the Movable Type entries over.
17:00 jnthn pmichaud: Ah, one important thing I probably should tell you to save you some distraction...
17:00 alester I haven't found a decent solution.
17:00 * ruoso back &
17:00 jnthn erm
17:00 alester or any solution, really
17:00 jnthn distraction wasn't the word...hair-tearing maybe ;-)
17:00 ruoso TimToady, in fact, I was always hoping the "installing methods in Package" to be dropped at some point ;)
17:01 jnthn I *think* that the invocant is not  being typed properly in multi methods.
17:02 jnthn That likely needs fixing before you can is export a lot of stuff
17:02 dalek rakudo: 67770c3 | (Moritz Lenz)++ | docs/spectest-progress.csv:
17:02 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
17:02 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​7770c36c27e0f3d15f43b934cf5d87bf184b959
17:02 jnthn It gets easier if $?CLASS can be set.
17:02 rkendall alester: did you try the Node import modue? http://drupal.org/project/node_import
17:02 jnthn Then it's a lookup of that lexical when constructing the signature object.
17:02 jnthn OK, really afk now
17:02 alester no sir.
17:03 alester I can give you a dump of the MT data if you wanna try playing with it.
17:03 rkendall yea sure
17:04 rkendall you can email me at ross [at] rosskendall.com
17:04 alester do me a favor please.
17:04 alester Mail me at andy@petdance.com and remind me.
17:04 alester I have to do it later.
17:04 rkendall will do
17:04 alester I really gotta get back to this segfualt.
17:04 alester thanks.
17:04 rkendall cheers
17:07 araujo joined #perl6
17:11 cas joined #perl6
17:15 mberends masak: Nice gist. Your perl5 mojo is fine ;) Agreed installer must read config.proto. Do you want a PROJECT_DIR variable to pass a value to proto, or a --project-dir option?
17:17 mberends oh, he went. nevermind.
17:18 pmichaud jnthn: yes, I remembered that invocants aren't typed by default in methods, but thanks for the reminder.  :-)
17:22 c9s joined #perl6
17:41 ZuLuuuuuu joined #perl6
17:46 pugs_svn r25656 | putter++ | [elfparse] Ratchet optimization runs.  RMARE bugfixes, and a bit of noisy refactoring.
17:46 pugs_svn r25656 | putter++ | There's currently a "3;3;3;..." size of statementlist vs time nonlinearity.  Seemingly preexisting but recent.
17:51 aindilis joined #perl6
17:58 szabgab joined #perl6
18:06 pmurias joined #perl6
18:12 Psyche^ joined #perl6
18:15 nigel joined #perl6
18:16 trexy hi
18:16 trexy I'm interested in foreign language eval in Perl6
18:16 aindilis` joined #perl6
18:17 trexy I'm pretty sure I saw such a thing flying by ... is this in the spec still?
18:21 TimToady eval string, :lang<APL> was a proposed form, however it really depends on the target language implementing an eval
18:23 TimToady so more like "use APLcore:from<APL>; APLcore::eval($string)"
18:23 ruoso TimToady, in the end, do we have any change in the way "our method" works?
18:25 ruoso or better put... do "our method" define a lexical symbol or not?
18:25 TimToady if it does, it needs to be distinct from &foo
18:25 awarefish joined #perl6
18:26 ruoso TimToady, I was thinking that "our" and "my" already mean something different depending on what they are declaring
18:26 TimToady what is the easiest way to fetch the Code for a method via .^ currently?
18:26 ruoso Foo.^can('method')
18:27 ruoso or, if you want to do it in a non-OO way
18:27 pmurias ruoso: hi
18:27 ruoso Foo.^methods(:local).grep: { /name/ }
18:27 ruoso hi pmurias
18:28 TimToady I would like some syntactic relief for that, somehow
18:28 ruoso TimToady, but why would anyone try to get a method for a class without doing it in an OO way
18:28 ruoso er... while still getting a syntatic relief, I mean
18:28 ruoso but one can always extend the use of :local
18:28 ruoso Foo.^can('method', :local)
18:28 pmurias [wybierz semestr zimowy]
18:28 pmurias sorry
18:29 TimToady Foo.^<method> is what I'm thinking about
18:29 ruoso pmurias, I was thinking you could apply to GSoC
18:29 ruoso TimToady, metapostcircumfix?
18:30 kane__ joined #perl6
18:30 TimToady also $obj.^{$somemethod}
18:30 ruoso but this having the regular OO
18:30 ruoso not only 'local' lookup
18:31 ruoso TimToady, but I'm not sure it's really worth the trouble... $obj.^can($somemethod) is not that bigger
18:31 ruoso even because you don't even need the &
18:31 ruoso s/&/^/
18:31 TimToady "is export" doesn't want .can
18:31 ruoso hm?
18:32 ruoso "is export" autogenerates a sub for that method, afaiu
18:33 TimToady want to avoid the indirection if the method implementation knows how to be called as a sub, treating the invocant as a normal positional
18:33 ruoso TimToady, I didn't mean any indirection at all
18:33 ruoso in SMOP, it's all Code
18:33 ruoso that have .signature
18:34 ruoso the point is "where is this Code installed"?
18:34 TimToady ::?CLASS::DEFAULT ::= <what?>
18:34 ruoso ::?CLASS::DEFAULT ::= ::?CLASS.^can('something')
18:35 TimToady no, that pulls in an ancestor's .something
18:35 ruoso ::?CLASS::DEFAULT ::= ::?CLASS.^can('something', :local)
18:36 ruoso considering that we already use :local when listing the methods and attributes of a class via .^methods
18:36 ruoso and .^attributes
18:37 ruoso TimToady, but... what is ::?CLASS::DEFAULT anyway?
18:37 TimToady where "is export" puts the multi alias for export
18:38 ruoso well...
18:38 TimToady that's how exports work in general
18:38 ruoso since I consider "is export" generates a sub
18:38 ruoso it'd be installing it in
18:38 TimToady export tags are just sub-packages
18:38 ruoso ::?PACKAGE::EXPORT::DEFAULT
18:38 TimToady I don't want it to generate a sub.  I want the method to *be* the sub :)
18:38 ruoso anyway
18:38 ruoso it doesn't change that
18:39 ruoso and "is export" probably can't use ::?CLASS directly anyway
18:39 ruoso since it's a trait
18:39 TimToady yes, forgot the ::EXPORT, but same idea
18:40 TimToady well $?CLASS then, which should work for a package name too
18:40 ruoso if you think in method as "a code installed in a class" and a sub as "a code installed in a package or the lexical scope"
18:40 ruoso it doesn't really matter if they are the same object or not
18:41 TimToady it does if you don't want to duplicate code for method is export
18:41 TimToady it doesn't matter semantically, true
18:41 TimToady other than the semantics of chewing up more memory :)
18:42 TimToady I just want to make sure that if I alias a method's Code into a lexical/package scope, I can call it as a sub
18:42 ruoso TimToady, in SMOP, you would have a "mold" and an "outer" scope. Then you'd get two different indirections, one for the method, with the original signature, and other for the sub, with the modified signature...
18:42 TimToady and not just have it a special case of "is export"
18:42 ruoso it doesn't need to be an overhead
18:43 ruoso it can be made as an alternative indirection
18:43 TimToady but then there's indirection...
18:43 ruoso but there's always some level of indirection
18:44 TimToady I'd be much happier if were simply the case that a method's Code simply required an invocant as the first positional parameter
18:44 ruoso (the "mold" means the "bytecode" ready to be processed in SMOP)
18:44 ruoso TimToady, that would require an additional indirection for calling methods
18:44 ruoso you need two different objects, because they answer different things for .signature
18:45 TimToady no, we just say that it's okay for a sub to say that it will treat its first arg as the invocant
18:45 ruoso uh?
18:46 TimToady &foo.signature is allowed to return ($foo: $bar, $baz)
18:46 ruoso then you're making the invocation more complex
18:46 TimToady as far as the caller is concerned, it can still call it as &foo.($f,1,2)
18:46 TimToady not at all
18:46 TimToady it's simpler
18:47 szabgab joined #perl6
18:47 * ruoso and TimToady are in different axes of this argument
18:48 TimToady have a meeting in 12 minutes
18:48 TimToady and have to commute to work
18:48 PerlJam As long as you aren't grinding an axe on anyone  :)
18:48 TimToady to be continued... &
18:50 ruoso TimToady, if &foo.signature is allowed to return ($foo: $bar, $baz) it will need to decide if the invocation has the &foo.($f,2,3) or the &foo.($f: 2,3) format... I don't see how that can be simpler...
18:51 pmurias ruoso: what would be a SMOP task appropriate for GSoC?
18:51 ruoso on the other hand, if the installed sub and the installed method are different objects that share data (the code to be run after the signature binding), they have no exceptions, they are plain methods and subs that behave in an uniform way...
18:51 ruoso pmurias, the one I had in mind was to hunt down the memory leaks
18:53 pmichaud PerlJam: rakudo announcement now available at http://rakudo.org/node/12, if you're still wanting to forward it somewhere else.
18:55 ruoso TimToady, I agree that makes the compiling/init a bit more complex, but makes everything straightforward after that
18:56 pmurias ruoso: to apply for GSoC i have to register at GSoC's site once the student application period starts?
18:56 ruoso pmurias, yes
18:56 ruoso but I guess you can start making a draft proposal
18:56 ruoso and I can help you out with it
18:58 ruoso one interesting thing about that idea for GSoC is that you have very clear deliverables, since we already have a way to measure how many leaks SMOP has
18:58 pmurias i think fixing the leaks would require using a real GC as the spec requires circular references like $?BLOCK and $?ROUTINE
18:59 ruoso pmurias, by real GC you mean trace GC?
18:59 pmurias yes
18:59 ruoso I'm not sure that's an interesting idea...
18:59 ruoso using refcounting GC is a very important aspect of the SMOP-P5 integration
19:00 ruoso pmurias, maybe it would require weak-refs
19:06 FurnaceBoy joined #perl6
19:06 pmurias ruoso: wouldn't ref counting create a portability problems as Perl 6 code which would run fine on a trace-GC'ed implementation will leak memory on a ref-counting one
19:10 ruoso pmurias, hmm... maybe... but there might be other solutions to that...
19:10 ruoso I'm not that all against trace gc
19:10 ruoso but the idea of being compatible with p5 is something that is now very important to me
19:11 alester pmichaud: YOu know you can assign better URLs for nodes, yes?
19:12 ruoso I do think my greatest milestone for SMOP is having it merged inside p5
19:12 alester Not suggesting we do all the time (in fact, I think we shouldn't) but for stories/pages that are a big deadl, I think rakudo.org/notable-release-whatever is better than rakudo.org/node/48
19:12 PerlJam alester: rakudo.org/releases/vienna  maybe?
19:13 alester prob'ly
19:13 schmalbe joined #perl6
19:18 Ariens_Hyperion joined #perl6
19:19 PerlJam someone mentioned http://www.programmersheaven.com/2/Perl6-FAQ on perlmonks in response to someone's query regarding perl6.  That looks very pugs-centric from where I sit (and a tad dated).   I wonder if we can get it updated.
19:19 alester Something came loose @ pmichaud's mail account.
19:20 ruoso pmurias, I think the support for weak references in SMOP needs to be a bit different then other implementations...
19:20 DemoFreak joined #perl6
19:22 ruoso pmurias, I was thinking we can make something like lowlevel_refcnt_weaken(&pointer)
19:22 pmichaud yes, apparently the mail daemon on my server was stuck -- I unstuck it.
19:23 ruoso pmurias, then it would add the address to the pointer in a list related to the object that is pointed to, in a way that the address of the pointer is overwritten as pointing to false when the object is destroyed...
19:25 ruoso pmurias, we would just need to hold a pointer to a list of some sort in the same struct where we hold the lock and the refcnt
19:25 ruoso and overwrite all weak references before calling DESTROYALL
19:27 ruoso pmurias, what do you think?
19:29 ruoso of course lowlevel_refcnt_weaken could only be called in objects that are refcounted,,,
19:31 pmurias that would work...
19:31 ruoso so that means this should be promoted to the same level as SMOP_REFERENCE and SMOP_RELEASE
19:31 ruoso SMOP_WEAKEN(&address)
19:33 pmurias ruoso: what are all the reasons for staying with ref-counting instead of a trace gc?
19:33 ruoso only one actually
19:33 ruoso stay compatible with p5
19:34 pmurias that is to make incrementing the refcount on a smop object from p5 faster?
19:36 ruoso no, my idea is that SV and SMOP__Object structures merge together
19:36 ruoso i.e.: add a SMOP__ResponderInterface* as the first member of SV
19:36 pmurias that would mean that all smop object will be forced to use refcounting
19:37 ruoso if they are subject to GC
19:37 ruoso if they aren't they can just implement REFERENCE,RELEASE and WEAKEN as noops
19:37 ruoso (or if they are managed some place else, for that matter)
19:37 pmurias a trace-gc'ed object can fake REFERENCE and RELEASE
19:37 ruoso yes
19:38 ruoso but trace gc requires different infraestructure
19:38 pmurias my telling the trace gc that that object is used somewhere else e.g. $refcout{$object}++
19:39 ruoso you need to be able to "trace"
19:39 ruoso and you can't do that simply with REFERENCE and RELEASE
19:39 ruoso you need the methods to FLAG as well
19:40 ruoso the biggest problem is that in order to "trace" to work, all objects need to implement it
19:40 ruoso you can't have no-ops
19:41 ruoso I'm not really sure it is possible to mix them together
19:41 ruoso (except by make a refcounting reference to the trace gc)
19:41 ruoso (which is what you've suggested)
19:44 pmurias joined #perl6
19:46 pmurias ruoso: i'm aware that in order to mix ref-counting and trace gc, the trace-gc has to keep a ref-count for it's objects which were ref-counted
19:46 pmurias but i don't see a big problem with it
19:46 ruoso except that you don't win much
19:47 ruoso since the refcounting bugs will persist
19:47 ruoso the performance penalty for changing the refcount will still happen
19:48 ruoso and you will still have the other GC running together
19:49 pmurias only perl5 will be able to generate refcouting bugs as all smop stuff should be changed to a trace gc once it's working
19:50 ruoso I don't know... I still feel that is not going to get us much benefit
19:50 ruoso how would you switch between trace and refcount?
19:50 ruoso I mean
19:50 ruoso today all objects should receive the proper REFERENCE and RELEASE calls
19:51 ruoso how would that policy translate in the mixed environment?
19:57 pmurias i see the problem now... ref-counted stuff doesn't have the seen during tracing flag
19:58 estrabd joined #perl6
20:00 mikehh joined #perl6
20:00 ruoso but I think SMOP_WEAKEN should probably be the key to solve 99% of the problems we have now
20:12 trexy thanks for the reply regarding foreign language eval --- I'm still trying to get my head around how it would work
20:12 trexy take a java eval section - won't it need a JVM or does it need a Parrot JVM?
20:14 trexy actually Java is not a good example - I'm thinking of Ruby or Python
20:14 ruoso trexy, in Parrot, there's probably going to be a Java compiler targetting parrot bytecoe
20:15 ruoso in that case a java eval  could use that compiler and don't require a JVM at all
20:15 trexy ok - so when you have a Java eval section - the Perl6 runtime passes through to
20:16 trexy the underlying Parrot java -» bytecode translator
20:16 ruoso but in SMOP, otoh, that would probably require a JVM and a JDK, just as Inline::* requires in p5
20:16 trexy ok
20:17 ruoso Parrot tries to integrate languages
20:17 ruoso SMOP tries to glue runtimes
20:17 trexy you could imagine a web server that had a parrot engine and could dispatch to multiploe languages
20:17 ruoso indeed.
20:17 trexy will SMOP do the same? - CGI without the shell ?
20:18 ruoso what do you mean by "CGI without the shell"?
20:18 trexy traditional webservers used to dispatch actions via CGI and the #!/ shebang line
20:18 ruoso trexy, there's an experimental mod_parrot already, iirc
20:18 trexy nominated the interpreter to use
20:19 ruoso trexy, ah.. I see... well.. it's not the webserver that takes notice of #!, it's the operating system (unless you're in windows I think)
20:19 ruoso but yes, you could think on a mod_smop to the same extent you can think of mod_perl
20:19 trexy yes - so Perl/Parrot could replace the operaing system as the magic glue here
20:20 ruoso well... that is already possible with perl5
20:20 ruoso i.e. mod_perl
20:20 ruoso but...
20:20 ruoso parrot will be able to provide security features that p5 doesn't have
20:20 ruoso and SMOP won't have as well
20:21 dalek rakudo: 66595b0 | pmichaud++ | build/gen_metaop_pir.pl:
20:21 dalek rakudo: Add R metaops for standard infix operators.
20:21 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​6595b059be2e007c42a657291c4fdf187238bb9
20:21 trexy I'm still trying to get my head around SMOP
20:22 ruoso trexy, SMOP is a runtime implementation for Perl 6 that tries to stay in the same level as p5
20:22 ruoso (in terms of infra-estructure)
20:22 ruoso and hopefully will be integrated in p5 at some point
20:23 trexy ok  cool
20:23 trexy and it would call out to other runtime environments
20:23 trexy ?
20:23 ruoso yes
20:23 ruoso it already does it
20:24 ruoso SMOP can eval p5 code by using an embedded interpreter
20:24 Casan joined #perl6
20:25 trexy like apache embeds a perl interpreter for mod_perl = kind of / not really
20:25 ruoso mildew: my $p5 = ::P5Interpreter.new(); say $p5.eval("Is the mildew evalbot working again?");
20:25 p6eval mildew: OUTPUT«Can't locate object method "scope_declarator__S_097my" via package "STD" at ../../src/perl6/STD.pm line 2279.␤»
20:25 ruoso no, it isn't
20:27 ruoso trexy, yes, just like mod_perl
20:27 frioux is that what mildew is?  p5 in parrot?
20:27 ruoso frioux, no.. mildew is a Perl 6 compiler that uses STD as its parser and SMOP as its target
20:27 frioux ah, k
20:28 ruoso the compiler itself is written in perl 5, but it compiles code down to the C code for loading the bytecode
20:28 ruoso it even can generate a shared object to be loaded later
20:28 ruoso which is how the mildew CORE is being implemented in Perl 6
20:29 frioux interesting
20:32 ruoso so after the code is compiled, it doesn't require p5
20:32 frioux interesting
20:32 frioux so that's a bootstrapping help then
20:33 Khisanth joined #perl6
20:35 nihiliad joined #perl6
20:35 ruoso frioux, not only "help"... SMOP is intended to be a real Perl 6 implementation...
20:36 frioux right
20:36 frioux ok
20:36 frioux so it doesn't really depend on p5 though
20:36 ruoso the runtime doesn't
20:36 frioux because it compiles down to c
20:36 ruoso the compiler doe
20:36 frioux right
20:36 frioux right
20:36 frioux that's pretty cool
20:36 ruoso at some point, smop will have a regex engine
20:37 ruoso then we can start trying to compile STD using mildew
20:37 frioux yeah
20:37 ruoso and when that is succeeded,
20:37 frioux rakudo isn't even using STD yet is it?
20:37 ruoso no, but it tries to stay as close as possible
20:38 frioux right
20:38 frioux when you say regex engine you mean full on perl 6 regexes right?
20:38 ruoso yes, one that can run STD
20:39 frioux I haven't actually looked at STD; I just saw it on the screen at a talk larry did
20:39 frioux it looked a little gnarly to me
20:39 ruoso it's on pugs repo
20:39 frioux yeah, I just haven't looked is all
20:39 ruoso src/perl6/STD.pm
20:39 trexy so once you compile will it run on top of SMOP?
20:40 ruoso once SMOP has a regex engine that is able of running STD
20:40 ruoso we'll compile STD to SMOP
20:40 ruoso then we can reimplement mildew in Perl 6
20:40 ruoso and we have it bootstrapped
20:40 trexy cool ;-)
20:41 trexy good luck with the regex engine
20:41 trexy I imagine that would be useful for other projects as a standalone
20:41 ruoso we're still pretty far from writing it
20:41 ruoso there's still much of other runtime features that need to be implemented first
20:44 diakopter what other runtime features?
20:49 ruoso well, a lot, actually...
20:49 ruoso we now pass the first sanity test
20:50 ruoso and when I mean the first, it's really the first file
20:50 ruoso t/01-sanity/01-tap.t
20:54 Southen joined #perl6
20:57 ruoso but I'd really like to have some clarifications on S11
20:57 xinming joined #perl6
20:59 bacek good morning
20:59 ruoso I still don't understand much how "use" works
21:08 [particle]1 joined #perl6
21:21 skids number 572 on list of distracting thoughts for the day:
21:22 skids In a lazy list environment, what would the best sort() be... some kinda qsort/bubble hybrid that finds the next value to feed quickly?
21:22 * skids shoves his list of things not to get distracted about back under the living room rug.
21:24 Kimtaro joined #perl6
21:28 mikehh joined #perl6
21:35 REPLeffect joined #perl6
21:39 Southen_ joined #perl6
21:42 Ariens_Hyperion skids: it doen't matter you would have to evaluate each element anyway
21:43 skids on the first few passes, no, data locality would be a lost cause.
21:44 skids but for example in a bubble sort after a few passes you might cache how far back to start to quckly produce a next value.
21:45 Ariens_Hyperion I don't understand
21:46 Ariens_Hyperion you cache the beggining of the next iteration?
21:46 skids in a lazy list environment you try to keep a low memory profile because you have a lot of chained operations.
21:47 Ariens_Hyperion but in both cases the list is kept in memory anyway
21:47 skids right but you do not have to look at the entire list to produce the greatest value after a few passes.
21:48 skids so you could get away without looking at the back of the list for a few iterations.
21:49 Ariens_Hyperion in that case
21:49 Ariens_Hyperion a linear search wold be as good as a bubble sort
21:50 PerlJam skids: sounds like mergesort is still the best performer to me  :)
21:50 skids not quite it's the bubble dragging that lets you get away with it.
21:51 Ariens_Hyperion skid? why?
21:51 sahadev left #perl6
21:51 skids PerlJam: it would be interesting to see some CS on the matter.  Anyway I shouldn't let it take up my time :)
21:52 Ariens_Hyperion with manipulation over nodes you can get the same performance
21:53 Ariens_Hyperion Knuth needs to update the Art of Computer Programming to include lazy environs
21:54 PerlJam Ariens_Hyperion: He's only 4 books into a 7 book set.  He'll be dead before he gets to 7 at this rate, *especially* if he keeps updating the existing books.
21:54 skids Ariens_Hyperion: because you know how far you dragged the possibly-2nd-largest value before dropping it, and everything under it on the list is definitely smaller.
21:55 Ariens_Hyperion skids but insertion sort does fewer node manipulations
21:57 skids Ariens_Hyperion: knock yourself out, I'm gonna bow out before I start obsessing over it.
21:58 skids Though it did make me ponder just how evil reverse() could become.
21:59 Ariens_Hyperion moral of story
21:59 Ariens_Hyperion use a stable merge
21:59 Ariens_Hyperion or radix
21:59 Ariens_Hyperion :p
21:59 skids (The question is not the total number of node manipulations but when, and in what data access order.)
22:05 pmurias joined #perl6
22:07 pmurias ruoso: mildew runs 01-sanity/02-counter.t too
22:08 ruoso cool
22:08 ruoso now we're only 100k-2 tests away ;)
22:08 pmurias not really ;)
22:08 pmurias re cool
22:10 ZuLuuuuuu left #perl6
22:11 pugs_svn r25657 | pmurias++ | [mildew] add TESTS which contains the (3 for now) tests from the main test suit we can run
22:19 donaldh joined #perl6
22:27 ruoso @tell pmurias I think you missed adding VAST/Autoincrement.pm
22:27 lambdabot Consider it noted.
22:50 xinming joined #perl6
23:00 Maddingue joined #perl6
23:02 awwaiid_ joined #perl6
23:02 pmichaud2 joined #perl6
23:04 charsbar joined #perl6
23:04 edenc joined #perl6
23:04 Lorn joined #perl6
23:04 krunen joined #perl6
23:04 BinGOs joined #perl6
23:04 ascent_ joined #perl6
23:04 ilogger2 joined #perl6
23:04 perlbot joined #perl6
23:04 jrockway_ joined #perl6
23:06 TimToady joined #perl6
23:06 jrockway_ joined #perl6
23:06 perlbot joined #perl6
23:06 ilogger2 joined #perl6
23:06 ascent_ joined #perl6
23:06 BinGOs joined #perl6
23:06 krunen joined #perl6
23:06 Lorn joined #perl6
23:06 edenc joined #perl6
23:06 xinming joined #perl6
23:06 Southen_ joined #perl6
23:06 nihiliad joined #perl6
23:06 estrabd joined #perl6
23:06 DemoFreak joined #perl6
23:06 trexy joined #perl6
23:06 Patterner joined #perl6
23:06 kanru joined #perl6
23:06 alester joined #perl6
23:06 rafl joined #perl6
23:06 mberends joined #perl6
23:06 meppl joined #perl6
23:06 lambdabot joined #perl6
23:06 Sepheebear joined #perl6
23:06 agentzh joined #perl6
23:06 bacek joined #perl6
23:06 nbrown joined #perl6
23:06 wayland76 joined #perl6
23:06 dukeleto joined #perl6
23:06 yahooooo joined #perl6
23:06 cognominal joined #perl6
23:06 Maghnus joined #perl6
23:06 Ehtyar joined #perl6
23:06 SamB joined #perl6
23:06 broquaint joined #perl6
23:06 meteorjay joined #perl6
23:06 rhr joined #perl6
23:06 Exodist joined #perl6
23:06 p6eval joined #perl6
23:06 frooh joined #perl6
23:06 Caelum joined #perl6
23:06 namenlos joined #perl6
23:06 r0bby joined #perl6
23:06 tarbo2 joined #perl6
23:06 felipe joined #perl6
23:06 Porsbo_ joined #perl6
23:06 s1n joined #perl6
23:06 samlh joined #perl6
23:06 carpftb_ joined #perl6
23:06 drbean joined #perl6
23:06 Matt-W joined #perl6
23:06 integral joined #perl6
23:06 clkao joined #perl6
23:06 pjcj joined #perl6
23:06 xuser joined #perl6
23:06 cls_bsd joined #perl6
23:06 c1sung joined #perl6
23:06 hcchien joined #perl6
23:06 gfldex joined #perl6
23:06 bigpresh joined #perl6
23:06 sunnavy joined #perl6
23:06 jnthn joined #perl6
23:06 Gothmog_ joined #perl6
23:06 Tene_ joined #perl6
23:06 charsbar joined #perl6
23:14 REPLeffect joined #perl6
23:18 pmurias joined #perl6
23:19 pugs_svn r25658 | pmurias++ | [mildew] added missing file
23:22 bacek_ joined #perl6
23:34 Casan joined #perl6

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

Perl 6 | Reference Documentation | Rakudo