»ö« | perl6-projects.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by moritz_ on 30 July 2009.
00:01 alester left
wayland76 ruoso also has problems with irc.parrot.org :) 00:05
And has in fact been banned. The error when he leaves that server is "Max SendQ exceeded" 00:06
ruoso wayland76, for some reason the machines keep dropping my connection
wayland76, that's because the connection with the server is too laggy
00:07 Limbic_Region joined 00:08 huf left 00:09 huf joined
ancients is away (4[O.F.F.L.I.N.E]) 00:12
00:12 ancients is now known as [ancients], [ancients] is now known as ancients
ancients is away (4[O.F.F.L.I.N.E]) 00:12
00:24 Whiteknight left
eternaleye (backlogging) wayland76: use :sigspace like this for now: m/:s <foo>/ 00:30
00:32 araujo left 00:40 stepnem left 00:42 araujo joined
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 )
eternaleye rakudo: my $foo = 'bar baz qux'; say $foo ~~ /\w+ baz \w+/; say $foo ~~ /:s \w+ baz \w+/;
p6eval rakudo a948ca: ( no output )
eternaleye rakudo: say 'alive' 00:44
p6eval rakudo a948ca: OUTPUT«alive␤»
eternaleye rakudo: my $foo = 'bar baz qux'; say $foo ~~ /\w+ baz \w+/; say $foo ~~ /:s \w+ baz \w+/;
p6eval rakudo a948ca: ( no output )
eternaleye slow bot is slow
00:44 stepnem joined
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␤»
eternaleye _there_. wayland76: ^^^^ 00:45
wayland76 Thanks :)
eternaleye np
00:47 stepnem left 00:48 ssm left, Molaf left, gabiruh left, Molaf joined 00:49 cosimo left, he_ left, ibrown left, bloonix_ left, mdxi left, hexmode left, edenc left, itz_ left, pjcj left, Lorn left, c9s left, sunnavy left, bigpresh_ left, stepnem joined 00:52 ssm joined, pjcj joined, sunnavy joined, itz_ joined, mdxi joined, bloonix_ joined, bigpresh_ joined, ibrown joined, Lorn joined, he_ joined, edenc joined, cosimo joined, c9s joined, hexmode joined, stepnem left 00:57 kane_ left 00:58 gabiruh joined, PZt joined, stepnem joined 01:00 stepnem left 01:01 meppl left, ibrown left 01:04 ihrd left, stepnem joined 01:06 cdarroch left, Jedai left 01:07 kane_ joined 01:12 Molaf left, Molaf joined 01:22 SmokeMachine left 01:29 kborer_ left 01:43 nihiliad joined 01:46 Molaf left 01:47 Molaf joined 01:53 Molaf left, Molaf joined 01:54 skids_ joined 02:01 payload left 02:03 colomon left, Molaf left, Molaf joined 02:04 colomon joined 02:10 leedo left, leedo joined 02:14 leedo left 02:20 ruz_mac joined 02:21 tann left 02:24 SmokeMachine joined 02:25 Molaf left, Molaf joined 02:30 LCamel left 02:36 felipe left 02:40 kane_ left 02:42 hercynium joined 02:47 cognominal left 02:55 synthEEEE joined 02:59 lambdabot left 03:01 PZt left 03:03 lambdabot joined 03:07 cognominal joined 03:11 Limbic_Region left, zamolxes_ joined 03:12 azawawi joined
azawawi std: "test" 03:12
p6eval std 27879: OUTPUT«ok 00:04 37m␤» 03:13
03:13 synth left 03:14 azawawi left 03:20 donaldh left, donaldh joined 03:23 zamolxes left 03:31 nihiliad left, nihiliad joined 03:50 __ash__ joined
pugs_svn r27880 | wayland++ | [S32/IO] Separated IO::Filesystem and IO::Filesystems 03:51
04:01 justatheory joined
__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:03
wayland76 S32/Containers 04:07
__ash__ thanks 04:08
wayland76 Tip: Get a SVN checkout of the Perl 6 specs, then use "grep" or "ack" on it 04:09
It was a while before I did, but it was well worth it
__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:10
wayland76 Are you on Windows? 04:11
__ash__ nah, OS X (in textmate)
wayland76 Ah, ok. I didn't think you sounded like a Unix/Linux person :) 04:12
Although OS is Unix, admittedly :)
(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
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
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
I know grep fairly well. Ack is relatively new on me; the only option I know is "-a"
But I know Perl5 regexes quite well, so I use it sometimes 04:16
The big advantage of ack is that it ignores the ".svn" directory
__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
does it ignore all hiddens by default?
wayland76 I use Fedora at home, and there are some Debian boxen at work 04:17
No idea. 04:18
(afk, back in 3&)
04:20 skids_ left 04:22 avinash joined
__ash__ I must say that 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:23
04:25 avinash left 04:32 justatheory left 04:36 sri_kraih left, nihiliad left 04:37 __ash__ left 04:45 unitxt left 04:57 leedo joined 05:01 fridim_ joined 05:07 leedo left 05:08 sri_kraih joined 05:14 tann joined
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:28
pugs_svn r27881 | wayland++ | [S32/IO] Clarification thanks to richard++ Since this does glob(), find(), etc, I'm 05:34
r27881 | wayland++ | intending that it be "Everything accessible via a filesystem path" sort of thing;
r27881 | wayland++ | NFS mounts included, but URIs not included.
05:40 orafu left, orafu joined
tann perl6: say caller.perl; # :) 06:03
p6eval rakudo a948ca: OUTPUT«Could not find non-existent sub caller␤»
..elf 27881: OUTPUT«Undefined subroutine &GLOBAL::caller called at (eval 124) line 3.␤ at ./elf_h line 5881␤»
..pugs: OUTPUT«Control::Caller.new((\("file", undef), \("line", undef), \("package", undef), \("sub", undef), \("subname", undef), \("subtype", undef))␤»
tann perl6: my %h; say %h<a><b>; 06:04
p6eval rakudo a948ca: OUTPUT«Method 'postcircumfix:{ }' not found for invocant of class 'Failure'␤»
..elf 27881, pugs: OUTPUT«␤»
06:06 xinming left 06:07 xinming joined 06:18 rfordinal left 06:19 rfordinal joined 06:28 payload joined 06:31 ruz_mac left 06:38 rfordinal left 06:41 felipe joined 06:49 agentzh left 06:56 rfordinal joined 07:05 finanalyst joined
finanalyst wayland76: ping 07:05
moritz_ use.perl.org/comments.pl?sid=43537&cid=69894 ``"Spring" had a few other connotations that I liked for my purposes'' - my last name translates to "spring" ;-) 07:12
07:20 donaldh left 07:21 donaldh joined 07:38 Su-Shee joined
Su-Shee good morning, stars and starlets. ;) 07:38
moritz_
.oO( that startles me )
Su-Shee moritz_: pay up. ;) 07:39
uh. I need a pink button saying "rakudo starlet" or "starlet 6" ;) 07:41
moritz_ ;-) 07:42
Su-Shee the possibilities of "rakudo star" are endless I've realized this morning. 07:43
Matt-W Good morning 07:46
07:49 zamolxes_ left 08:00 cognominal left 08:01 cognominal joined 08:05 frettled left 08:11 Jedai joined 08:13 he_ left
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:13
08:21 he_ joined 08:23 araujo left 08:24 donaldh left 08:25 donaldh joined 08:30 agentzh joined 08:34 kane_ joined 08:52 eMaX joined 09:00 tann left 09:06 frettled joined 09:34 Su-Shee left 09:44 kane_ left 09:51 EDevil joined, kyle_l5l joined 09:54 thot5762 joined 09:55 thot5762 left 09:57 kyle_l5l left 10:03 Molaf left 10:17 |Jedai| joined 10:31 Jedai left
finanalyst hi there 10:52
moritz_ hi 10:53
finanalyst having a problem with hyper divide
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)␤»
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]␤»
finanalyst oh it works here
moritz_ say (1 <</<< 1..10).perl 10:56
rakudo: say (1 <</<< 1..10).perl
p6eval rakudo a948ca: OUTPUT«[1]..10␤»
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]␤»
finanalyst std: say (1 <</<< (1..10)).perl 11:04
p6eval std 27881: OUTPUT«ok 00:02 37m␤» 11:05
finanalyst std: my @a=1..10; my @b= 1<</<<@a; say @b.perl 11:06
p6eval std 27881: OUTPUT«===SORRY!===␤(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):␤------> y @a=1..10; my @b= 1<</<<@a; say @b.perl⏏<EOL>␤FAILED 00:04 39m␤»
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 ruoso left
moritz_ it's generally a good idea to use whitespaces around infix operators 11:07
finanalyst so how to differentiate?
moritz_ whitespace
finanalyst std: my @a=1..10; my @b= 1 <</<< @a; say @b.perl 11:08
p6eval std 27881: OUTPUT«ok 00:02 38m␤»
moritz_ the golfers will hate us :)
EDevil hehe.. What's a hyper divide? 11:14
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?
moritz_ EDevil: yes 11:17
for example >>+<< adds two lists of the same lengths, item by item
EDevil >>+<<? Not <<+<< ? 11:18
moritz_ the larger side points to the higher dimensions
so if there's a list on the left, it's >> 11:19
if there's a scalar on the left, it's <<
afk&
11:20 donaldh left
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
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]␤»
EDevil Ah, nice. thanks
Matt-W rakudo: my @a=1..10; my $b = 2; say (@a>>+>>$b).perl
p6eval rakudo a948ca: OUTPUT«[3, 4, 5, 6, 7, 8, 9, 10, 11, 12]␤» 11:23
11:24 payload left 11:35 ihrd joined
finanalyst moritz_: is heretodoc still unimplemented? 11:43
11:46 finanalyst left 11:48 dakkar joined 11:52 meppl joined
colomon finanalyst: Pretty sure I saw it yesterday on the list of things that still needed to be done for Rakudo Star... 11:56
12:02 SmokeMachine left 12:04 athomason left
moritz_ fridim_: yes 12:11
colomon: when rakudo uses STD.pm for parsing it will get those for free
12:13 dakkar left 12:17 takadonet joined
takadonet monring all 12:17
morning*
12:28 unitxt joined 12:31 ihrd left
pmichaud Good afternoon, #perl6 12:36
moritz_ oh hai 12:37
pmichaud: it's so wierd that your timezone suddenly (roughly) matches mine :-)
I'd expected a "good morning" at that time of day
pmichaud moritz_: it will likely change again tomorrow 12:38
moritz_ I know :)
rakudo: say (1, 2, 3) X~ (0, 0, 0) X* (2, 2, 2) 12:40
p6eval rakudo a948ca: OUTPUT«202020202020202020404040404040404040606060606060606060␤»
moritz_ rakudo: say (1, 2, 3) X~ 0 X* (2, 2, 2)
p6eval rakudo a948ca: OUTPUT«202020404040606060␤» 12:41
takadonet ?
moritz_ rakudo: say (1, 2, 3) X~ 0 X* 2
12:41 stepnem left
p6eval rakudo a948ca: OUTPUT«204060␤» 12:41
moritz_ rakudo: say ~((1, 2, 3) X~ 0 X* 2)
p6eval rakudo a948ca: OUTPUT«20 40 60␤»
12:43 drbean left 12:44 stepnem joined
takadonet rakudo: say "hello world" 12:44
p6eval rakudo a948ca: OUTPUT«hello world␤»
12:48 __ash__ joined 12:57 celeon joined
moritz_ pmichaud: what are your thoughts on merging ins2? 13:01
13:02 skids_ joined 13:09 Front_slash joined
celeon hello everybody! 13:10
moritz_ hi
celeon I just installed rakudo on my Debian Lenny Server to play around with perl6 13:11
I had no problems, but one small notice: 13:13
pugs_svn r27882 | lwall++ | [S02] Note that coercion to Nil provides "loop else" functionality 13:14
r27882 | lwall++ | Define what we mean by the Parcel type.
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
moritz_ celeon: oh, you're right, libicu36-dev is the package from etch 13:16
I had it in my sources.list and it worked with that
celeon: thanks, fixed. 13:17
celeon++
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++
he did most of the build system work 13:20
13:20 pnu left 13:21 dakkar joined
__ash__ moritz_: can i ask you something about class definitions in perl? 13:23
13:25 beggars joined
PerlJam guten tag #perl6 13:26
13:28 JimmyZ joined 13:29 SmokeMachine joined
[particle] TimToady: how does one convert a Parcel to a Capture? 13:36
13:36 __ash__ left
[particle] my $c = \$p; # like so? 13:37
PerlJam you speak parceltoungue. 13:39
13:40 celeon left
PerlJam i kan spel gud 13:41
TimToady obviously, Capture($parcel) :)
13:42 __ash__ joined 13:43 __ash__ left, masak joined
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.
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
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.
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.
masak phenny++
masak reads pdd28_strings.pod
13:49 molaf joined
obra_ /w/go keri 13:50
obra_ hates his irc client 13:51
masak kinda likes his 13:53
ERC++
13:54 edpratomo joined
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'
PerlJam masak: aye. same here. 13:57
masak PerlJam: you reckon we should try and fix it? :P
13:57 nihiliad joined 13:59 payload joined
PerlJam double checks to make sure it's not just an artifact of his build (just in case) 14:00
(Is is just me, or has parrot gotten faster lately?)
EDevil Is there a place we can check for what still needs to be done for rakudo *?
PerlJam: I think they are removing the sleep() calls. :) 14:01
PerlJam EDevil: spec tests that are TODO :)
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.
masak EDevil: perhaps a better question is asking yourself what _you_ need. 14:03
PerlJam: compared to nine months ago, it's definitely slower.
PerlJam: (but probably also more correct)
EDevil masak: I'm just motivated to fill bugs since I was at your presentation. 14:04
I suppose this is bad: 14:05
Null PMC access in isa()
in sub Test::is (Test.pm:67)
called from Main (t/spec/S03-operators/autoincrement-range.rakudo:93)
t/spec/S03-operators/autoincrement-range.rakudo.................. Dubious, test returned 1 (wstat 256, 0x100)
Failed 63/96 subtests
Matt-W null PMC access is ALWAYS bad
masak EDevil: yes. 14:06
14:06 pnu joined
masak EDevil: please file. 14:06
EDevil: *however*...
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.
sort of try subsets of the file and find the minimal subset that errors out. 14:07
that helps the devs immensely.
EDevil Ok. That seems doable for someone who hasn't tried perl6 yet.
14:08 __ash__ joined
masak it is, that's the nice part. 14:08
you're basically exercising a black box.
PerlJam: here's the golfed error in walk.t: 14:09
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
..(src/gen_setting.pm:1419)␤called fro…
masak actually,
rakudo: 1.WALK(:name,:descendant)
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
..(src/gen_setting.pm:1419)␤called fro…
ancients is away (4[O.F.F.L.I.N.E]) 14:11
masak ancients: how can you be in the channel and offline at the same time? 14:12
14:12 |Jedai| left
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
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
let me see if I can find it.
masak PerlJam++
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 pastie.org/574050 in perl 6?
masak looks
__ash__: looks like you'd want to do metaclass fiddling to accomplish that. 14:15
14:17 payload left, payload joined
__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:18
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.
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:21 nihiliad left
PerlJam rakudo doesn't understand junctional types yet does it? 14:22
my Int|Str $ffo;
14:23 justatheory joined
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)␤»
TimToady might never, in that form
problem is that | is also prefix for capture
__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
masak TimToady: won't that disambiguate, just like prefix:<+> and infix:<+>?
TimToady doesn't work if we have juxtaposing & 14:25
masak oh.
right.
PerlJam __ash__: in perl, many things happen at compile time rather than run time. I like to think that this is an advantage ;) 14:26
__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.
__ash__: see Moose for prior art.
PerlJam for some reason thinking of Moose as "prior art" for Perl 6 strikes me as funny. 14:28
edpratomo hello 14:29
is this svn.pugscode.org/pugs/docs/Perl6/FAQ/Capture.pod obsolete?
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
edpratomo i'm trying to understand the difference between $x = (1, 2, 3) and @y = (1, 2, 3)
the FAQ said $x.push(0); # FAIL: cannot find method: List.push 14:31
but it works just fine
masak edpratomo: correct. I think that nowadays, that List is promoted somehow to an Array.
TimToady rakudo: my $x = (1,2,3); say $x.WHAT
edpratomo masak: ah.. i see
p6eval rakudo 6ba717: OUTPUT«Array()␤»
TimToady that's actually not according to spec
masak but don't take my word for it... what TimToady said. :) 14:32
TimToady but it may promote to Parcel rather than Capture
edpratomo listening to mr timtoady
masak edpratomo: in case you're wondering, "Parcel" hit the spec a couple of minutes ago :)
TimToady is still looking at the Capture FAQ
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 :-)
clkao "trouting parrot" 14:34
masak tries to look up a verb meaning of 'trout', fails 14:37
PerlJam masak: you need clkao's dictionary
[particle] cursing in front of a large audience of perl hackers?
masak yes, that was my fallback meaning :)
JimmyZ rakudo: HOW(Str).methods; 14:40
p6eval rakudo 6ba717: OUTPUT«Method 'methods' not found for invocant of class ''␤»
JimmyZ masak: hello, We lost this spectests.
I don't know which file to add it. 14:41
masak we lost it, or we never had one?
JimmyZ we never had one.
masak (and hello to you too)
JimmyZ It's referred to by S02 14:42
Or S12?
masak JimmyZ: S12-introspection, somewhere.
moritz_ re 14:43
JimmyZ the HOW function was referred to by S02, but HOW method mostly was by S12
moritz_ __ash__: feel free to ask
JimmyZ and some was by S02 too.
masak JimmyZ: that's probably mostly incidental. they're the same, after all.
__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
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
masak we'll probably be looking a bit at how Moose handles metaclasses, and stick to that when we can.
I have a mind to look at Moose tests for this, and port them to t/spec
14:47 justatheory left
TimToady stevan's MOP role got composed into both p6 and p5 :) 14:47
14:47 alester joined
JimmyZ masak: I will add it. 14:47
14:48 nihiliad joined
masak JimmyZ: great. 14:48
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
moritz_ the example in S02 says it stores a Pair, but that's not sufficient to know if it's named 14:49
masak oh! 14:50
I'm still sometimes a bit unnerved by the mixing of Pairs and nameds.
[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
masak TimToady: so, what about when you want to pass a pair?
TimToady (:foo) is a Parcel, so isn't named 14:53
func( (:foo) ) doesn't turn its arg into a Capture
masak ok.
TimToady or rather, it's a Capture of (Parcel)
moritz_ [particle]: x => 1 is named, so it'll call the second candidate 14:54
masak right.
moritz_ [particle]: 'x' => 1 would be positional pair (first candidate)
[particle] ok, that was my next question :)
14:54 Jedai joined
TimToady we can always tell where named args are wanted at compile time 14:54
14:55 Psyche^ joined
TimToady though the Parcel -> Capture transformation is what is happening underneath 14:55
[particle] Parcel(Capture($parcel)) lossless?
moritz_ my $x := (2, 3, 'x' => 4, :x(5)); foo(|$x)
TimToady no
moritz_ that would be two named, right? 14:56
14:56 payload left, payload joined
TimToady yes, | does the P2C 14:56
and then stitches in the Capture
[particle]: P(C(P)) is likely to lose nameds 14:57
unless you say P(|C(P)), I suspect
it's possible that P() has to be special at some level to suppress capturization of its args 14:58
14:59 rfordinal left
moritz_ just like postcircumfix:<( )> is special :-) 14:59
masak moritz_: it works now in Rakudo, btw :)
jnthn++
[particle] |C(), hrmm
moritz_ masak: what? conditional methods/attributes?
14:59 justatheory left
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)␤»
masak hmm... :/
jnthn: ping
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.
but I suppose he hasn't pushed it yet.
moritz_ seems like
masak there was something about a non-API Parrot call, which jnthn had to clear with pm. he did, though. 15:03
moritz_ push it, push it! 15:05
maybe postcircumfix:<( )> should get a special name, since it's special anyway
something that's less ugly to type 15:06
:-)
15:06 Patterner left, Psyche^ is now known as Patterner
masak moritz_: there's always &.() 15:07
(from S13)
moritz_ std: class A { method &.() { } } 15:08
p6eval std 27882: OUTPUT«ok 00:02 38m␤»
moritz_ oh wow
15:08 Chillance joined
moritz_ I wonder if that'll make a good obfu 15:09
masak moritz_: it's certainly good for Web.pm, whose API needs things with postcircumfix:<( )> 15:11
moritz_ it needs? 15:12
so how could you live without it so far?
masak yes.
moritz_: I worked around it and called it 'call'.
moritz_ s/it needs/it benefits from/
15:12 beggars left
masak moritz_: no, the final API needs it. 15:13
15:20 donaldh left, donaldh joined 15:21 KyleHa joined 15:25 sri_kraih_ joined
masak gist.github.com/163370 15:25
JimmyZ rakudo: ^Str.methods.join(", ").say; 15:26
p6eval rakudo 6ba717: OUTPUT«Method 'methods' not found for invocant of class ''␤»
JimmyZ rakudo: Str.HOW.methods.join(", ").say;
p6eval rakudo 6ba717: OUTPUT«too few arguments passed (1) - 3 params expected␤in Main (/tmp/40s5hc4DUc:2)␤»
JimmyZ rakudo: Str.HOW.methods(:local).join(", ").say;
p6eval rakudo 6ba717: OUTPUT«invalid arg type in named portion of args␤in Main (/tmp/UqWjj1WGiO:2)␤»
moritz_ rakudo: say ^Str.methods.join(", ").PARROT
p6eval rakudo 6ba717: OUTPUT«Method 'methods' not found for invocant of class ''␤»
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,
..ceilin…
moritz_ rakudo: say Str.^methods.join(", ").PARROT
p6eval rakudo 6ba717: OUTPUT«Str␤»
moritz_ rakudo: say Str.^methods.join(", ").say
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,
..1, can…
JimmyZ rakudo: say Str.^methods.join(", ").perl
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,
..1, 1…
JimmyZ We needs more tests ;) 15:28
masak aye.
moritz_ sure, feel free
masak patches welcome.
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)␤»
JimmyZ rakudo: Str.HOW.methods.join(", ").say;
moritz_ commit bits handed out cheaply, in a limited action
p6eval rakudo 6ba717: OUTPUT«too few arguments passed (1) - 3 params expected␤in Main (/tmp/r1wXye2IxY:2)␤»
moritz_ JimmyZ: that's not supposed to work
$a.^b is a shortcut for $a.HOW.b($a)
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 )
moritz_ it can't.
15:31 nihiliad left
JimmyZ moritz_: Str.HOW.methods; # same thing with the prototype object Str, FROM S02 15:31
moritz_ JimmyZ: then this part of the spec need fixing 15:32
unless it's a default... 15:33
TimToady how could it know? 15:34
JimmyZ moritz_: S12 maybe should need fixing 15:36
moritz_: I think I can do that, If I think that is right.
MyClass.HOW.methods($obj) # get the method list of MyClass
It should be MyClass.HOW.methods() # get the method list of MyClass 15:37
and others place like this.
s/others place/other places/
15:37 sri_kraih left
moritz_ MyClass.HOW.methods($obj) is correct 15:38
JimmyZ what's the $obj? 15:39
what's it to do? 15:40
Whether S02 or S12 is wrong.
15:41 mikehh left
JimmyZ moritz_++; # if you fix that ;) 15:42
moritz_ sorry, I can't muster the concentration right now to look it up and answer
maybe later tonighter
JimmyZ moritz_: thanks, anyway.
TimToady MyClass.HOW.methods(MyClass) is correct
since MyClass is the object in question 15:43
that's what MyClass.^methods translates to
JimmyZ Is it redundance ?
since there were two MyClass
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
TimToady one metaobject can be managing any number of actual objects, and it has to know which one
moritz_ if you don't want the redundancy, call it as MyClass.^methods
JimmyZ moritz_: I see, thanks again. 15:45
moritz_ then you don't have to write MyClass twice
JimmyZ and thanks TimToady
15:45 Front_slash left
JimmyZ rakudo: HOW(Str).methods(Str).perl.say; 15:46
p6eval rakudo 6ba717: OUTPUT«Method 'methods' not found for invocant of class ''␤»
JimmyZ Is it right?
Str.HOW.methods(Str) or 'x'.HOW.methods('x') 15:47
moritz_ right
15:47 SmokeMachine left
moritz_ of course you can also write Str.HOW.methods('x') 15:47
the chances that Str and 'x' are managed by the same metaobjects are pretty high, I think
JimmyZ should I fix S02?
15:52 Front_slash joined
JimmyZ I think 'x'.HOW.methods is wrong too. 15:52
sorry. 15:53
it's ^Str.methods
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)␤»
dakkar rakudo: my @a=<a b c d>;say @a[1.3];@a.splice(1.5,1);say ~@a
p6eval rakudo 6ba717: OUTPUT«b␤a b d␤» 15:56
TimToady JimmyZ: sure, you may fix that
15:59 abra joined 16:04 tann joined
pugs_svn r27883 | jimmy++ | [Spec/S02-bits.pod] fixed spec, see S12 for more. 16:07
KyleHa Yay for spec fixes. 16:09
16:10 masak left
JimmyZ good night #perl6 16:10
16:10 JimmyZ left 16:11 tann left, dakkar left 16:18 nihiliad joined 16:22 SmokeMachine joined 16:25 nihiliad left, nihiliad joined 16:27 molaf left, nErVe joined 16:28 dakkar joined, RonOreck joined 16:30 cdarroch joined
__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
so I know that there are ideas, but I don't think there are specs yet
16:38 kane_ joined
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.
japhb Thanks, phenny
16:43 skids_ left 16:45 masak` joined 16:46 nihiliad left 16:47 masak_lolcat joined, nErVe left
masak_lolcat oh hai 16:47
japhb: you rang?
16:51 rfordinal joined, [particle] left, dakkar_ joined
japhb masak_lolcat: ceiling cat got your tongue? ;-) 16:51
16:51 arthur-_ left 16:52 masak_lolcat left, masak` left
TimToady japhb: WiFi is very spotty here 16:52
16:52 [particle] joined, dakkar left
japhb TimToady: bah. 16:52
16:52 arthur-_ joined
japhb TimToady: and thanks for the heads up 16:52
TimToady we're at a cafe in south lisbon
japhb Too bad mesh networking hasn't gotten pervasive yet. 16:53
TimToady where "we" is N ≅ 12 16:54
japhb I'll try masak via email then 16:56
16:56 donaldh left 16:58 rfordinal left
japhb Someone tell masak to check gmail. ;-) 16:58
dakkar_ japhb: done 17:00
japhb dakkar_: thx 17:01
17:02 edpratomo left
pugs_svn r27884 | jnthn++ | [t/spec] Unfudge tests for junctions of code objects. 17:02
17:04 arthur-_ left, alester left 17:05 arthur-_ joined, arthur-_ left
__ash__ are both parrot and pugs under active development? i thought i read somewhere that pugs was not being worked at the moment 17:05
moritz_ __ash__: that is correct 17:06
17:06 tann joined, arthur-_ joined
__ash__ is pugs_svn then just the home of the spec? 17:07
17:07 arthur-_ left
moritz_ it's the home of the spec tests, the spec, some documentation, smop, mildew, elf... 17:08
17:08 abra left
moritz_ some websites are also in there 17:08
__ash__ got ya
TimToady and, um, STD
moritz_ and camelia
japhb __ash__: the "pugs" repo is now pretty much a "generic Perl 6" repo. It just never got renamed.
moritz_ and kp6 17:09
TimToady it now stands for "public updates generate synergy" :)
moritz_ ;-)
17:10 skids_ joined
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:12
17:24 KyleHa left 17:29 dakkar_ left 17:37 EDevil left 17:44 M_o_C joined 17:51 leedo joined 17:52 leedo left 17:53 rfordinal joined 18:00 iblechbot joined 18:37 araujo joined 18:42 Jedai left, Jedai joined 18:55 alester joined
alester pmichaud: Are you gonna be around this evening? That we can discuss some PR plans? 18:55
19:01 payload left 19:11 Front_slash left 19:16 KyleHa joined 19:17 ruoso joined
KyleHa Is it true that $var.isa($type) && $var ~~ $type ? 19:18
Does $var ~~ $type imply $var.isa($type) (barring deliberate attempts to override .isa and such)?
Is it true that $var.isa($var.WHAT) ? 19:20
moritz_ KyleHa: $a ~~ Type is the same as $a.does(Type) 19:24
ruoso f**king irc.perl.org server doesn't like me
moritz_ and $var.isa($var.WHAT) is true
pmichaud: I just gave your "cool Perl 6 operators" talk ;-) 19:26
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␤»
KyleHa rakudo: enum Color <white gray black>;my $p = Color.pick; say $p.isa($p.WHAT); 19:28
p6eval rakudo 459f5a: OUTPUT«0␤»
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)␤»
KyleHa Prosecution rests.
moritz_ rakudo: enum Color <white gray black>; my $p = Color.pick; say $p.PARROT
p6eval rakudo 459f5a: OUTPUT«Perl6Role␤»
KyleHa It all started with this: 19:30
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)␤»
KyleHa "expected Color, but got Color" is even better than "expected , but got Foo".
pugs_svn r27886 | kyle++ | [t/spec] something wrong with .pick on an enum 19:38
19:39 rfordinal left
KyleHa I found a typo for my first commit to Rakudo, to test when I have a bit for that. 19:39
Also, I figured out that one of my Test.pm patches is causing a spectest failure. 19:42
19:58 M_o_C left 20:05 M_o_C joined 20:14 zamolxes joined 20:15 payload joined 20:35 skids__ joined 20:36 ruoso left 20:37 skids_ left 20:44 PZt joined 20:46 nihiliad joined 20:53 alester left 20:55 arnsholt joined 20:57 braceta joined 21:09 donaldh joined, SmokeMachine left
pugs_svn r27887 | kyle++ | [t/spec] Test for RT #68242 21:13
21:14 KyleHa left, hanekomu joined 21:16 Jedai left 21:17 nihiliad left 21:25 donaldh left 21:26 Jedai joined 21:29 kane_ left 21:30 rindolf joined 21:39 braceta left 21:43 maja_ joined 21:45 skids__ left 21:52 zamolxes left 21:55 maja left 21:56 __ash__ left 22:11 __ash__ joined 22:22 nervokid joined 22:25 rindolf left 22:26 M_o_C left 22:33 nihiliad joined, nacho_ joined 22:37 Limbic_Region joined 22:38 tann left, eternaleye left, nervokid left 22:41 eternaleye joined 22:45 ihrd joined 22:47 iblechbot left 22:51 hanekomu left 23:01 eternaleye left, eternaleye joined 23:03 cytoplasm joined 23:08 __ash__ left 23:13 ruoso joined 23:15 Jedai left 23:18 cdarroch left 23:30 kane_ joined 23:48 nihiliad left 23:52 Limbic_Region left