Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2007-05-31

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:08 guinex joined #perl6
00:08 Aankhen`` Hmm... "It's worth noting if you do not define parameters with the read-write trait explicitly, they will be copies, not references." # aren't they readonly aliases to the variables passed in by default?
00:09 Aankhen`` Er, to the values passed in.
00:10 moritz ?eval sub f($x){$x=3} f(2)
00:10 evalbot_r16572 changed their nick to evalbot_r16576
00:10 evalbot_r16576 Error: Can't modify constant item: VInt 2
00:11 moritz ?eval sub f($x){$x=3} my $y=2; f($y)
00:11 evalbot_r16576 Error: Can't modify constant item: VRef <Scalar:0xb67902f8>
00:14 thoughtpolice Aankhen``: i'll change it in a sec.
00:14 Aankhen`` Kewlies.
00:14 mr_ank joined #perl6
00:15 Aankhen`` Also, "You can also explicitly make your parameters have a name, by prefixing it with :" # this isn't really very clear.  You might want to say something like: "You can force certain parameters to always be passed by name rather than positionally, by prefixing them with :."
00:16 Aankhen`` The original version makes it seem as if all you're doing in :$foo is explicitly marking that parameter as having the name "foo".
00:16 Aankhen`` thoughtpolice++ though, nice article again. :-)
00:17 thoughtpolice thanks :)
00:17 thoughtpolice i have two in draft, the round 3 and an interlude
00:17 Aankhen`` I wait with bated breath.
00:17 Aankhen`` What's the interlude?
00:17 thoughtpolice but the interlude will probably come a bit later after I've collected more thoughts
00:18 thoughtpolice coming from a haskell background I like functional programming. so the article is about functional[-esque] programming in perl 6.
00:18 Aankhen`` Ah.
00:19 weinigLap_ joined #perl6
00:19 prism joined #perl6
00:21 thoughtpolice so far I've gotten a section on higher order functions, and as I work with it more I'll find more parts of the language that relate to functional programming.
00:21 thoughtpolice Aankhen``: I made the changes, though.
00:21 Aankhen`` That's cool, thoughtpolice++ :-)
00:21 thoughtpolice :)
00:21 thoughtpolice higher order functions are the bomb. i got really close to them because of haskell.
00:22 Aankhen`` Heh.
00:22 thoughtpolice and now I don't think I can go back to passing function pointers 'n stuff.
00:22 Aankhen`` (languages without higher-order functions)--
00:22 thoughtpolice agreed.
00:23 * Aankhen`` tries to think of some modern dynamic languages without HOFs
00:23 Aankhen`` .
00:23 Aankhen`` I wonder if PHP qualifies.
00:23 Aankhen`` IIRC, you can pass functions as values and create anonymous functions, but there's some weird syntax for it.
00:24 thoughtpolice i wouldn't know off the top of my head; i 'quit' php a while back.
00:24 Aankhen`` I never did PHP, just picked up some stuff from being exposed to way too much.
00:24 * Tene highly recommends the book 'higher order perl'
00:24 thoughtpolice i met this girl called rails and a friend called seaside, and shortly thereafter me and php broke up. :(
00:25 Aankhen`` LMAO.
00:25 Aankhen`` Nice way to put it.
00:25 thoughtpolice i thought so too.
00:25 thoughtpolice we agreed (or, at least, I stated) it was better for both of us.
00:25 Aankhen`` I thought PHP was neat when I first heard about it.  Then I started reading about it, and I couldn't stand it.
00:26 thoughtpolice i just kind of started like, you know, hating it.
00:27 Aankhen`` Hehe.
00:27 Aankhen`` Okay, I'mma go back to Lisp now.
00:27 thoughtpolice it felt messy and bloated (one namespace? :/), and once I saw how much more abstractly I could accomplish things in say, Rails, with a nice design pattern to boot, there wasn't a question in my mind.
00:28 thoughtpolice then again I'm not much of a web developer these days, but when I have to, I try to do rails or at least use a framework of some sort.
00:29 Aankhen`` Have you seen Catalyst?
00:29 knewt joined #perl6
00:29 thoughtpolice that perl framework? Yeah, I haven't investigated it too much
00:29 Aankhen`` It's really very useful.
00:29 thoughtpolice saw something on reddit a while back, Catalyst vs. Rails or something I think.
00:30 thoughtpolice i haven't heard much of it though in discussion, however. just from the jist of the article though I got interested to a degree.
00:30 Aankhen`` You should check it out if you're doing any Web development. :-)
00:30 thoughtpolice note this is really befeore I got into perl 6 and whatnot, so I have an excuse :P
00:30 Aankhen`` Hehehe.
00:30 thoughtpolice 'cause until I started with perl 6
00:31 thoughtpolice I'd say I hadn't done perl in like, 3 years.
00:31 rashakil joined #perl6
00:31 Aankhen`` Owa.
00:31 thoughtpolice some trivial apps and whatnot; when I saw pugs and perl 6 my feeling for the language was fairly revived as I'm sure you can tell.
00:31 Aankhen`` Perl 6 has that effect. ;-)
00:31 thoughtpolice one of them got used by a commercial company, though
00:32 thoughtpolice some old port scanning code I wrote.
00:32 Aankhen`` Fun.
00:32 thoughtpolice it was unbearably slow but the person who emailed me said they liked it because A) it was simple. B) they didn't have to write it. C) speed was of little importance since the thing only had to be run once every so often or somesuch.
00:32 thoughtpolice but I was about 14 at the time
00:32 thoughtpolice so I was pretty proud
00:33 nipotaway changed their nick to nipotan
00:37 nekokak joined #perl6
00:37 thoughtpolice wow, thanks apple software update! you totally killed my terminal sessions and for some reason made my system unresponsive! way to go.
00:38 dduncan really?  its never done that to me
00:39 thoughtpolice yeah, my cpu usage shot to like 100% in an instant and half my stuff became totally unresponsive. luckily I have screen + ssh though so I didn't really lose anything.
00:39 thoughtpolice what was weird is it didn't do it until like, 75% way through the update.
00:40 thoughtpolice oh well, no harm no foul.
00:41 rlb3 joined #perl6
00:47 knewt joined #perl6
01:16 SubStack joined #perl6
01:18 dolmans joined #perl6
01:27 zamolxes joined #perl6
01:38 [particle] joined #perl6
01:55 [particle1 joined #perl6
01:56 rlb3 left #perl6
01:56 ingy hola
02:06 weinigLap joined #perl6
02:08 offby1 buenas días
02:10 ingy hola
02:10 ingy gaal: Syck is annoying me
02:11 ingy its emitter seems to like to put trailing spaces on certain lines
02:11 ingy which is legal but annoying
02:12 ingy and hard to write tests for that work against saner implementations
02:12 ingy so I want to complain to you gaal
02:12 ingy :)
02:24 TimToady didn't you help write the spec?
02:26 dduncan come now, people are allowed to complain about their own work
02:27 TimToady heh
02:39 mako132_ joined #perl6
02:44 dduncan ?eval my $v1 = s1($v2);
02:44 evalbot_r16576 Error: No such subroutine: &s1
02:45 dduncan my $v1 = s1(:a1($v2));
02:45 dduncan ?eval my $v1 = s1(:a1($v2));
02:45 evalbot_r16576 Error: No such subroutine: &s1
02:46 dduncan how come no compile time errors?
02:46 dduncan anyway, what I wanted to demonstrate was that the second example gave different compile time errors than the first
02:46 dduncan the first example complained that $v2 was not declared
02:47 dduncan but the second was a lot more cryptic, simply saying Unexpected "$v1" ...
02:47 dduncan the $v2 not being declared was the problem, but it took me awhile to figure out why I got the other error, since things looked syntactically correct
02:47 dduncan (and the not being declared was due to a misspelling)
02:48 dduncan so it seems invoking a positional arg gives the better error, but a named arg the worse error
02:48 dduncan evalbot doesn't show it, but you can try entering the snippets I quoted at the pugs command line
02:58 japhb joined #perl6
04:03 baest joined #perl6
04:07 LCamel_ joined #perl6
04:07 scw joined #perl6
04:12 beppu joined #perl6
04:12 ofer joined #perl6
04:12 GeJ joined #perl6
04:12 idiotmax joined #perl6
04:12 spinclad joined #perl6
04:12 beppu_ joined #perl6
04:14 idiotmax_ joined #perl6
04:15 ahmadz joined #perl6
04:16 ahmadz good morning ;-)
04:16 grick12345 joined #perl6
04:18 offby1 mrgn stnly
04:18 ofer joined #perl6
04:18 GeJ joined #perl6
04:18 spinclad joined #perl6
04:23 GeJ joined #perl6
04:37 nipotan changed their nick to nipotaway
04:40 ofer joined #perl6
04:40 spinclad joined #perl6
04:47 ofer joined #perl6
04:47 spinclad joined #perl6
04:52 rindolf joined #perl6
04:53 ofer joined #perl6
04:53 spinclad joined #perl6
05:09 BooK joined #perl6
05:18 cj Zelda Mae Adams-Collier was born on 2007/05/28T1038
05:22 jisom joined #perl6
05:29 buu cj: Zelda?!
05:30 cj buu: yar
05:30 buu Wowch.
05:30 cj yes, like "doo doo doo, doo doo doo doo doo doo doo doo"
05:30 buu =[
05:30 buu There was a zelda in one of the thin man movies.
05:31 cj I mean o/~ doo doo doo, doo doo doo doo doo doo doo doo o/~
05:31 cj thin man movies?
05:31 cj you don't like the name?
05:31 buu Well..
05:31 buu I just think it could have gone better with a "Destroyer of Worlds" in there someplace.
05:32 cj ah, yes.  probably
05:44 devogon joined #perl6
05:49 gaal he's Syck of it. okay that was probably the worst pun in the entire universe, sorry.
05:50 gaal ingy: I hadn't noticed it was doing that... but it's got its own tests, how do they handle it?
05:51 gaal I hope not with s{is <something>}{like <something> <ws>*}
05:56 ingy gaal: the tests expect various unneeded whitespace
05:56 ingy explicitly
05:57 gaal lose, lose :(
05:58 gaal wow, I wish "did you know"
05:58 gaal style tips weren't so dumb
05:58 gaal like, "You just upgraded firefox! did you know there are add-ons you can install?"
05:58 gaal Yes, and I have like 5923 of them already!
05:58 ingy I'm writing multiple expectations in my tests, and making them pass if one yaml matches
05:59 gaal well, if the amount of randomly appended whitespace isn't predictable, that'd be a lot of yamls :)
06:00 franck__ joined #perl6
06:01 ingy gaal:
06:01 ingy > perl -MYAML::Syck -e '$_ = Dump([1..2]); s/ /+/g; print'
06:01 ingy ---+
06:01 ingy -+1
06:01 ingy -+2
06:01 lambdabot Parse error
06:01 ingy it dumps "--- " on all docs for instance
06:02 amnesiac ingy, does that generats brainfuck? :P
06:02 ingy > perl -MYAML::Syck -e '$_ = Dump(\42); s/ /+/g; print'
06:02 ingy ---+!!perl/ref+
06:02 ingy =:+42
06:02 lambdabot Parse error
06:02 ingy there's another
06:03 gaal yaml doesn't spec a canonical form, does it?
06:03 ingy amnesiac: :P
06:03 ingy gaal: it does, and it's being reworked currently
06:03 ingy but it looks more like json
06:04 ingy it's not a default form
06:04 ingy not human friendly
06:04 ingy but very useful
06:05 gaal well, since loading and dumping are roughly as hard, i suppose you need to roundtrip in your tests more? :/
06:05 gaal why do you depend on yaml::tiny in t/, btw?
06:06 gaal (didn't look at the source yet, just got errors for missing it)
06:09 araujo joined #perl6
06:27 Averell joined #perl6
06:37 franck___ joined #perl6
06:38 weinigLap joined #perl6
06:41 buetow joined #perl6
06:47 meppl good mornig
07:16 rindolf meppl: guten tag!
07:17 rindolf Hi gaal , ingy
07:18 renormalist joined #perl6
07:22 ingy hi rindolf
07:22 rindolf ingy: yo.
07:34 buu joined #perl6
07:39 toshinori_ joined #perl6
07:50 weinigLap joined #perl6
07:56 elmex joined #perl6
08:05 weinigLap joined #perl6
08:05 ahmadz joined #perl6
08:13 meppl good morning rindolf
08:13 rindolf meppl: what's up?
08:13 rindolf meppl: are you new here?
08:13 meppl :-P
08:13 meppl not really
08:14 meppl but im unproductive
08:14 obvio171 joined #perl6
08:14 thoughtp1lice joined #perl6
08:18 svnbot6 r16577 | renormalist++ | - cperl-mode.el: is reparsed trait + minor comment fixes
08:19 obvio171 joined #perl6
08:22 weinigLap_ joined #perl6
08:29 Tene moritz: using your irclog stuff for #reprap.  Thanks.
08:48 svnbot6 r16578 | Darren_Duncan++ | ext/QDRDBMS/ : added part 2/2 of a test block (resembling actual user code) to Validator.pm ... as soon as the Example Engine can execute that correctly, QDRDBMS will be ready for its version 0.0.0 release
08:49 Aankhen`` Yay, v0.0.0!
08:53 dduncan well, the Perl 5 version will go out right then
08:53 dduncan the Perl 6 version, whenever Pugs does
08:53 dduncan possibly at a later version number by that time
08:54 Tene dduncan: very nice
09:01 dduncan fyi, anyone who would end up using QDRDBMS would probably be writing code like in the current Validator.pm, which doubles as a SYNOPSIS of sorts, or more likely they would use a bunch of wrapper functions to make it more terse as appropriate to their needs
09:01 dduncan writing in ASTs tends to be verbose
09:01 moritz Tene: does it work? *g*
09:02 Tene moritz: mostly.  couple of glitches had to be smoothed over, but mostly it works great. :)
09:03 dduncan fyi, this example basically illustrates performing a 3-data-table join plus a search
09:03 dduncan it also illustrates loading said tables, in a roundabout way, roundabout being that, in this case, the tables are lexical variables
09:04 dduncan in fact, this code is directly derived from a p6l post I made 1-2 months ago
09:04 dduncan the one that requested some relational operators in Perl 6
09:05 dduncan relational meaning for databases in this context
09:05 dduncan that post included a use case example of why a relational join is useful, and had examples about farmers
09:07 Tene I remember reading that post.  I thought you were just a madly-raving nutjob at the time. ;)
09:07 Tene I'm quite impressed now, though.
09:08 dduncan good to hear
09:12 andara joined #perl6
09:27 thoughtp1lice changed their nick to thoughtpolice
09:34 svnbot6 r16579 | moritz++ | t/builtins/list/zip.t: updated test to current spec regarding lists with
09:34 svnbot6 r16579 | moritz++ | different length
09:51 chris2 joined #perl6
09:54 revdiablo joined #perl6
09:54 svnbot6 r16580 | moritz++ | ext/DateTime/t/basic.t:
09:54 svnbot6 r16580 | moritz++ |  * fixed unbalanced parenthesis
09:54 svnbot6 r16580 | moritz++ |  * used string instead of code inside eval()
10:01 iblechbot joined #perl6
10:03 rhizo joined #perl6
10:20 cernd joined #perl6
10:27 penk joined #perl6
10:27 dduncan left #perl6
10:34 svnbot6 r16581 | moritz++ | Tree::Visitor::FindByPath: changed subs to methods
10:37 riffraff joined #perl6
10:37 riffraff hi
10:38 riffraff left #perl6
10:38 riffraff joined #perl6
10:39 moritz hi riffraff ;)
10:39 riffraff sorry for being a little skizoid in joining :)
10:40 * moritz ignores joins and timeouts and quits ;)
10:40 moritz I just haven't figured out how to ignore leaves
10:42 riffraff eh
10:43 svnbot6 r16582 | gabriele++ | tests for sigil behaving as Positional,Associative,Abstraction,Object roles.
10:43 svnbot6 r16582 | gabriele++ | Everything fails because these roles don't exist yet.
10:46 riffraff still can't figure out how to define classes/roles in Prelude that are visible outside of it
10:46 riffraff this is disappointing :/
10:51 moritz who hacks the prelude?
10:51 moritz I mean normally ;)
10:52 moritz audreyt, rhr, TimToady and putter mostly it seems
10:58 Co2 joined #perl6
11:06 lumi moritz: irssi?
11:06 moritz lumi: yes
11:06 moritz is there another irc client? *g*
11:07 lumi moritz: "leaves" are calles "PARTS"
11:08 moritz lumi: thanks a lot
11:09 lumi (/help levels and /help ignore are your friends)
11:10 moritz lumi: I read the /help to ignore, I didn't know about levels
11:12 moritz lunch&
11:28 fglock joined #perl6
11:31 fglock_ joined #perl6
11:33 riffraff moritz, well, yes but I have the feeling that nobody ever noticed that.. i.,e. class Carp is defined there but I wonder who can access it
11:49 masak @users
11:49 lambdabot Maximum users seen in #perl6: 173, currently: 152 (87.9%), active: 9 (5.9%)
11:52 Jmax- joined #perl6
11:52 fglock__1 joined #perl6
11:52 fglock__2 joined #perl6
11:53 Jmax- changed their nick to Jmax
12:08 fglock__1 left #perl6
12:08 fglock joined #perl6
12:12 ajs_home joined #perl6
12:12 ajs_home left #perl6
12:21 mjk joined #perl6
12:36 rindolf joined #perl6
12:39 cozwei joined #perl6
12:43 [particle] joined #perl6
12:44 obra win 5
12:50 fglock obra: thanks for the notes - I'll work on it
12:53 obra fglock: excellent. shoot me another draft and I'll try to hack at it
12:53 obra I'll be offline for the next 9 or so hours, then online for an hour at an airport, then offline for more hours
12:58 fglock obra: ok!
13:03 moritz_ joined #perl6
13:28 kanru joined #perl6
13:35 daxim joined #perl6
13:36 iblechbot joined #perl6
13:53 jerrylee joined #perl6
14:38 chaoslawful joined #perl6
14:46 Grrrr joined #perl6
14:59 obvio171_ joined #perl6
15:07 penk joined #perl6
15:13 fglock joined #perl6
15:19 amoe joined #perl6
15:33 ruoso joined #perl6
15:50 the_dormant joined #perl6
16:05 silug joined #perl6
16:11 offby1 joined #perl6
16:24 justatheory joined #perl6
16:24 weinigLap joined #perl6
16:25 moritz YaY, my sudoku solver in Perl 6 seems to work ;)
16:26 moritz I'll do a few more tests, and if they pass I'll add it to ext/, that should make problem97.t trivial ;)
16:28 Limbic_Region joined #perl6
16:29 lumi I think Perl 6 should have a sudoku solver in core!
16:29 moritz ;)
16:29 moritz hey, it's not Prolog ;)
16:29 Limbic_Region lumi - it does, it is called junctions
16:29 lumi emacs comes with a psychologist
16:29 moritz I haven't used junctions at all
16:29 moritz how well are they implemented atm?
16:29 Limbic_Region anyone know why the recent changes on pugscode.org is b0rk?
16:30 moritz Limbic_Region: what are you refering to?
16:30 Limbic_Region or rather, not so recent - it has said trac has been turned off for some time
16:30 Limbic_Region or rather, not so recent - it has said trac has been turned off for some time
16:30 Limbic_Region or rather, not so recent - it has said trac has been turned off for some time
16:30 Limbic_Region http://dev.pugscode.org/timeline​?changeset=on&amp;update=Update
16:31 Limbic_Region sorry about the echos, this client sucks
16:31 moritz I think that's the feather load issue again
16:31 Limbic_Region eval? my $foo = any(1..5); say $foo.pick;
16:31 Limbic_Region er
16:32 moritz ?eval any(1..5).pick(1)
16:32 evalbot_r16576 changed their nick to evalbot_r16582
16:32 evalbot_r16582 Error: pick not defined: VJunc any(VInt 1,VInt 2,VInt 3,VInt 4,VInt 5)
16:32 Limbic_Region ?eval my $foo = any(1..5); say $foo.pick;
16:32 evalbot_r16582 OUTPUT[2␤] Bool::True
16:33 moritz my input had the wrong precedence I guess
16:33 Limbic_Region ?eval say 'foo' eq any('bar', 'blah', 'asdf', 'foo');
16:33 evalbot_r16582 OUTPUT[any(VBool False,VBool True)␤] Bool::True
16:35 Limbic_Region junctions are really neat
16:36 audreyt joined #perl6
16:36 sunnavy joined #perl6
16:36 Limbic_Region hey audreyt!
16:37 TimToady ?eval say ('foo' eq any <bar blah asdf foo>) == Bool::False
16:37 evalbot_r16582 OUTPUT[any(VBool False,VBool True)␤] Bool::True
16:37 TimToady that is bogus
16:37 Limbic_Region it appears that the web interface to the change tracking of the pugs repo has been disabled (for sometime now)
16:37 Limbic_Region it appears that the web interface to the change tracking of the pugs repo has been disabled (for sometime now)
16:37 * Limbic_Region gives up on this client
16:38 TimToady I think 'foo' eq any <bar blah asdf foo> should just return True
16:39 TimToady not a junction:
16:39 TimToady ?eval 'foo' eq any <bar blah asdf foo>
16:39 evalbot_r16582 (Bool::False | Bool::True)
16:43 jisom joined #perl6
16:44 bernhard joined #perl6
16:46 franck__ joined #perl6
16:48 svnbot6 r16583 | moritz++ | implemented problem96.t with regexes
16:48 moritz I don't think that problem was intended to be solved with regexes, but I don't know if prolog has them anyway ;)
16:53 jisom_ joined #perl6
16:58 andara left #perl6
17:13 amnesiac joined #perl6
17:22 amoe left #perl6
17:42 Psyche^ joined #perl6
17:43 theorbtwo joined #perl6
17:45 weinigLap_ joined #perl6
17:49 weinigLap_ joined #perl6
17:51 buetow joined #perl6
17:56 andara joined #perl6
17:59 Psyche^ changed their nick to Patterner
17:59 awwaiid joined #perl6
18:00 weinigLap_ joined #perl6
18:04 obvio171_ changed their nick to obvio171
18:06 weinigLap_ changed their nick to weinigLap
18:15 the_dormant joined #perl6
18:24 lumi gaal: ping
18:24 araujo joined #perl6
18:27 andara_ joined #perl6
18:28 gaal lumi: moose
18:32 lumi gaal: I'm trying to write Pugs.Meta.List, can you clue me any?
18:33 lumi I somehow got the idea that you know this machinery
18:33 svnbot6 r16584 | lwall++ | Test that ('c' eq any <a b c>) returns True, not (True|False)
18:34 demq changed their nick to dmq
18:37 moritz TimToady: could take a look at t/magicals/dollar_underscore.t? it looks like it should end in a compile time error, but I don't know enough about try {...}'s semantics to be sure
18:39 japhb moritz++ # cage cleaning
18:40 moritz I thought only parrot needed a cage ;-)
18:40 japhb Well, there are dog cages too ....  :-)
18:40 lumi Pugses live in handbags, I think
18:40 gaal moose! what methods are in List?
18:41 lumi A whole bunch (zip, cross, pick, etc)
18:42 lumi Does PureClass mean it can't do IO?
18:42 gaal cool, all right. I wonder if vv(<a b c>) creates a new list though... hmm
18:42 gaal yes
18:42 lumi pick requires IO
18:42 gaal ?eval vv(<a b c>)
18:42 evalbot_r16582 changed their nick to evalbot_r16583
18:42 evalbot_r16583 *** No such method in class Array: &ITEM␤    at -e line 16, column 7-60
18:43 lumi Is that a yes or a no?
18:43 gaal I think that's a no :/
18:43 lumi Hmm
18:43 gaal pick requires IO, indeed
18:43 gaal or at least, it isn't pure
18:44 gaal ?eval vv([<a b c>])
18:44 evalbot_r16583 *** No such method in class Array: &ITEM␤    at -e line 16, column 7-64
18:44 rindolf joined #perl6
18:45 lumi So it needs more infrastructure first
18:45 gaal this means there's the practical development problem of constructing these values to play around with them, exactly
18:45 lumi :\ What's already in newval?
18:45 theorb joined #perl6
18:45 lumi Where do I find this?
18:46 gaal see Pugs.Val
18:46 gaal don't let the commented-out stuff confuse you
18:46 silug joined #perl6
18:48 kunwon1 joined #perl6
18:48 gaal hmm, line 71 goes
18:49 gaal to suggest lists ought to be represented by Seq
18:49 lumi Do we have a Seq?
18:49 xinming Oh, I get an interesting feeling. That Perl 7 will move forward functional language and keep itself purely. :-)
18:49 xinming functional programming language.
18:50 gaal a haskell Data.Seq, that is
18:50 moritz xinming: you mean it will be even more lisp than perl 6 is?
18:50 lumi gaal: Oh, that makes sense
18:50 lumi gaal: I haven't used those yet
18:51 cozwei joined #perl6
18:51 * moritz wonders how hard it is to implement haskell in terms of lisp macros ;)
18:51 xinming moritz: No, I mean, maybe, the next version of perl will get more support on functional programming style. and keep perl 6 itself intaint. though, grammer might change, But not much.
18:51 xinming though, that's too far,
18:51 xinming As I just read synopsis. And I finally find, there are too many functional programming stuff.
18:51 gaal Data.Sequence, that is
18:52 xinming reduction curry lazy list etc..
18:52 moritz xinming: why "too many"? if you don't want to use them, don't use them ;)
18:52 lumi moritz: Semantics? I'm not sure how you'd transform all expressions into lazy ones, apply static typing and type inference, etc, with macros
18:53 xinming But currently larry might not be able to think in haskell very well, so he can't steal lots. :-)
18:53 moritz lumi: yes, especially the lazyness might behard;)
18:53 xinming moritz: No, I like these. It's really an amazing thing to see that a language has all power in other language, and keep the syntax really understandable.
18:53 gaal lumi: I'd say let it be [Var] for now
18:54 lumi moritz: But maybe you can just make a (module) macro that will take the rest of your program, and transform every expression inside it
18:54 lumi gaal: What do I need to do to plug it into newval then? a Boxable instance?
18:55 dmq changed their nick to demq
18:56 gaal an empty instance should do, i think
18:56 gaal "instance Boxable PureList"
18:56 lumi Looking at Meta.Str, it defines a Boxable instance with its class in
18:57 lumi So it belongs in Meta.List, I guess
18:57 lumi So I'm doing the right thing :)
18:58 gaal oh, right; that's where you wire a method table etc. to the hs type
18:58 demq changed their nick to dmq_
18:59 lumi Maybe I'll just try the tiniest possible class and see if it works
18:59 gaal also on your todo list are making "vv" work for lists, and ensuring the instances (Pugs.Class:72 and on) are suitable for the particular methods you need
19:00 dmq_ changed their nick to dmq
19:00 gaal the tiniest possible class doesn't have any methods you define; you just do vv(<a b>).methods and hope it works :)
19:01 gaal the Pugs.Class stuff is pretty magical
19:01 lumi I'm not sure I understand these instances
19:01 lumi Yes, looks magic
19:01 moritz let's hope the magic works for us ;)
19:01 gaal they're what you need to get calls of various arities get dispatched
19:03 lumi vvToVal is kinda evil-looking
19:03 gaal the [: :] stuff, btw, is "parr", a fast datastructure very similar to hs lists
19:03 lumi I thought it was an array?
19:03 gaal you need -fparr for it to work, and then you can even patmatch against it IIRC
19:04 gaal yeah. it's similar to lists in usage. :)
19:05 gaal vvToVaal isn't evil, it's just a bunch of thunks
19:05 gaal (not in the closure sense, in the API bridge sense)
19:05 buetow joined #perl6
19:06 lumi Its pattern matching is evil
19:07 gaal you mean the lhs being repeated like that? well, thats generics+type inferece for you :)
19:07 lumi Also it's not vv()
19:10 gaal you need fromVV in VList's Value instance, I tihnk
19:10 lumi Where's that?
19:11 gaal P.AST.Internals, 663
19:11 moritz I couldn't live without grep ;)
19:11 gaal hmm maybe not; there is a method there
19:12 gaal I need to reremember this stuff :(
19:12 BooK joined #perl6
19:13 daxim cpan P/PE/PETDANCE/ack-1.62.tar.gz
19:14 lumi ?eval vv(<a b c>).WHAT
19:14 evalbot_r16583 changed their nick to evalbot_r16584
19:14 evalbot_r16584 Error: No such method in class Array: &ITEM
19:14 gaal ok you may also need to tweak the Prim.hs table
19:14 gaal to say rw!Any instead of Any
19:14 gaal so that the vv prim sees the container
19:15 lumi Where?
19:15 gaal 2195
19:15 lumi Which Any am I changing?
19:15 gaal anyone know how to cure screen breaking copy-paste on xterm?
19:16 gaal oh the parenthesized one
19:16 gaal add no new spaces
19:16 dmq joined #perl6
19:16 gaal eg the TEMP on 2140
19:17 gaal at least playing with Prim doesn't take ages to rebuild
19:18 lumi Is this Pugs.Prim ?
19:18 gaal I hope that doesn't break the other vv() things though
19:18 gaal yes
19:18 lumi I don't see a TEMP on 2140
19:18 rodi joined #perl6
19:18 gaal o rly? what do you see?
19:19 lumi O, I guess I'm not up to date?
19:19 lumi Pulling
19:19 lumi But I see TEMP now
19:19 lumi (It's just on another line)
19:20 gaal ok, it was just an example anyway
19:20 lumi Why does it need to see the container?
19:21 gaal you want to do stuff on the list, no?
19:21 lumi Oh duh
19:21 lumi rw failed to clue me, somehow
19:22 lumi Is this really right, and won't this break all the old vv stuff?
19:22 gaal i don't know :)
19:23 moritz lumi: that's why we use subversion - if everything brakes, we can roll back ;)
19:23 lumi moritz: True, and also why we have tests
19:24 * lumi wonders whether there are tests for what's working in vv atm
19:24 gaal ./pugs -e 'say vv("moose").reverse' is enough of regression test for this change :)
19:24 gaal vv is just a transitory kludge
19:24 gaal in a makeshifts-last-longest kinda way.
19:27 lumi I gotta go, I'll pick this up tomorrow
19:27 gaal moose moose
19:28 lumi Moose
19:28 moritz ?eval 'moose' x 3
19:29 evalbot_r16584 "moosemoosemoose"
19:39 the_dormant joined #perl6
19:44 weinigLap joined #perl6
19:45 weinigLap joined #perl6
19:51 fglock joined #perl6
19:54 svnbot6 r16585 | fglock++ | kp6-Perl6-roadmap.txt - (work in progress) added obra++ comments and an introduction text
19:55 dduncan joined #perl6
20:05 ruz joined #perl6
20:08 polettix joined #perl6
20:10 fglock TimToady: this means that any( True | False ) returns True, right?
20:12 fglock because: 'foo' eq any <bar blah asdf foo>  is the same as:  any( 'foo' eq 'bar' | 'foo' eq 'blah' | 'foo' eq 'asdf' | 'foo' eq 'foo' )
20:19 mj41 joined #perl6
20:19 fglock ?eval ?( 'foo' eq any <bar blah asdf foo> )
20:19 evalbot_r16584 changed their nick to evalbot_r16585
20:19 evalbot_r16585 Bool::True
20:20 fglock ?eval ?( 'foo' eq all <bar blah asdf foo> )
20:20 evalbot_r16585 Bool::False
20:20 fglock it's just a matter of coercion
20:23 moritz ?eval ?(Bool::False == ('foo' eq any <foo bar>))
20:23 evalbot_r16585 Error: No compatible multi variant found: &Bool::False
20:23 moritz ?eval ?(False == ('foo' eq any <foo bar>))
20:23 evalbot_r16585 Bool::True
20:24 moritz fglock: that's not just coercion IMHO
20:25 fglock good point :)
20:26 riffraff joined #perl6
20:26 riffraff szia
20:29 andara joined #perl6
20:31 isaacd joined #perl6
20:43 rhr fglock: I think eq == etc. are supposed to never return junctions (i.e. junctions don't distribute over them)
20:44 rhr so False === ('foo' eq any <foo bar>) should be false, but False === (True | False) should be true
20:45 rff joined #perl6
20:46 rff changed their nick to riffraff
20:48 rhr that was my interpretation anyway, I can't find anything about that in S03 though
20:49 TimToady rhr: yes, that's how I think of it.  I think we're getting eq and friends returning (True|False) to mean "true", and the boolean tests just all happen to test against the True part rather the False part, so it always looks true in boolean context, unless you actually ask whether it is also === False, in which case you get a bogus result
20:50 TimToady and that's what my test is testing for
20:52 SubStack joined #perl6
20:55 rff joined #perl6
21:05 wilx` joined #perl6
21:11 silug joined #perl6
21:13 wilx` joined #perl6
21:15 sahadev left #perl6
21:17 weinigLap joined #perl6
21:36 jhorwitz joined #perl6
21:57 prism joined #perl6
22:02 dduncan so the 4th discussion draft of the GPLv3 has been released today ... and it continues to get better
22:03 dduncan it is also now compatible with the Apache license v2
22:03 moritz cool ;)
22:03 dduncan that is, I just read the delta, and the changes I understood looked like improvements
22:03 buetow joined #perl6
22:04 dduncan fyi, I will be using the GPL v3 after June 29th, most likely
22:04 dduncan when it is final
22:04 PerlJam Has pugs kept up with recent parrot chagnes?
22:05 PerlJam er, changes?
22:05 moritz PerlJam: the parrot backend is bit rotten :(
22:05 PerlJam That's what I thought
22:07 * PerlJam wishes he had more time and inclination to *do* something to make Perl 6 more of a reality
22:09 rodi left #perl6
22:10 cognominal_ joined #perl6
22:11 * moritz started to learn haskell to help with pugs ;)
22:11 moritz but haskell is... different ;)
22:16 svnbot6 r16586 | moritz++ | [irclog] added google search link, added date to the <title>
22:18 meppl good night
22:18 moritz good night ;)
22:19 meppl ;)
22:22 prism PerlJam, as long as perl6 manages to make a base and the documentation for people to make their own modules
22:22 prism it will be a success
22:22 prism and it is on the way to doing that now :)
22:27 moritz speaking of Modules... I create a folder $module_name in ext/, with subfolders lib/ and t/ and lib/$modulename.pm as a file...
22:27 moritz and then I did "perl Makefile.PL" in the hope that it would create a Makefile for me, but it did not...
22:28 moritz any ideas what I can do about that?
22:30 thoughtpolice joined #perl6
22:32 moritz ah, I have to create an Makefile.PL myself
22:38 dduncan yes
22:38 dduncan but its easy ... just modified clone another one
22:38 dduncan you can use my QDRDBMS one if you want
22:39 moritz I used Net::IRC
22:40 moritz but I guess they are all nearly identical ;)
22:40 moritz lazyness++
22:40 moritz perlbot: karma lazyness
22:40 jabbot moritz: lazyness has karma of 1
22:40 perlbot Karma for lazyness: 1
22:41 moritz it seems jabbot has a hardcoded trigger on "perlbot" ;)
22:42 prism perlbot, karma prism
22:42 perlbot Karma for prism: 3
22:42 jabbot prism: prism has neutral karma
22:42 prism hmm
22:42 weinigLap joined #perl6
22:42 moritz perlbot is longer in #perl6 than jabbot it seems
22:42 moritz @karma moritz
22:42 lambdabot You have a karma of 110
22:43 moritz wow, we have at least three different bots that track our karma
22:43 prism lots of karma bots
22:43 moritz how much karma do you need to get a halo? *g*
22:57 thoughtpolice @karma thoughtpolice
22:57 lambdabot You have a karma of 8
22:57 thoughtpolice hah :)
22:58 TimToady @karma lambdabot
22:58 lambdabot lambdabot has a karma of 50
23:00 moritz ?eval my @a = [1,2], [3,4]; map zip, @a
23:01 evalbot_r16585 changed their nick to evalbot_r16586
23:01 evalbot_r16586 Error: Cannot cast from VList [VList [VInt 1,VInt 2],VList [VInt 3,VInt 4]] to Pugs.AST.Internals.VCode (VCode)
23:01 moritz not quite what I wanted ;)
23:02 moritz how do I best turn [1,2],[3,4] into "1324"?
23:03 moritz for arbitrary sizes, of course ;)
23:05 Limbic_Region joined #perl6
23:12 * Aankhen`` wonders if learning Lisp is of any use in the Pugs context.
23:12 svnbot6 r16587 | moritz++ | added ext/Sudoku/, a very simple Sudoku solver
23:12 rhr ?eval my @a = [1,2],[3,4]; [Z] @a
23:13 evalbot_r16586 ((1, 3), (2, 4))
23:15 moritz rhr: thanks, exactly what I wanted ;)
23:16 rhr should be the same as map zip, @a
23:16 svnbot6 r16588 | moritz++ | ext/Sudoku: written out() more perlish, rhr++
23:16 moritz rhr: no, it shouldn't
23:17 moritz rhr: consider [+] @a versus map {+} @a
23:17 rhr oh, right
23:17 PerlJam prism: I've been writing articles on Perl 6 as if it will exist.  Ergo, it *will* exist :-)
23:18 PerlJam s:2nd/will/shall/  also  :)
23:18 moritz "Perl 6 shall overcome some day" ;)
23:18 prism PerlJam, it must exist
23:18 prism perl HAS to evolve at some point
23:18 prism like windows freebsd linux whatever
23:18 moritz hey, it exists now
23:18 demq joined #perl6
23:18 prism the versions keep going up
23:19 PerlJam prism: yeah, but there's a strong camp of Perl 5 people who are happy with snail's pace evolution.
23:19 Aankhen`` Hmm.
23:19 Aankhen`` ?evalmy @a = [1,2],[3,4]; ([Z] @a).join(' ')
23:19 Aankhen`` ?eval my @a = [1,2],[3,4]; ([Z] @a).join(' ')
23:19 moritz and in parallel blead incorporates cool p6 features
23:19 evalbot_r16586 "1 3 2 4"
23:19 evalbot_r16586 "1 3 2 4"
23:19 prism PerlJam, eventually perl6 will HAVE to come around though
23:19 Aankhen`` ?eval my @a = [1,2],[3,4]; ([Z] @a).join('')
23:19 prism my point is it doesnt matter if there are 5 billion perl5 users
23:19 prism and 10 perl6
23:19 evalbot_r16586 "1 32 4"
23:19 prism sooner or later perl5 will reach its EOL
23:20 prism where it cant go any further
23:20 Aankhen`` Why are there spaces in between the numbers when I specify '' as the delimiter?
23:20 Aankhen`` Oh, er.
23:20 PerlJam prism: COBOL was end-of-lifed long ago, yet it's still around.
23:20 moritz Aankhen``: with one more map and join
23:20 Aankhen`` Yeh, I was misunderstanding it.
23:21 Aankhen`` Not to change the topic or anything, but... how do you exit from Pugs under Linux?
23:21 moritz ?eval my @a = [1,2],[3,4]; (map {.join("")}, [Z] @a).join("")
23:21 Aankhen`` ^Z works on Windows but here it suspends the process.
23:21 PerlJam Aankhen``: :q
23:21 Aankhen`` Ah, thanks.
23:21 evalbot_r16586 "1324"
23:21 Aankhen`` Heh, force of habit beats :h every time.
23:21 * Aankhen`` grins sheepishly.
23:21 moritz Aankhen``: or Ctrl+D (which is EOF)
23:21 Aankhen`` Oh, thanks.
23:21 prism PerlJam, yes but COBOL's following  isnt as big or as important as perls, not forgetting perl5 is base in freebsd and many other os's depend on it as a dep too. What will people say when those basis are shifted to python ruby etc... for speed reasons or other. Perl5 will have to be abandoned in search of a better solution,
23:21 Aankhen`` (^Z is EOF on Windows, in case it's still unclear. :-)
23:22 PerlJam prism: then perl will die and python or ruby will be "perl 6"
23:22 prism PerlJam, personally I think perl6 was based on the wrong language to start off with (but thats another matter) :)
23:22 prism PerlJam, unlkely, perl has to mayn followers
23:23 prism perlbot, also notice this channel probably started with 10 users, its now at 150 and ptrobably growing slowly
23:23 Aankhen`` Interesting coincidence... I was reading some Paul Graham stuff today, in particular an article where he wrote about how it's extremely hard to get people to use new languages because it's not new technology so much as a new way of thinking.  Or something to that effect.
23:23 prism PerlJam, take that into consideration as public awareness + development increase
23:23 moritz @users
23:23 lambdabot Maximum users seen in #perl6: 173, currently: 150 (86.7%), active: 17 (11.3%)
23:23 PerlJam prism: I intend on using perl until the day I die.  So it's got to stick around for my lifetime at least (and I plan on living a long long time)
23:24 PerlJam Aankhen``: recent article?
23:24 prism PerlJam, it will be also your grand kids :)
23:24 Aankhen`` PerlJam: No, I don't think so. I just headed to the Lisp section and started reading.
23:24 PerlJam perhaps.
23:25 dmq joined #perl6
23:25 Aankhen`` PerlJam: http://www.paulgraham.com/avg.html
23:25 PerlJam prism: The thing about programming languages is that they tie us to certain interfaces that I believe will go away at some point  (WIMP)
23:25 lambdabot Title: Beating the Averages
23:25 Aankhen`` PerlJam: April 2001, rev. April 2003
23:25 prism PerlJam, hmm perhaps, but perl is generally pretty flexible in that respect
23:25 PerlJam oh, I've read that one.
23:26 Aankhen`` Yeh.
23:26 Aankhen`` I had only read a couple of his Lisp articles before.
23:26 PerlJam prism: tell me how to generate guillemets without a keyboard.
23:26 moritz IMHO both lisp and haskell have that "different things look too similar" problem
23:27 moritz lisp more than haskell, though
23:27 Aankhen`` moritz: How's that (Lisp)?
23:27 PerlJam prism: Tell me what we'll use in their place when there aren't keyboards anymore
23:27 TimToady prism: which language do you think perl 6 wasn't based on?  :)
23:27 prism TimToady, I wanted it on an erlang base :)
23:27 moritz Aankhen``: too many (parentheses)
23:27 Aankhen`` Yech.
23:27 Aankhen`` I tried learning Erlang, and it was really boring. :-(
23:27 prism Aankhen``, i think its pretty fun
23:27 Aankhen`` moritz: That's because everything is a list, after all.
23:27 prism PerlJam, voice to camel :)
23:28 Aankhen`` prism: Well, I didn't give it much of a chance.
23:28 * moritz comes from a town called "Erlangen" ;)
23:28 PerlJam prism: I think we've all seen how well that (doesn't) work.
23:28 prism moritz, is it a distributed town :)
23:28 Aankhen`` prism: I started following along with some tutorial and didn't even complete it because the language just seemed so unappealing.
23:28 prism perlbot, langauges will evolve alongside technology
23:28 PerlJam I know nothing about erlang.  What does it bring to the conceptual table?
23:28 moritz prism: at least it distributed me to Scotland ;)
23:28 prism Aankhen``, use it enough it will seem great
23:28 prism moritz, hehe :P
23:28 PerlJam (lua doesn't seem to bring much though there are people who like it)
23:29 prism PerlJam, its a fully OO easily distributed language
23:29 moritz PerlJam: it has no "use strict;" afaict
23:29 Aankhen`` PerlJam: Erlang is all about distributed, fault-tolerant computing. It's basically built around message-passing concurrency. Or at least that's my understanding of the language.
23:29 prism used in phone networks and satalites
23:29 prism can handle 2000+ conns with ms responce times to all
23:29 prism on common hardware
23:29 PerlJam gotcha.
23:29 prism derived roughly from LISP
23:29 Aankhen`` Really? o_O
23:29 Aankhen`` I don't see any similarities. O_o
23:29 PerlJam now you're making me not like it.
23:29 prism Aankhen``, but the book lol
23:29 Aankhen`` Oh, I never touched any Erlang book.
23:29 prism s/but/buy/
23:30 Aankhen`` I'll give it another try some time.
23:30 PerlJam Well, if it's derived from lisp but doesn't look like lisp, it's probably okay  :)
23:30 Aankhen`` But not any time soon.
23:30 prism Aankhen``, its a necesity the first part is free on the website
23:30 Aankhen`` I'm too busy with Lisp. :-)
23:30 Aankhen`` i luvs teh lisp
23:30 prism PerlJam, the website says it was sort of derived from lisp but lots of other languages got spots in the light too
23:30 prism PerlJam, so its kind of a hybrid between quite a feqw
23:30 TimToady P6 will have erlangish semantics in its underlayer, see http://www.seas.upenn.edu/~​lipeng/homepage/unify.html
23:30 lambdabot Title: Unifying events and threads
23:30 prism s/feqw/few/
23:31 TimToady but P6 will also have better transactional support on top
23:31 * PerlJam *really* looks forward to the day when we stop talking about perl 6 in the future tense.
23:32 prism PerlJam, hmm maybe sooner than you think
23:32 Aankhen`` "Apocalypse Now" ~~ s/Apocalypse/Perl 6/
23:32 TimToady okay, P6 has better transactional support on top  *cough*
23:32 * moritz wants threaded IRC
23:32 * prism wants IRC where /slap really works
23:32 PerlJam prism: How soon do you think I think?  ;)
23:32 Aankhen`` moritz: Threaded as in threaded conversations?
23:32 prism PerlJam, next week on thursday
23:32 moritz Aankhen``: yes
23:32 PerlJam TimToady: :-P
23:32 Aankhen`` moritz: Heh.
23:33 prism btw
23:33 prism whats the topic bout
23:33 prism about*
23:34 Aankhen`` If you run `make install`, the Perl 6 modules will overwrite your Perl 5 modules.
23:34 PerlJam TimToady: Are you willing to give odds on another major semantic change to Perl 6 Regex?  :)
23:34 prism Aankhen``, ah lol
23:34 prism Aankhen``, let me find a production server I dont like 8)
23:34 Aankhen`` LOL.
23:34 moritz prism: you can circumvent that by building debian packages first ;)
23:34 Aankhen`` moritz: People like me are the reason why IRC could never have threaded conversations. :-P
23:35 prism moritz, all the servers I have root on are freebsd
23:35 prism except one which is netbsd ;p
23:35 moritz Aankhen``: It's worth a thought
23:35 PerlJam Aankhen``: we have threaded conversations all the time!
23:35 Aankhen`` Possibly.
23:35 PerlJam (they just aren't marked)
23:35 Aankhen`` PerlJam: Pfft.
23:35 Aankhen`` PerlJam: BTW, I like chicken.
23:35 TimToady yes
23:35 Aankhen`` PerlJam: Hey, have you seen the newest PotC movie?
23:35 PerlJam Aankhen``: aye!
23:35 prism hmm I tell you what is really needed for perl6 when it is released
23:36 prism a gui version of cpan [perl5]
23:36 Aankhen`` PerlJam: How'd you like it?
23:36 dmq prism, so write one
23:36 prism dmq, I have enough writing this dumb website I started
23:36 Aankhen`` prism: Go fix CPANPLUS::Shell::Tk. ;-)
23:36 svnbot6 r16589 | Darren_Duncan++ | ext/QDRDBMS/ : renamed the AST node types Lit(Bool|Text|Blob|Int) to make the Lit a suffix ; made a few other small changes
23:37 prism Aankhen``, ill look into it :)
23:37 PerlJam Aankhen``: I liked it.  It was good.
23:37 Aankhen`` prism: Have fun!  Though if you're serious, I'd prefer ::Curses to work. ^_^
23:37 Tene prism: how would that even work?  You mean something other than http://search.cpan.org/ ?
23:37 lambdabot Title: The CPAN Search Site - search.cpan.org
23:37 Aankhen`` PerlJam: Ah, that's good. Apparently I'm going to be watching it on Saturday.
23:37 PerlJam prism: Yeah, but which should you do?  Something *important* or your website?
23:37 Tene prism: what would it do?
23:37 prism Tene, yeah a nice little plugin for XFCE perl6-cpan quick installer :)
23:37 Aankhen`` Tene: I believe prism is referring to the CPAN shell.
23:38 Tene Oh.
23:38 * moritz wants cpan6
23:38 moritz any news on that?
23:38 prism hmm everything is a damn 6
23:38 Aankhen`` LOL, I should try out INTERCAL.
23:38 PerlJam TimToady: Should I wait with bated breath or ask for the odds?  ;-)
23:38 Aankhen`` From the manual: "Caution! Under no circumstances confuse the mesh with the interleave operator, except under confusing circumstances!"
23:38 TimToady yes
23:38 prism I run FreeBSD 6, IPv6 and im in #perl6
23:38 prism 666? yes please
23:38 * Aankhen`` runs off.
23:39 prism :P
23:39 * PerlJam thinks TimToady has been replaced by Tron's bit
23:39 moritz d'oh, even Perl 6 will come out before Debian 6 does ;)
23:39 TimToady I'm downloading Fedora 7...
23:40 PerlJam (which btw, as far as techno-movies go, I think *still* stands up well in light of the last 25 years of changes)
23:42 moritz sleep++ &
23:42 PerlJam Well, it's time for me to go to tae kwon do.  See you guys later!
23:42 PerlJam TimToady: good luck with FC7  :)
23:42 * PerlJam &
23:42 TimToady s/C//
23:44 silug joined #perl6
23:55 theorbtwo joined #perl6

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

Perl 6 | Reference Documentation | Rakudo