Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-08-06

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:05 wayland76 ruoso also has problems with irc.parrot.org :)
00:08 wayland76 And has in fact been banned.  The error when he leaves that server is "Max SendQ exceeded"
00:08 ruoso wayland76, for some reason the machines keep dropping my connection
00:09 ruoso wayland76, that's because the connection with the server is too laggy
00:09 Limbic_Region joined #perl6
00:09 huf joined #perl6
00:12 * ancients is away (4[O.F.F.L.I.N.E])
00:12 * ancients is away (4[O.F.F.L.I.N.E])
00:30 eternaleye (backlogging) wayland76: use :sigspace like this for now: m/:s <foo>/
00:42 araujo joined #perl6
00:43 eternaleye rakudo: my $foo = 'bar baz qux'; say $foo ~~ /\w+ baz \w+/; say $foo ~~ /:s \w+ baz \w+/;
00:43 p6eval rakudo a948ca:  ( no output )
00:43 eternaleye rakudo: my $foo = 'bar baz qux'; say $foo ~~ /\w+ baz \w+/; say $foo ~~ /:s \w+ baz \w+/;
00:43 p6eval rakudo a948ca:  ( no output )
00:44 eternaleye rakudo: say 'alive'
00:44 p6eval rakudo a948ca: OUTPUT«alive␤»
00:44 eternaleye rakudo: my $foo = 'bar baz qux'; say $foo ~~ /\w+ baz \w+/; say $foo ~~ /:s \w+ baz \w+/;
00:44 p6eval rakudo a948ca:  ( no output )
00:44 eternaleye slow bot is slow
00:44 stepnem joined #perl6
00:44 eternaleye rakudo: my $foo = 'bar baz qux'; say $foo ~~ /\w+ baz \w+/; say $foo ~~ /:s \w+ baz \w+/;
00:44 p6eval rakudo a948ca: OUTPUT«␤bar baz qux␤»
00:45 eternaleye _there_. wayland76: ^^^^
00:45 wayland76 Thanks :)
00:45 eternaleye np
00:48 Molaf joined #perl6
00:49 stepnem joined #perl6
00:52 pjcj joined #perl6
00:52 sunnavy joined #perl6
00:52 itz_ joined #perl6
00:52 mdxi joined #perl6
00:52 bloonix_ joined #perl6
00:52 bigpresh_ joined #perl6
00:52 ibrown joined #perl6
00:52 Lorn joined #perl6
00:52 he_ joined #perl6
00:52 edenc joined #perl6
00:52 cosimo joined #perl6
00:52 c9s joined #perl6
00:52 hexmode joined #perl6
00:52 ssm joined #perl6
00:58 gabiruh joined #perl6
00:58 PZt joined #perl6
00:58 stepnem joined #perl6
01:04 ihrd left #perl6
01:04 stepnem joined #perl6
01:07 kane_ joined #perl6
01:12 Molaf joined #perl6
01:43 nihiliad joined #perl6
01:47 Molaf joined #perl6
01:53 Molaf joined #perl6
01:54 skids_ joined #perl6
02:03 Molaf joined #perl6
02:04 colomon joined #perl6
02:10 leedo joined #perl6
02:20 ruz_mac joined #perl6
02:24 SmokeMachine joined #perl6
02:25 Molaf joined #perl6
02:42 hercynium joined #perl6
02:55 synthEEEE joined #perl6
03:03 lambdabot joined #perl6
03:07 cognominal joined #perl6
03:11 zamolxes_ joined #perl6
03:12 azawawi joined #perl6
03:12 azawawi std: "test"
03:13 p6eval std 27879: OUTPUT«ok 00:04 37m␤»
03:20 donaldh joined #perl6
03:31 nihiliad joined #perl6
03:50 __ash__ joined #perl6
03:51 pugs_svn r27880 | wayland++ | [S32/IO] Separated IO::Filesystem and IO::Filesystems
04:01 justatheory joined #perl6
04:03 __ash__ is perl 6's join documented anywhere? Like how you can do join(', ', (1, 2, 3)); and do (1, 2, 3).join(',');  yet ().^methods(); doesn't have a join method
04:07 wayland76 S32/Containers
04:08 __ash__ thanks
04:09 wayland76 Tip: Get a SVN checkout of the Perl 6 specs, then use "grep" or "ack" on it
04:09 wayland76 It was a while before I did, but it was well worth it
04:10 __ash__ i have it downloaded, just ummm had the whole rakudo project open when i did a search for join and kinda didn't think about only searching the spec directory
04:11 wayland76 Are you on Windows?
04:11 __ash__ nah, OS X (in textmate)
04:12 wayland76 Ah, ok.  I didn't think you sounded like a Unix/Linux person :)
04:12 wayland76 Although OS is Unix, admittedly :)
04:13 wayland76 (But we're OS agnostic here, of course :) )
04:13 __ash__ i am not as command line savvy as i should/could be, but i blame it on my lack of experience, or thats my current excuse while i am in college
04:14 wayland76 Well, I got a lot of my experience at Uni (== College here in Australia)
04:14 __ash__ ack is one of those commands i have to check the man pages for every time i use it, i never remember it, grep i know kinda though
04:15 wayland76 Of course, when I went through ('95-98), we had to log in to the Unix box to do our assignments, and it didn't have a GUI
04:15 wayland76 I know grep fairly well.  Ack is relatively new on me; the only option I know is "-a"
04:16 wayland76 But I know Perl5 regexes quite well, so I use it sometimes
04:16 wayland76 The big advantage of ack is that it ignores the ".svn" directory
04:16 __ash__ I have a gentoo-linux sandbox that i use to test most things i do on that has no GUI, and at my university we have a few computer labs with linux they use openSUSE
04:16 __ash__ does it ignore all hiddens by default?
04:17 wayland76 I use Fedora at home, and there are some Debian boxen at work
04:18 wayland76 No idea.
04:18 wayland76 (afk, back in 3&)
04:22 avinash joined #perl6
04:23 __ash__ I must say that http://pastie.org/573559 produced some unexpected results IMO. I expected there to only be 1 method added, not 2. does perl just parse all  the class statements before execution completely?
04:45 unitxt left #perl6
04:57 leedo joined #perl6
05:01 fridim_ joined #perl6
05:08 sri_kraih joined #perl6
05:14 tann joined #perl6
05:28 wayland76 In answer to __ash__'s question, the answer is effectively "yes".  See the BEGIN block for further info (P5 works somewhat the same)
05:34 pugs_svn r27881 | wayland++ | [S32/IO] Clarification thanks to richard++  Since this does glob(), find(), etc, I'm
05:34 pugs_svn r27881 | wayland++ | intending that it be "Everything accessible via a filesystem path" sort of thing;
05:34 pugs_svn r27881 | wayland++ | NFS mounts included, but URIs not included.
05:40 orafu joined #perl6
06:03 tann perl6: say caller.perl; # :)
06:03 p6eval rakudo a948ca: OUTPUT«Could not find non-existent sub caller␤»
06:03 p6eval ..elf 27881: OUTPUT«Undefined subroutine &GLOBAL::caller called at (eval 124) line 3.␤ at ./elf_h line 5881␤»
06:03 p6eval ..pugs: OUTPUT«Control::Caller.new((\("file", undef), \("line", undef), \("package", undef), \("sub", undef), \("subname", undef), \("subtype", undef))␤»
06:04 tann perl6: my %h; say %h<a><b>;
06:04 p6eval rakudo a948ca: OUTPUT«Method 'postcircumfix:{ }' not found for invocant of class 'Failure'␤»
06:04 p6eval ..elf 27881, pugs: OUTPUT«␤»
06:07 xinming joined #perl6
06:19 rfordinal joined #perl6
06:28 payload joined #perl6
06:41 felipe joined #perl6
06:56 rfordinal joined #perl6
07:05 finanalyst joined #perl6
07:05 finanalyst wayland76: ping
07:12 moritz_ http://use.perl.org/comments.pl?sid=43537&amp;cid=69894 ``"Spring" had a few other connotations that I liked for my purposes'' - my last name translates to "spring" ;-)
07:21 donaldh joined #perl6
07:38 Su-Shee joined #perl6
07:38 Su-Shee good morning, stars and starlets. ;)
07:38 moritz_ .oO( that startles me )
07:39 Su-Shee moritz_: pay up. ;)
07:41 Su-Shee uh. I need a pink button saying "rakudo starlet" or "starlet 6" ;)
07:42 moritz_ ;-)
07:43 Su-Shee the possibilities of "rakudo star" are endless I've realized this morning.
07:46 Matt-W Good morning
08:01 cognominal joined #perl6
08:11 Jedai joined #perl6
08:13 moritz_ pmichaud: what are your plans for merging the ins2 branch? I think now would be a good time; all of the recent reports I heard of were positive, and we've still got enough time before the next release
08:21 he_ joined #perl6
08:25 donaldh joined #perl6
08:30 agentzh joined #perl6
08:34 kane_ joined #perl6
08:52 eMaX joined #perl6
09:06 frettled joined #perl6
09:34 Su-Shee left #perl6
09:51 EDevil joined #perl6
09:51 kyle_l5l joined #perl6
09:54 thot5762 joined #perl6
09:55 thot5762 left #perl6
10:17 |Jedai| joined #perl6
10:52 finanalyst hi there
10:53 moritz_ hi
10:53 finanalyst having a problem with hyper divide
10:54 finanalyst rakudo: my @a=1..10; @b= 1<</<<@a; say @b.perl
10:54 p6eval rakudo a948ca: OUTPUT«Symbol '@b' not predeclared in <anonymous> (/tmp/prRJAkWGif:2)␤in Main (src/gen_setting.pm:3363)␤»
10:55 finanalyst rakudo: my @a=1..10; my @b= 1<</<<@a; say @b.perl
10:55 p6eval rakudo a948ca: OUTPUT«[1, 0.5, 0.333333333333333, 0.25, 0.2, 0.166666666666667, 0.142857142857143, 0.125, 0.111111111111111, 0.1]␤»
10:55 finanalyst oh it works here
10:56 moritz_ say (1 <</<< 1..10).perl
10:56 moritz_ rakudo: say (1 <</<< 1..10).perl
10:56 p6eval rakudo a948ca: OUTPUT«[1]..10␤»
10:57 moritz_ rakudo: say (1 <</<< (1..10)).perl
10:57 p6eval rakudo a948ca: OUTPUT«[1, 0.5, 0.333333333333333, 0.25, 0.2, 0.166666666666667, 0.142857142857143, 0.125, 0.111111111111111, 0.1]␤»
11:04 finanalyst std: say (1 <</<< (1..10)).perl
11:05 p6eval std 27881: OUTPUT«ok 00:02 37m␤»
11:06 finanalyst std: my @a=1..10; my @b= 1<</<<@a; say @b.perl
11:06 p6eval std 27881: OUTPUT«[31m===[0mSORRY![31m===[0m␤(Possible runaway string from line 1)␤Unable to parse quote-words subscript; couldn't find right double-angle quote at /tmp/8eexsOTeSw line 1 (EOF):␤------> [32my @a=1..10; my @b= 1<</<<@a; say @b.perl[33m⏏[31m<EOL>[0m␤FAILED 00:04 39m␤»
11:07 finanalyst ah! that's what I was getting locally
11:07 moritz_ finanalyst: 1< is parsed as a subscript, like in %h<key>
11:07 moritz_ it's generally a good idea to use whitespaces around infix operators
11:07 finanalyst so how to differentiate?
11:07 moritz_ whitespace
11:08 finanalyst std: my @a=1..10; my @b= 1 <</<< @a; say @b.perl
11:08 p6eval std 27881: OUTPUT«ok 00:02 38m␤»
11:08 moritz_ the golfers will hate us :)
11:14 EDevil hehe.. What's a hyper divide?
11:16 moritz_ EDevil: a division applied automatically to each item of a list
11:16 EDevil moritz_: So we can use this hyper thing we the other operators as well?
11:17 moritz_ EDevil: yes
11:17 moritz_ for example >>+<< adds two lists of the same lengths, item by item
11:18 EDevil >>+<<? Not <<+<< ?
11:18 moritz_ the larger side points to the higher dimensions
11:19 moritz_ so if there's a list on the left, it's >>
11:19 moritz_ if there's a scalar on the left, it's <<
11:19 moritz_ afk&
11:20 EDevil std: my @a=1..10; my @b= 1..10; say (@a>>+<<@b).perl
11:20 p6eval std 27881: OUTPUT«ok 00:03 38m␤»
11:20 donaldh joined #perl6
11:22 EDevil rakudo: my @a=1..10; my @b= 1..10; say (@a>>+<<@b).perl
11:22 p6eval rakudo a948ca: OUTPUT«[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]␤»
11:22 EDevil Ah, nice. thanks
11:22 Matt-W rakudo: my @a=1..10; my $b = 2; say (@a>>+>>$b).perl
11:23 p6eval rakudo a948ca: OUTPUT«[3, 4, 5, 6, 7, 8, 9, 10, 11, 12]␤»
11:35 ihrd joined #perl6
11:43 finanalyst moritz_: is heretodoc still unimplemented?
11:48 dakkar joined #perl6
11:52 meppl joined #perl6
11:56 colomon finanalyst: Pretty sure I saw it yesterday on the list of things that still needed to be done for Rakudo Star...
12:11 moritz_ fridim_: yes
12:11 moritz_ colomon: when rakudo uses STD.pm for parsing it will get those for free
12:17 takadonet joined #perl6
12:17 takadonet monring all
12:17 takadonet morning*
12:28 unitxt joined #perl6
12:31 ihrd left #perl6
12:36 pmichaud Good afternoon, #perl6
12:37 moritz_ oh hai
12:37 moritz_ pmichaud: it's so wierd that your timezone suddenly (roughly) matches mine :-)
12:37 moritz_ I'd expected a "good morning" at that time of day
12:38 pmichaud moritz_: it will likely change again tomorrow
12:38 moritz_ I know :)
12:40 moritz_ rakudo: say (1, 2, 3) X~ (0, 0, 0) X* (2, 2, 2)
12:40 p6eval rakudo a948ca: OUTPUT«202020202020202020404040404040404040606060606060606060␤»
12:40 moritz_ rakudo: say (1, 2, 3) X~ 0 X* (2, 2, 2)
12:41 p6eval rakudo a948ca: OUTPUT«202020404040606060␤»
12:41 takadonet ?
12:41 moritz_ rakudo: say (1, 2, 3) X~ 0 X* 2
12:41 p6eval rakudo a948ca: OUTPUT«204060␤»
12:41 moritz_ rakudo: say ~((1, 2, 3) X~ 0 X* 2)
12:41 p6eval rakudo a948ca: OUTPUT«20 40 60␤»
12:44 stepnem joined #perl6
12:44 takadonet rakudo: say "hello world"
12:44 p6eval rakudo a948ca: OUTPUT«hello world␤»
12:48 __ash__ joined #perl6
12:57 celeon joined #perl6
13:01 moritz_ pmichaud: what are your thoughts on merging ins2?
13:02 skids_ joined #perl6
13:09 Front_slash joined #perl6
13:10 celeon hello everybody!
13:10 moritz_ hi
13:11 celeon I just installed rakudo on my Debian Lenny Server to play around with perl6
13:13 celeon I had no problems, but one small notice:
13:14 pugs_svn r27882 | lwall++ | [S02] Note that coercion to Nil provides "loop else" functionality
13:14 pugs_svn r27882 | lwall++ | Define what we mean by the Parcel type.
13:14 celeon "aptitude install build-essential libicu36-dev subversion" (which is mentioned in the README file of rakudo) won't run on Debian Lenny, because libicu36-dev is now called libicu-dev
13:16 moritz_ celeon: oh, you're right, libicu36-dev is the package from etch
13:16 moritz_ I had it in my sources.list and it worked with that
13:17 moritz_ celeon: thanks, fixed.
13:17 moritz_ celeon++
13:19 celeon no problem. except for that I was really glad how easy the installation was. keep up with your good work!
13:19 moritz_ pmichaud++
13:20 moritz_ he did most of the build system work
13:21 dakkar joined #perl6
13:23 __ash__ moritz_: can i ask you something about class definitions in perl?
13:25 beggars joined #perl6
13:26 PerlJam guten tag #perl6
13:28 JimmyZ joined #perl6
13:29 SmokeMachine joined #perl6
13:36 [particle] TimToady: how does one convert a Parcel to a Capture?
13:37 [particle] my $c = \$p; # like so?
13:39 PerlJam you speak parceltoungue.
13:41 PerlJam i kan spel gud
13:41 TimToady obviously, Capture($parcel) :)
13:42 __ash__ joined #perl6
13:43 __ash__ left #perl6
13:43 masak joined #perl6
13:43 masak oh hai #perl6
13:43 phenny masak: 05 Aug 17:56Z <literal> tell masak I can't make it to tonight's meeting, will give you an update tomorrow.
13:43 phenny masak: 05 Aug 20:49Z <japhb> tell masak Please ping me when you're back; I need to pick your brain re: proto and various forms of World Domination
13:45 masak phenny: tell literal was going to tell you that I was going to miss yesterday's meeting, but was too preoccupied to do even that. looking forward to an update the next time we happen to intersect (my life will be returning to normality starting Sunday)
13:45 phenny masak: I'll pass that on when literal is around.
13:47 masak phenny: tell japhb (proto and world domination) -- sounds interesting, if not for other reasons than the fact that proto definitely _shouldn't_ figure in any world domination. :) I'm sort of mostly offline while in Portugal, but will be back home by Sunday.
13:47 phenny masak: I'll pass that on when japhb is around.
13:47 masak phenny++
13:47 * masak reads pdd28_strings.pod
13:49 molaf joined #perl6
13:50 obra_ /w/go keri
13:51 * obra_ hates his irc client
13:53 * masak kinda likes his
13:53 masak ERC++
13:54 edpratomo joined #perl6
13:56 masak anyone else getting an error running t/spec/S12-introspection/walk.t ?
13:56 * masak is getting 'Parameter type check failed; expected Any, but got Object for $class in call to block_86'
13:57 PerlJam masak: aye. same here.
13:57 masak PerlJam: you reckon we should try and fix it? :P
13:57 nihiliad joined #perl6
13:59 payload joined #perl6
14:00 * PerlJam double checks to make sure it's not just an artifact of his build (just in case)
14:00 PerlJam (Is is just me, or has parrot gotten faster lately?)
14:00 EDevil Is there a place we can check for what still needs to be done for rakudo *?
14:01 EDevil PerlJam: I think they are removing the sleep() calls. :)
14:01 PerlJam EDevil: spec tests that are TODO  :)
14:02 masak PerlJam: it's just you :)
14:02 PerlJam yeah, maybe I just haven't watched it do it's thing when compiling rakudo in a while.
14:03 masak EDevil: perhaps a better question is asking yourself what _you_ need.
14:03 masak PerlJam: compared to nine months ago, it's definitely slower.
14:03 masak PerlJam: (but probably also more correct)
14:04 EDevil masak: I'm just motivated to fill bugs since I was at your presentation.
14:05 EDevil I suppose this is bad:
14:05 EDevil Null PMC access in isa()
14:05 EDevil in sub Test::is (Test.pm:67)
14:05 EDevil called from Main (t/spec/S03-operators/autoincrement-range.rakudo:93)
14:05 EDevil t/spec/S03-operators/autoincrement-range.rakudo..................  Dubious, test returned 1 (wstat 256, 0x100)
14:05 EDevil Failed 63/96 subtests
14:05 Matt-W null PMC access is ALWAYS bad
14:06 masak EDevil: yes.
14:06 pnu joined #perl6
14:06 masak EDevil: please file.
14:06 masak EDevil: *however*...
14:06 masak if you're keen on going the extra mile, you should check what in that test file it is that causes the Null PMC Access.
14:07 masak sort of try subsets of the file and find the minimal subset that errors out.
14:07 masak that helps the devs immensely.
14:07 EDevil Ok. That seems doable for someone who hasn't tried perl6 yet.
14:08 __ash__ joined #perl6
14:08 masak it is, that's the nice part.
14:08 masak you're basically exercising a black box.
14:09 masak PerlJam: here's the golfed error in walk.t:
14:10 masak rakudo: 1.WALK(:name<m>,:descendant)
14:10 p6eval rakudo 6ba717: OUTPUT«Parameter type check failed; expected Any, but got Object for $class in call to block_86␤in sub Perl6Object::block_86 (src/gen_setting.pm:1416)␤called from sub Perl6Object::block_86 (src/gen_setting.pm:1419)␤called from sub Perl6Object::block_86
14:10 p6eval ..(src/gen_setting.pm:1419)␤called fro…
14:10 masak actually,
14:10 masak rakudo: 1.WALK(:name,:descendant)
14:10 p6eval rakudo 6ba717: OUTPUT«Parameter type check failed; expected Any, but got Object for $class in call to block_86␤in sub Perl6Object::block_86 (src/gen_setting.pm:1416)␤called from sub Perl6Object::block_86 (src/gen_setting.pm:1419)␤called from sub Perl6Object::block_86
14:10 p6eval ..(src/gen_setting.pm:1419)␤called fro…
14:11 * ancients is away (4[O.F.F.L.I.N.E])
14:12 masak ancients: how can you be in the channel and offline at the same time?
14:12 EDevil masak: The line that fails is marked with todo: autoincrement-range.rakudo:93 - todo('Hebrew'); is( ++$x, "\x[5d0]\x[5d0]\x[5d0]", "'\x[5ea]\x[5ea]'++ is '\x[5d0]\x[5d0]\x[5d0]'" );
14:12 Matt-W masak: it's like magic
14:13 PerlJam I don't know if it's really relevant, but I recall reading a commit message from jnthn about changing something from Any to Object recently.
14:13 PerlJam let me see if I can find it.
14:13 masak PerlJam++
14:14 masak EDevil: yes, fail is what TODO tests do, so that's expected.
14:14 __ash__ i am sure i am 'doing it wrong' but what is the right way of doing http://pastie.org/574050 in perl 6?
14:14 * masak looks
14:15 masak __ash__: looks like you'd want to do metaclass fiddling to accomplish that.
14:17 payload joined #perl6
14:18 __ash__ masak: okay, i'll look around in the spec to see if there are any examples of what i am doing, there probably are and I just missed them
14:20 PerlJam __ash__: you *might* be able to do it with judicious use of eval
14:20 masak but, I think, there are known holes in that cheese.
14:20 PerlJam Well, I can't find the commit from jnthn I was thinking of, so I may have actually been conflating a couple of other commits in my head.
14:22 PerlJam rakudo doesn't understand junctional types yet does it?
14:22 PerlJam my Int|Str $ffo;
14:23 justatheory joined #perl6
14:24 masak rakudo: my Int|Str $foo = 5; $foo = "five"; say $foo
14:24 p6eval rakudo 6ba717: OUTPUT«Malformed declaration at line 2, near "Int|Str $f"␤in Main (src/gen_setting.pm:3363)␤»
14:24 TimToady might never, in that form
14:24 TimToady problem is that | is also prefix for capture
14:24 __ash__ i noticed that perl seems to compile the whole class regardless of the if's, i am just used to languages like ruby that do a single pass to figure everything out, kinda surprised me when it was adding all the methods to the class, then it seemed to be running the code after that, so its not evaluating the class definition at runtime
14:24 masak TimToady: won't that disambiguate, just like prefix:<+> and infix:<+>?
14:25 TimToady doesn't work if we have juxtaposing &
14:25 masak oh.
14:25 masak right.
14:26 PerlJam __ash__: in perl, many things happen at compile time rather than run time.  I like to think that this is an advantage  ;)
14:27 __ash__ PerlJam: I think it is too (thats why you can actually have macro's in perl, for instance) but how would one go about adding methods at run time?
14:27 masak __ash__: using the metaclass.
14:27 masak __ash__: see Moose for prior art.
14:28 PerlJam for some reason thinking of Moose as "prior art" for Perl 6 strikes me as funny.
14:29 edpratomo hello
14:29 edpratomo is this http://svn.pugscode.org/pugs/docs/Perl6/FAQ/Capture.pod obsolete?
14:30 masak PerlJam: yeah, it's actually a bit of a horizontal transfer things, which kinda destroys the tree view of history. :)
14:30 TimToady looking
14:30 edpratomo i'm trying to understand the difference between $x = (1, 2, 3) and @y = (1, 2, 3)
14:31 edpratomo the FAQ said $x.push(0); # FAIL: cannot find method: List.push
14:31 edpratomo but it works just fine
14:31 masak edpratomo: correct. I think that nowadays, that List is promoted somehow to an Array.
14:31 TimToady rakudo: my $x = (1,2,3); say $x.WHAT
14:31 edpratomo masak: ah.. i see
14:31 p6eval rakudo 6ba717: OUTPUT«Array()␤»
14:31 TimToady that's actually not according to spec
14:32 masak but don't take my word for it... what TimToady said. :)
14:32 TimToady but it may promote to Parcel rather than Capture
14:32 edpratomo listening to mr timtoady
14:32 masak edpratomo: in case you're wondering, "Parcel" hit the spec a couple of minutes ago :)
14:32 * TimToady is still looking at the Capture FAQ
14:33 TimToady there are many places that say Capture that will probably end up saying Parcel insteaqd
14:33 edpratomo masak: aah that's why it sound unfamiliar :-)
14:34 clkao "trouting parrot"
14:37 * masak tries to look up a verb meaning of 'trout', fails
14:37 PerlJam masak: you need clkao's dictionary
14:37 [particle] cursing in front of a large audience of perl hackers?
14:37 masak yes, that was my fallback meaning :)
14:40 JimmyZ rakudo: HOW(Str).methods;
14:40 p6eval rakudo 6ba717: OUTPUT«Method 'methods' not found for invocant of class ''␤»
14:40 JimmyZ masak: hello, We lost this spectests.
14:41 JimmyZ I don't know which file to add it.
14:41 masak we lost it, or we never had one?
14:41 JimmyZ we never had one.
14:41 masak (and hello to you too)
14:42 JimmyZ It's referred to by S02
14:42 JimmyZ Or S12?
14:42 masak JimmyZ: S12-introspection, somewhere.
14:43 JimmyZ the HOW function was referred to by S02, but HOW method mostly was by S12
14:43 moritz_ re
14:43 moritz_ __ash__: feel free to ask
14:43 JimmyZ and some was by S02 too.
14:43 masak JimmyZ: that's probably mostly incidental. they're the same, after all.
14:44 __ash__ moritz_: oh, yeah, sorry about that last night, it was late and I went to bed, masak answered my question
14:44 TimToady there is a lot of stuff in S02 that needs to move elsewhere
14:46 masak __ash__: I was discussing this with jnthn yesterday.
14:46 moritz_ __ash__: ah, just read your nopaste in the backlog. That's something that should work in Perl 6, but is not implemented in Rakudo
14:46 masak we'll probably be looking a bit at how Moose handles metaclasses, and stick to that when we can.
14:46 masak I have a mind to look at Moose tests for this, and port them to t/spec
14:47 TimToady stevan's MOP role got composed into both p6 and p5 :)
14:47 alester joined #perl6
14:47 JimmyZ masak: I will add it.
14:48 nihiliad joined #perl6
14:48 masak JimmyZ: great.
14:49 moritz_ that Parcel... does it store if something is handled as a named argument?
14:49 masak it has to, no?
14:49 justatheory joined #perl6
14:49 moritz_ the example in S02 says it stores a Pair, but that's not sufficient to know if it's named
14:50 masak oh!
14:50 masak I'm still sometimes a bit unnerved by the mixing of Pairs and nameds.
14:52 [particle] multi foo(Pair $x) {...}; multi foo(:$x) {...}; foo( x => 1 ); # what happens?
14:52 TimToady when we convert a Parcel to a Capture, any Pairs in the list become named args
14:52 masak TimToady: so, what about when you want to pass a pair?
14:53 TimToady (:foo) is a Parcel, so isn't named
14:53 TimToady func( (:foo) ) doesn't turn its arg into a Capture
14:53 masak ok.
14:53 TimToady or rather, it's a Capture of (Parcel)
14:54 moritz_ [particle]:  x => 1 is named, so it'll call the second candidate
14:54 masak right.
14:54 moritz_ [particle]: 'x' => 1 would be positional pair (first candidate)
14:54 [particle] ok, that was my next question :)
14:54 Jedai joined #perl6
14:54 TimToady we can always tell where named args are wanted at compile time
14:55 Psyche^ joined #perl6
14:55 TimToady though the Parcel -> Capture transformation is what is happening underneath
14:55 [particle] Parcel(Capture($parcel)) lossless?
14:55 moritz_ my $x := (2, 3, 'x' => 4, :x(5)); foo(|$x)
14:55 TimToady no
14:56 moritz_ that would be two named, right?
14:56 payload joined #perl6
14:56 TimToady yes, | does the P2C
14:56 TimToady and then stitches in the Capture
14:57 TimToady [particle]: P(C(P)) is likely to lose nameds
14:57 TimToady unless you say P(|C(P)), I suspect
14:58 TimToady it's possible that P() has to be special at some level to suppress capturization of its args
14:59 moritz_ just like postcircumfix:<( )> is special :-)
14:59 masak moritz_: it works now in Rakudo, btw :)
14:59 masak jnthn++
14:59 [particle] |C(), hrmm
14:59 moritz_ masak: what? conditional methods/attributes?
15:00 masak rakudo: class A { method postcircumfix:<( )>() { say "OH HAI" } }; my $x = A.new; $x()
15:00 p6eval rakudo 6ba717: OUTPUT«invoke() not implemented in class 'A'␤in Main (/tmp/3RGjos1eOt:2)␤»
15:00 masak hmm... :/
15:00 masak jnthn: ping
15:01 moritz_ masak: I thought that needed the PCC rewire?
15:01 masak moritz_: so did jnthn, but it turned out there was an easy fix.
15:01 masak but I suppose he hasn't pushed it yet.
15:01 moritz_ seems like
15:03 masak there was something about a non-API Parrot call, which jnthn had to clear with pm. he did, though.
15:05 moritz_ push it, push it!
15:05 moritz_ maybe postcircumfix:<( )> should get a special name, since it's special anyway
15:06 moritz_ something that's less ugly to type
15:06 moritz_ :-)
15:07 masak moritz_: there's always &.()
15:07 masak (from S13)
15:08 moritz_ std: class A { method &.() { } }
15:08 p6eval std 27882: OUTPUT«ok 00:02 38m␤»
15:08 moritz_ oh wow
15:08 Chillance joined #perl6
15:09 moritz_ I wonder if that'll make a good obfu
15:11 masak moritz_: it's certainly good for Web.pm, whose API needs things with postcircumfix:<( )>
15:12 moritz_ it needs?
15:12 moritz_ so how could you live without it so far?
15:12 masak yes.
15:12 masak moritz_: I worked around it and called it 'call'.
15:12 moritz_ s/it needs/it benefits from/
15:13 masak moritz_: no, the final API needs it.
15:20 donaldh joined #perl6
15:21 KyleHa joined #perl6
15:25 sri_kraih_ joined #perl6
15:25 masak http://gist.github.com/163370
15:26 JimmyZ rakudo: ^Str.methods.join(", ").say;
15:26 p6eval rakudo 6ba717: OUTPUT«Method 'methods' not found for invocant of class ''␤»
15:26 JimmyZ rakudo: Str.HOW.methods.join(", ").say;
15:26 p6eval rakudo 6ba717: OUTPUT«too few arguments passed (1) - 3 params expected␤in Main (/tmp/40s5hc4DUc:2)␤»
15:26 JimmyZ rakudo: Str.HOW.methods(:local).join(", ").say;
15:26 p6eval rakudo 6ba717: OUTPUT«invalid arg type in named portion of args␤in Main (/tmp/UqWjj1WGiO:2)␤»
15:26 moritz_ rakudo: say ^Str.methods.join(", ").PARROT
15:26 p6eval rakudo 6ba717: OUTPUT«Method 'methods' not found for invocant of class ''␤»
15:27 JimmyZ rakudo: Str.HOW.methods('').join(", ").say;
15:27 p6eval rakudo 6ba717: OUTPUT«pred, encode, succ, ACCEPTS, perl, WHICH, sprintf, Scalar, trim, chr, floor, rand, 1, round, 1, 1, 1, split, 1, grep, words, values, can, lcfirst, srand, 1, map, 1, cis, kv, samecase, 1, min, capitalize, max, first, trans, flip, does, 1, p5chop, lc, 2, 1, 1, 1, 1, reduce, 1,
15:27 p6eval ..ceilin…
15:27 moritz_ rakudo: say Str.^methods.join(", ").PARROT
15:27 p6eval rakudo 6ba717: OUTPUT«Str␤»
15:27 moritz_ rakudo: say Str.^methods.join(", ").say
15:27 p6eval rakudo 6ba717: OUTPUT«sprintf, Scalar, pred, encode, succ, ACCEPTS, perl, WHICH, ord, capitalize, 2, round, 1, 1, split, 1, words, p5chop, lc, join, reduce, srand, trim, reverse, isa, 1, 1, 1, ucfirst, 1, rand, 1, fmt, first, trans, 1, 1, grep, 2, 1, 1, uc, 1, chr, pairs, samecase, 1, flip, does,
15:27 p6eval ..1, can…
15:27 JimmyZ rakudo: say Str.^methods.join(", ").perl
15:27 p6eval rakudo 6ba717: OUTPUT«"pred, encode, succ, ACCEPTS, perl, WHICH, sprintf, Scalar, 1, join, 2, 1, 1, 1, 1, 1, ceiling, trim, p5chomp, pairs, unpolar, ord, rand, 1, 1, 1, 1, 1, grep, values, 1, roots, reverse, isa, ucfirst, kv, samecase, capitalize, fmt, bytes, flip, does, p5chop, lc, reduce, chr, 1,
15:27 p6eval ..1, 1…
15:28 JimmyZ We needs more tests ;)
15:28 masak aye.
15:28 moritz_ sure, feel free
15:28 masak patches welcome.
15:29 JimmyZ rakudo: Str.HOW.methods().join(", ").say;
15:29 JimmyZ rakudo: Str.HOW.methods.join(", ").say;
15:29 p6eval rakudo 6ba717: OUTPUT«too few arguments passed (1) - 3 params expected␤in Main (/tmp/wf9MsByEgS:2)␤»
15:29 moritz_ commit bits handed out cheaply, in a limited action
15:29 p6eval rakudo 6ba717: OUTPUT«too few arguments passed (1) - 3 params expected␤in Main (/tmp/r1wXye2IxY:2)␤»
15:29 moritz_ JimmyZ: that's not supposed to work
15:29 moritz_ $a.^b is a shortcut for $a.HOW.b($a)
15:30 moritz_ so if you use .HOW, you have to pass the original invocant as first arguments
15:30 JimmyZ moritz_: that's should be to work ( as default )
15:30 moritz_ it can't.
15:31 JimmyZ moritz_: Str.HOW.methods;   # same thing with the prototype object Str, FROM S02
15:32 moritz_ JimmyZ: then this part of the spec need fixing
15:33 moritz_ unless it's a default...
15:34 TimToady how could it know?
15:36 JimmyZ moritz_: S12 maybe should need fixing
15:36 JimmyZ moritz_: I think I can do that, If I think that is right.
15:36 JimmyZ MyClass.HOW.methods($obj)       # get the method list of MyClass
15:37 JimmyZ It should be MyClass.HOW.methods()       # get the method list of MyClass
15:37 JimmyZ and others place like this.
15:37 JimmyZ s/others place/other places/
15:38 moritz_ MyClass.HOW.methods($obj) is correct
15:39 JimmyZ what's the $obj?
15:40 JimmyZ what's it to do?
15:40 JimmyZ Whether S02 or S12 is wrong.
15:42 JimmyZ moritz_++; # if you fix that ;)
15:42 moritz_ sorry, I can't muster the concentration right now to look it up and answer
15:42 moritz_ maybe later tonighter
15:42 JimmyZ moritz_: thanks, anyway.
15:42 TimToady MyClass.HOW.methods(MyClass) is correct
15:43 TimToady since MyClass is the object in question
15:43 TimToady that's what MyClass.^methods translates to
15:43 JimmyZ Is it redundance ?
15:43 JimmyZ since there were two MyClass
15:44 TimToady .HOW just returns the metaobject, so how is the method to know what the original object is?
15:44 moritz_ not all instances managed by the metaobject have the exact same structure
15:44 TimToady one metaobject can be managing any number of actual objects, and it has to know which one
15:44 moritz_ if you don't want the redundancy, call it as MyClass.^methods
15:45 JimmyZ moritz_: I see, thanks again.
15:45 moritz_ then you don't have to write MyClass twice
15:45 JimmyZ and thanks TimToady
15:46 JimmyZ rakudo: HOW(Str).methods(Str).perl.say;
15:46 p6eval rakudo 6ba717: OUTPUT«Method 'methods' not found for invocant of class ''␤»
15:46 JimmyZ Is it right?
15:47 JimmyZ Str.HOW.methods(Str) or 'x'.HOW.methods('x')
15:47 moritz_ right
15:47 moritz_ of course you can also write Str.HOW.methods('x')
15:47 moritz_ the chances that Str and 'x' are managed by the same metaobjects are pretty high, I think
15:47 JimmyZ should I fix S02?
15:52 Front_slash joined #perl6
15:52 JimmyZ I think 'x'.HOW.methods is wrong too.
15:53 JimmyZ sorry.
15:53 JimmyZ it's ^Str.methods
15:55 dakkar rakudo: @a=<a b c d>;say @a[1.3];@a.splice(1.5,1);say ~@a
15:55 p6eval rakudo 6ba717: OUTPUT«Symbol '@a' not predeclared in <anonymous> (/tmp/1K3xCfMgUR:2)␤in Main (src/gen_setting.pm:3363)␤»
15:55 dakkar rakudo: my @a=<a b c d>;say @a[1.3];@a.splice(1.5,1);say ~@a
15:56 p6eval rakudo 6ba717: OUTPUT«b␤a b d␤»
15:56 TimToady JimmyZ: sure, you may fix that
15:59 abra joined #perl6
16:04 tann joined #perl6
16:07 pugs_svn r27883 | jimmy++ | [Spec/S02-bits.pod] fixed spec, see S12 for more.
16:09 KyleHa Yay for spec fixes.
16:10 JimmyZ good night #perl6
16:18 nihiliad joined #perl6
16:22 SmokeMachine joined #perl6
16:25 nihiliad joined #perl6
16:27 nErVe joined #perl6
16:28 dakkar joined #perl6
16:28 RonOreck joined #perl6
16:30 cdarroch joined #perl6
16:35 __ash__ so is there a working spec/idea/stuff? about how the meta classes should work? S12-introspection/meta-class.t is rather um not specific about some things
16:35 moritz_ it just deals with introspection
16:35 moritz_ so I know that there are ideas, but I don't think there are specs yet
16:38 kane_ joined #perl6
16:40 japhb Damn.  Missed masak again.
16:40 phenny japhb: 13:47Z <masak> tell japhb (proto and world domination) -- sounds interesting, if not for other reasons than the fact that proto definitely _shouldn't_ figure in any world domination. :) I'm sort of mostly offline while in Portugal, but will be back home by Sunday.
16:40 japhb Thanks, phenny
16:45 masak` joined #perl6
16:47 masak_lolcat joined #perl6
16:47 masak_lolcat oh hai
16:47 masak_lolcat japhb: you rang?
16:51 rfordinal joined #perl6
16:51 dakkar_ joined #perl6
16:51 japhb masak_lolcat: ceiling cat got your tongue?  ;-)
16:52 TimToady japhb: WiFi is very spotty here
16:52 [particle] joined #perl6
16:52 japhb TimToady: bah.
16:52 arthur-_ joined #perl6
16:52 japhb TimToady: and thanks for the heads up
16:53 TimToady we're at a cafe in south lisbon
16:53 japhb Too bad mesh networking hasn't gotten pervasive yet.
16:54 TimToady where "we" is N ≅ 12
16:56 japhb I'll try masak via email then
16:58 japhb Someone tell masak to check gmail.  ;-)
17:00 dakkar_ japhb: done
17:01 japhb dakkar_: thx
17:02 pugs_svn r27884 | jnthn++ | [t/spec] Unfudge tests for junctions of code objects.
17:05 arthur-_ joined #perl6
17:05 __ash__ are both parrot and pugs under active development? i thought i read somewhere that pugs was not being worked at the moment
17:06 moritz_ __ash__: that is correct
17:06 tann joined #perl6
17:06 arthur-_ joined #perl6
17:07 __ash__ is pugs_svn then just the home of the spec?
17:08 moritz_ it's the home of the spec tests, the spec, some documentation, smop, mildew, elf...
17:08 moritz_ some websites are also in there
17:08 __ash__ got ya
17:08 TimToady and, um, STD
17:08 moritz_ and camelia
17:08 japhb __ash__: the "pugs" repo is now pretty much a "generic Perl 6" repo.  It just never got renamed.
17:09 moritz_ and kp6
17:09 TimToady it now stands for "public updates generate synergy" :)
17:09 moritz_ ;-)
17:10 skids_ joined #perl6
17:12 pugs_svn r27885 | jnthn++ | [t/spec] Simplify some signatures; we're not testing slices or taking a capture in a signature in these tests at all.
17:44 M_o_C joined #perl6
17:51 leedo joined #perl6
17:53 rfordinal joined #perl6
18:00 iblechbot joined #perl6
18:37 araujo joined #perl6
18:42 Jedai joined #perl6
18:55 alester joined #perl6
18:55 alester pmichaud: Are you gonna be around this evening?  That we can discuss some PR plans?
19:16 KyleHa joined #perl6
19:17 ruoso joined #perl6
19:18 KyleHa Is it true that  $var.isa($type) && $var ~~ $type   ?
19:18 KyleHa Does  $var ~~ $type   imply   $var.isa($type)   (barring deliberate attempts to override .isa and such)?
19:20 KyleHa Is it true that   $var.isa($var.WHAT)   ?
19:24 moritz_ KyleHa: $a ~~ Type is the same as $a.does(Type)
19:24 * ruoso f**king irc.perl.org server doesn't like me
19:24 moritz_ and $var.isa($var.WHAT) is true
19:26 moritz_ pmichaud: I just gave your "cool Perl 6 operators" talk ;-)
19:27 KyleHa rakudo: use Test;plan 2; enum Color <white gray black>;ok Color.pick.does( Color ), 'enum does itself'; isa_ok Color.pick, Color.pick.WHAT, 'Color.pick makes no sense';
19:27 p6eval rakudo 459f5a: OUTPUT«1..2␤ok 1 - enum does itself␤not ok 2 - Color.pick makes no sense␤# Looks like you failed 1 tests of 2␤»
19:28 KyleHa rakudo: enum Color <white gray black>;my $p = Color.pick; say $p.isa($p.WHAT);
19:28 p6eval rakudo 459f5a: OUTPUT«0␤»
19:29 moritz_ rakudo: rakudo: enum Color <white gray black>;my $p = Color.pick; say $p.PARROT
19:29 p6eval rakudo 459f5a: OUTPUT«Statement not terminated properly at line 2, near ": enum Col"␤in Main (src/gen_setting.pm:3366)␤»
19:29 KyleHa Prosecution rests.
19:29 moritz_ rakudo: enum Color <white gray black>; my $p = Color.pick; say $p.PARROT
19:29 p6eval rakudo 459f5a: OUTPUT«Perl6Role␤»
19:30 KyleHa It all started with this:
19:31 KyleHa rakudo: enum Color <white gray black>; my Color $p = Color.pick;say 'oh hai';
19:31 p6eval rakudo 459f5a: OUTPUT«Assignment type check failed; expected Color, but got Color␤in Main (/tmp/jkymX7iFDa:2)␤»
19:31 KyleHa "expected Color, but got Color" is even better than "expected , but got Foo".
19:38 pugs_svn r27886 | kyle++ | [t/spec] something wrong with .pick on an enum
19:39 rfordinal left #perl6
19:39 KyleHa I found a typo for my first commit to Rakudo, to test when I have a bit for that.
19:42 KyleHa Also, I figured out that one of my Test.pm patches is causing a spectest failure.
20:05 M_o_C joined #perl6
20:14 zamolxes joined #perl6
20:15 payload joined #perl6
20:35 skids__ joined #perl6
20:44 PZt joined #perl6
20:46 nihiliad joined #perl6
20:55 arnsholt joined #perl6
20:57 braceta joined #perl6
21:09 donaldh joined #perl6
21:13 pugs_svn r27887 | kyle++ | [t/spec] Test for RT #68242
21:14 hanekomu joined #perl6
21:26 Jedai joined #perl6
21:30 rindolf joined #perl6
21:43 maja_ joined #perl6
22:11 __ash__ joined #perl6
22:22 nervokid joined #perl6
22:33 nihiliad joined #perl6
22:33 nacho_ joined #perl6
22:37 Limbic_Region joined #perl6
22:41 eternaleye joined #perl6
22:45 ihrd joined #perl6
23:01 eternaleye joined #perl6
23:03 cytoplasm joined #perl6
23:13 ruoso joined #perl6
23:30 kane_ joined #perl6

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

Perl 6 | Reference Documentation | Rakudo