»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by diakopter on 25 January 2010.
00:05 cdarroch left
jnthn Didn't get to sorting out match-y stuff tonight...but other bits were nice to have. :-) 00:06
00:06 meppl left
arnsholt Question: Where does the implementation of gather/take live in Rakudo? (ng branch) 00:07
jnthn arnsholt: See src/cheats/gatheriterator.pir 00:09
and src/builtins/control.pir for take
00:09 drbean left
arnsholt Cheers! I've hacked together a simple version in Ruby, but I'd rather like to see how you clever people have done it =) 00:11
00:11 fridim left 00:16 payload left, snearch joined 00:19 patspam joined 00:26 cotto_working left, snearch left 00:29 orafu left, orafu joined
jnthn -> rest 00:31
Tene arnsholt: you might like the version in rakudo master better 00:32
arnsholt: in src/builtins/control.pir for both of them.
00:32 rgrau left
arnsholt Tene: Thanks. And you're probably right 00:33
00:33 s1n left
arnsholt The ng one is lazy, and implemented with coroutines. Which kinda makes me go cross-eyed. My Ruby hack just uses dynamic scope 00:33
00:34 s1n joined
Tene does ruby have resumable exceptions? 00:34
that's the core of rakudo's implementation 00:35
arnsholt I honestly have no idea. But I don't think so
And that feature is ludicrously devious and useful
Tene blade.nagaokaut.ac.jp/cgi-bin/scat....talk/96526 00:36
mentions an implementation
arnsholt Hmm. Interesting 00:37
Tene hmm...
arnsholt ATM I just use an accumulator variable with dynamic scope
00:37 colomon left
arnsholt Coming from a bout of Lisp programming, it seemed like the obvious choice. Only drawback is that it makes the accumulator available for fiddling from client code 00:38
Which might cause problems
00:42 cotto_working joined
mberends curious differences between 32-bit and 64-bit spectest results: 00:42
"pass","fail","todo","skip","plan","spec"
00:42 quietfanatic left
mberends 3310, 17, 77, 301, 3705, 15914 # 32-bit 00:42
3110, 19, 77, 301, 3497, 15706 # 64-bit 00:43
will pinpoint the diff after real sleep(3600 * Whatever); 00:45
00:45 mberends left
frettled phenny: tell mberends mberends++ for the stats 00:50
phenny frettled: I'll pass that on when mberends is around.
frettled PerlJam: I went ahead and blogged about exponent notation, maybe one of the three people reading my blog have some useful input. :) 00:51
00:54 ash__ joined 00:56 ash__ left 00:57 justatheory left 01:01 colomon joined, colomon left 01:06 andy1 left 01:07 colomon joined
diakopter . 01:18
sjohnson hi 01:19
01:20 dual joined 01:29 colomon left
pugs_svn r29685 | lwall++ | [p5arrow.t] deleted 01:33
01:46 dual left 01:48 dual joined 02:00 k23z__ joined 02:03 ewilhelm left 02:14 drbean joined 02:16 ashleyb left 02:20 stephenlb left, orafu left 02:21 orafu joined 02:22 stephenlb joined 02:29 ShaneC2 left 03:00 k23z__ left 03:06 colomon joined
patspam strolls past and throws some coins into the Perl6 People Are My Heroes tin 03:08
03:08 mugwump joined
mugwump t/spec/S02-literals/quoting-unicode.rakudo ..................... Dubious, test r 03:08
30e0ed39521 03:09
eternaleye mugwump: Is this on the master or ng branch? Most of the current development is occurring on ng, master's been pretty quiet lately 03:10
mugwump that's master 03:11
parrot r43487
(ie head really)
er, ok not head 03:12
03:13 fda314925 left, k23z__ joined 03:14 fda314925 joined 03:22 mssm left
colomon okay, what the heck is wrong with abs? 03:37
ng: 5.abs.WHAT.say
p6eval ng 2d8d82: OUTPUT«Num()␤» 03:38
03:44 k23z__ left
colomon pmichaud, jnthn: can you guys think of any reason that calling .abs on an Int would dispatch to Any.abs rather than Int.abs? 03:45
If I call .abs on a Rat or a Num it goes to Rat.abs or Num.abs. 03:46
TimToady hmm 03:47
ng: say Int ~~ Num
p6eval ng 2d8d82: OUTPUT«1␤»
TimToady well, that's wrong, I think
though I don't know if it's related
colomon agreed on both parts. 03:48
TimToady but you might figure out what sets that and break it to see what happens
ng: say Int ~~ Numeric 03:49
p6eval ng 2d8d82: OUTPUT«sh: ./perl6: No such file or directory␤»
colomon ng doesn't have Numeric yet.
TimToady looks like someone needs to implement transactional make snapshots too... 03:50
colomon that would be lovely, for sure. 03:51
hmm, I really don't see how Int gets to be Num, unless it's happening a parrot level. 03:54
Int is parrot;Integer and Any, Num is parrot;Float and Any.
hmmm... 03:57
ng: 50.sign.WHAT
p6eval ng 2d8d82: ( no output )
colomon ng: 50.sign.WHAT.say
p6eval ng 2d8d82: OUTPUT«Int()␤»
03:57 k23z__ joined
TimToady ng: (50*1).WHAT.say 03:58
p6eval ng 2d8d82: OUTPUT«Int()␤»
04:01 k23z__ left
colomon is having trouble concentrating on weird ng behavior when he's just learned there will be three Newfoundland groups performing in on his side of Ontario this August... 04:10
oh, hey, sign always returns an Int. need to insert more debugging says... 04:11
nope, it does dispatch to Int.sign. 04:13
04:13 Limbic_Region left
colomon afk, time for bed 04:38
04:53 ihrd joined, ihrd left 04:55 JimmyZ joined 05:13 patspam left 05:25 ashleyb joined 05:31 patspam joined 05:52 dduncan joined 05:54 dduncan left 06:04 dduncan joined 06:13 JimmyZ left 06:16 meppl joined 06:23 ashleyb left 06:35 araujo left 06:45 dduncan left 07:05 baest joined 07:06 kaare joined, kaare is now known as Guest59314 07:10 stephenlb left 07:11 mberends joined 07:13 uniejo joined 07:15 Su-Shee joined 07:26 rv2733 joined 07:33 flip214 joined
flip214 Hi everyone 07:33
mberends hi flip214 07:34
phenny mberends: 00:50Z <frettled> tell mberends mberends++ for the stats
mberends :-) working on more stats
07:35 rv2733 left
mberends do try this at home: git log | perl -ne'/Author: (.+) </;$a{$1}++;END{print "$a{$_} $_\n" for sort{$a{$b}<=>$a{$a}} keys %a}' 07:35
pugs committers 2005-2007: svn log | perl -ne'/^r\d+ \| .+ \| (\d{4})-\d{2}-\d{2}/;if ($1>=2005 and $1<=2007){/\| (.+) \|.+\|/ and $a{$1}++};END{print "$a{$_} $_\n" for sort{$a{$b}<=>$a{$a}} keys %a}' 07:41
flip214 Learning Common Lisp currently I see increasingly that the P6 and CL are very, very similar, if you look deep enough 07:42
07:45 flip214 left
avar mberends: git log --pretty="format:%an" --abbrev-commit | sort | uniq -c | sort -nr 07:46
mberends avar: thanks, I can use that in some procrastination that I'm considering 07:48
07:54 patspam left 07:55 colomon left, drbean left, hercynium left, jaldhar left, simcop2387 left, revdiablo left, yves left 07:57 ihrd joined, jaldhar joined 07:58 drbean joined 07:59 revdiablo joined 08:02 colomon joined 08:04 yves joined 08:05 simcop2387 joined 08:07 iblechbot joined 08:09 hercynium joined 08:16 barney joined 08:34 payload joined 08:37 xinming_ joined 08:40 xinming left 08:43 snearch_ joined
moritz_ good morning 08:50
08:51 ihrd left
mberends good morning moritz_ 08:51
moritz_ Su-Shee: aye; it's what taught me proper object orientation 08:55
Su-Shee moritz_: I've read around a little yesterday and it's really eceptionally clear and realistic. I love it. 09:03
09:03 mssm joined
Su-Shee moritz_: and without metaphors ;) 09:03
moritz_ Su-Shee: and useful examples (at least some of them) 09:14
I remember an example design of a undo/redo functionality for a text editor
Su-Shee moritz_: seems like the man should update after 13 years for a new edition ;) 09:16
09:16 dakkar joined
moritz_ aye 09:17
Eiffel got some nice new features in the mean time too
Su-Shee I've never considered this book due to Eiffel.. 09:21
09:21 eternaleye left
Su-Shee though it's really often recommended. 09:21
moritz_ aye; but it would be nice to see what Mr. Meyer has to say to Actors 09:23
(which are kinda like closures, or not... not sure)
09:24 eternaleye joined
Su-Shee send fanmail :) 09:25
this year, the bible of electronics comes in a new edition. people waited for since end of the 80ies :) 09:26
mathw Good localtime, #perl6 09:31
09:32 IllvilJa left 09:42 eternaleye left
frettled indeed it is 09:43
09:43 snearch_ left 09:44 eternaleye joined
mathw well it's not really 09:46
I've got a headache and my legs hurt
but I hope it's good for everyone else
frettled We can pretend.
mathw we can 09:47
there are many ways in which it could be worse
but this headache is of the irritating, axe through the head kind
09:49 IllvilJa joined 09:59 eternaleye left 10:00 quester_ joined 10:03 cjk101010 joined
moritz_ ng: say 2.5*1050 10:10
p6eval ng 2d8d82: OUTPUT«2625␤»
10:15 cjk101010 left
jnthn good morning, most of you 10:16
bad morning, mathw
;-) 10:17
moritz_ can't type anymore 10:19
on my laptop I have German keyboard layout
and now somebody provided me with an external keyboard, also German layout
and I try to use it as if it where US layout all the time
mathw o/ jnthn
moritz_: strange 10:20
moritz_ because for the last year whenever I had an external keyboard, it was always US layout
and I seem to have internalized $external.layout eq 'US'
10:23 eternaleye joined 10:24 masak joined
masak oh hai, #perl6 10:24
phenny masak: 10 Feb 21:27Z <TimToady> tell masak Positive lookaheads must be compiled at compile time, or they cannot participate in LTM as specced, and as STD implements.
masak TimToady: I'll remember that when I start trying to grok LTM :) 10:25
jnthn lolitsmasak
frettled moritz_: Change the keyboard layout to US, then :D
masak jnthn: lol! I'm up late, I'm disoriented, and I'm aching all over... :) 10:26
mathw Saluton masak 10:27
masak mathw: bonan matenon mathw.
mathw: you see? you can already say 'hello'! :)
mathw That's, umm... not particularly difficult 10:28
but now I know how to say good morning
masak :)
did you get the run-down as to why all those are in the accusative yet?
mathw I have no idea why they're in the accusative. Should we take this away from #perl6? 10:30
masak actually, I'm going for lunch :/
gladly later.
mathw lunch? already?
masak yeah :/
masak 's days are so compressed nowadays
moritz_ sounds like breakfast in masaktime 10:31
masak just had breakfast :/
10:32 frettled sets mode: +o masak
frettled dessert! 10:32
jnthn masak: I managed up late and then used coffee to fix the disoriented bit. :-) 10:33
mathw I managed to get to work just about on time 10:37
And have utilised paracetemol to attempt to regain the ability to think
10:39 ujin joined 10:40 fridim joined 10:44 eternaleye left, drbean left 10:45 mssm left 10:48 eternaleye joined 10:53 ujin left 10:58 eternaleye left
colomon morning! 11:16
jnthn oh hai, colomon 11:17
colomon What are we going to do today, Brain? 11:18
jnthn Drink coffee...attempt to think. :-) 11:23
colomon :) 11:24
so on abs -- I am completely stumped. 11:26
jnthn abs?
colomon Int.abs never gets called.
If you say 5.abs, it calls Any.abs 11:27
(5/1).abs ==> Rat.abs
5.Num.abs ==> Num.abs 11:28
11:28 cognominal joined
colomon it's like the dispatch issue, only not. 11:29
11:32 pmurias joined
jnthn Odd. 11:32
ng: say 5 ~~ Int 11:33
p6eval ng 2d8d82: OUTPUT«1␤»
jnthn ng: say Int ~~ Any
p6eval ng 2d8d82: OUTPUT«1␤»
jnthn ng: say Any ~~ Int
p6eval ng 2d8d82: OUTPUT«0␤»
jnthn say 5 ~~ Any
ng: say 5 ~~ Any
p6eval ng 2d8d82: OUTPUT«1␤»
11:33 cjk101010 joined
jnthn Well, those all check out. :-/ 11:33
ng: say 5.abs 11:34
p6eval ng 2d8d82: OUTPUT«5␤»
colomon ng: say 5.abs.WHAT
p6eval ng 2d8d82: OUTPUT«Num()␤»
jnthn :-/ 11:35
ng: say 5.Int.abs.WHAT
p6eval ng 2d8d82: OUTPUT«Num()␤»
colomon I added a lot of says to my code to track things.
11:38 mssm joined
colomon but they don't make any sense that I can see. 11:38
oh, wait 11:39
heh. if my new idea is right, we might have a very subtle bug here.... 11:40
ah, nope, that wasn't it 11:41
TimToady suggested it might have some to do with why Int ~~ Num. how does that work, anyway? 11:42
11:45 araujo joined
colomon Is there a way to track what dispatch is doing? 11:46
jnthn Hmm...the Int ~~ Num thing was a hack for days gone by when it was meant to be that way. 11:47
I suspect it's in Int.pir
Track dispatch - only if you get your C debugger out. :-/
colomon ick 11:48
jnthn Yeah. It's easy to get lost in the interplay between method dispatch and multi-dispatch too. 11:49
I'll have a look later on. 11:50
colomon thanks.
11:51 bluescreen joined
quester_ pugs: my $x=0 but True; say $x; say ~$x; say ?$x; 11:52
p6eval pugs: OUTPUT«*** Cannot cast from VBool True to Pugs.AST.Types.VCode (VCode)␤ at Prelude.pm line 541, column 5-16␤»
quester_ rakudo: my $x=0 but True; say $x; say ~$x; say ?$x;
p6eval rakudo 1d4928: OUTPUT«The but operator can only be used with a role or enum value on the right hand side␤in Main (file <unknown>, line <unknown>)␤» 11:53
quester_ ng: my $x=0 but True; say $x; say ~$x; say ?$x;
p6eval ng 2d8d82: OUTPUT«No applicable candidates found to dispatch to for 'infix:<does>'␤current instr.: 'infix:<but>' pc 209298 (src/gen/core.pir:1997)␤»
quester_ ng: my $x=0 but Bool::True; say $x; say ~$x; say ?$x;
p6eval ng 2d8d82: OUTPUT«No applicable candidates found to dispatch to for 'infix:<does>'␤current instr.: 'infix:<but>' pc 209298 (src/gen/core.pir:1997)␤»
quester_ ng: my $x=0 but 0 but role { method Bool() { return True } }; say $x; say ~$x; say ?$x; 11:54
p6eval ng 2d8d82: OUTPUT«No applicable candidates found to dispatch to for 'infix:<does>'␤current instr.: 'infix:<but>' pc 209298 (src/gen/core.pir:1997)␤»
quester_ pugs: my $x=0 but 0 but role { method Bool() { return True } }; say $x; say ~$x; say ?$x;
p6eval pugs: OUTPUT«*** Cannot cast from VInt 0 to Pugs.AST.Types.VCode (VCode)␤ at Prelude.pm line 541, column 5-16␤»
11:55 payload left 12:07 araujo left 12:08 macae joined 12:11 orafu left 12:13 orafu joined 12:15 xomas joined, xomas left, xomas joined
masak quester_: looking for anything in particular? 12:17
12:19 drbean joined 12:25 araujo joined
quester_ masak:no, I was just musing on the Perl5 "0 but true" idiom and decided to Google it. I was wondering if my local copy of Rakudo was broken when it barfed on $x=0 but True;. It looks like it's just not implemented fully yet, I think. 12:31
masak that's correct. 12:32
I think it was at some time.
but it was fraught with problems like infinite loops.
quester_ Ah, so. Thank you. 12:34
jnthn I'm not sure it was ever really implemented. :-)
The infinite loop was just a very bad way of saying so. :-) 12:35
masak what jnthn said :)
jnthn We can probably have anonymous roles quite easily in ng, fwiw. 12:38
Though it'll likely be master before I get to those.
masak I'll have a look at them if I find the time. 12:39
quester_ Yes, Perl6 seems to have quite a few features whose implementation was left as an exercise for the student... Thanks, jnthn and masak, and good night. 12:40
masak g'night.
12:41 xomas left 12:43 quester_ left
jnthn
.oO( I'm not a student, can I still implement them? )
12:44
colomon jnthn: Are we all not students of TimToady? ;) 12:45
jnthn :-)
masak TimToady is a teacher? that would explain why he looks so stern when I show up here without my homework... 12:46
12:58 takadonet joined
takadonet morning everyone 12:58
13:01 k23z__ joined
masak takadonet: \o 13:03
colomon o/ 13:04
pmichaud good morning, #perl6 13:05
moritz_ good morning pmichaud
13:06 alexn_org joined
takadonet morning pmichaud 13:06
masak morning, pmichaud. 13:12
jnthn morning, pmichaud 13:17
13:26 ignacio_ joined 13:28 payload joined 13:29 alexn_org left
mathw masak! 13:36
masak la mathw!
13:39 ignacio_ left
jnthn la? :-) 13:41
13:42 BinGOs left
masak jnthn: means 'the'. as in 'Die Bart, Die' :P 13:42
jnthn masak: I figured, but in Spanish and French it is the feminine "the" :-P
masak jnthn: oh! heh. 13:43
jnthn: I remember having to get used to that myself.
jnthn: Esperanto has only one definite article.
jnthn masak: oh, cool :-) 13:44
That makes life...easier.
Of course, dropping articles altogether works too. :-) 13:45
masak yep.
13:45 dalek left 13:48 dalek joined
jnthn Talking of article-free languages... 13:49
jnthn -> Slovak class
pmichaud for osd, do we just submit talks via the act site or also to the osd organizers? 13:50
jnthn pmichaud: also to osd
pmichaud okay, sending
jnthn pmichaud: one of jonasbn's emails had the address.
13:50 payload left
pmichaud I have the addr :-) 13:50
jnthn \o.
er, \o/
pmichaud conferences.yapceurope.org/hack2010dk/talk/2574 # my current talk abstract -- suggestions on improvements or other area of focus welcomed 13:53
takadonet I get a 404 pmichaud
pmichaud okay, I'll nopaste it. 13:54
nopaste.snit.ch/19558 13:55
13:56 payload joined
moritz_ nice and short 13:57
masak "Perl 6 arrives"? -- that's... brave :) 13:58
maybe that's what Rakudo needs, though. 13:59
14:00 BinGOs joined
jnthn pmichaud: Looks good. 14:00
jnthn afk for a bit
pmichaud I can tone down "Perl 6 arrives" if needed. It's just what shows up on a busy 7am morning.
PerlJam good morning 14:01
pmichaud: no way! the world needs more bravery. :) 14:02
masak is on the fence about 'arrives'
pmichaud: your call :)
PerlJam so ... is Rakudo Star an "implementation of Perl 6" or a "distribution of a Perl 6 implementation" (or does it matter?)
I mean, people don't typically talk about RedHat, Debian, Gentoo, etc. as "linux implementations" as much as "linux distributions" 14:03
moritz_ that's because they ship the same kernel, more or less 14:04
PerlJam moritz_: Perl 6's kernel is STD :)
(more or less) 14:05
moritz_ not really
14:06 drbean left
PerlJam Maybe I'm just weird but I think the semantic details of STD are more important to Perl 6 than the vagaries of a particular implementation. 14:07
masak PerlJam: I see what you mean. 14:08
pmurias PerlJam: rakudo does not use STD? 14:09
masak guess it depends on whether the implementations will use STD.pm wholesale, or whether they'll modify it somehow, as Rakudo ng is doing now.
PerlJam pmurias: sure it does ... more or less :)
moritz_ it doesn't actually use it
PerlJam STD is the platonic ideal that all implementations share. 14:10
masak there's that meme again! :)
14:13 ruoso joined 14:15 ignacio_ joined
masak it just struck me: Perl 5 and Perl 6 are 'the same language' in much the same way US English and British English are the same language. 14:15
i.e. a fair bit or not very much at all, depending on your perspective. 14:16
but never 0% or 100% the same.
14:17 ashleyb joined 14:19 Trashlord joined
Trashlord how's it going 14:19
masak Trashlord: welcome back! over here, it's going fine, thanks. 14:20
Trashlord I'm just reading through an open book called Perl 6 Programming, in wikibooks. Just found out about lazy lists and junctions, really awesome 14:21
pmichaud I still claim that STD and Rakudo are converging to a common ideal.
as opposed to claiming that STD is the ideal that Rakudo should adopt. 14:22
masak pmichaud++ # that's a nive way to view it, yes
that's the whirlpool part, when reality influences the ideals, and not just the other (pure) way around. :) 14:23
PerlJam pmichaud: STD is just a convienent moniker for the platonic ideal that STD.pm strives for :)
pmichaud: that STD.pm and Rakudo strive for
pmichaud PerlJam: fair enough. But when people say "Rakudo does not use STD?" it bugs me a bit. :)
I could just as easily say "smop doesn't use PGE?" 14:24
Trashlord hey, are sockets implemented in Perl 6?
masak Trashlord: yes.
Trashlord excellent
masak Trashlord: Web.pm can use them to establish a Perl 6-only web server.
PerlJam Trashlord: do you mean "are sockets specced in Perl 6?" or do you mean "are sockets implemented in Rakudo?" or ??? :-)
Trashlord PerlJam: I mean in rakudo 14:25
masak '...implemented in some Perl 6 implementation...' :)
Trashlord yeah, I guess I should start calling it rakudo, since that's what I use, heh
masak depends what you're referring to :P
Trashlord is there something like IO::Socket from Perl 5? 14:26
colomon pmichaud: I like "Perl 6 arrives". Helps make a point and spur us on.
pmichaud I think I agree -- time for some boldness. If there's some friction, let's at least do it with emphasis. :-) 14:27
masak Trashlord: github.com/rakudo/rakudo/blob/maste.../Socket.pm
Trashlord awesome, thanks
masak cavear user.
erm, s/cavear/caveat/ 14:28
arnsholt caveat auctor perhaps?
pmichaud utilitor, I thought. :-)
PerlJam caveat auctor would be a warning from masak to himself. 14:29
arnsholt I'm not sure if that's a Latin verb
Just a moment. I'll check the OLD here in the library
masak caveat to-whom-it-might-concern :)
PerlJam caveat lector works in general 14:30
14:30 k23z__ left, k23z__ joined, k23z__ left
pmurias pmichaud: by STD 14:31
pmichaud jnthn/mberends/others: after consulting with jonasbn, I think I'll head directly to CPH instead of trying to make it to Dutch Perl Workshop.
masak did I understand correctly that jnthn and mberends will show up on the Friday? 14:32
14:32 moritz_ sets mode: +oooo arnsholt pmichaud Trashlord colomon
pmichaud Dutch Perl Workshop is on Friday. 14:32
masak aha.
mberends pmichaud: ok, look forward to seeing you there - on Saturday morning :)
pmichaud they will make it to CPH on Saturday early.
masak right. I misread mberends++'s last message to p6ws. 14:33
pmurias pmichaud: how does STD need to converge with rakudo? the issues i'm aware of is that the implemenation of STD is too slow and there are bugs lurking in the produced AST
masak he's planning to do his talk from Friday again in Copenhagen. now I get it. :)
pmichaud pmurias: STD is focused almost exclusively on "how does one parse perl 6", but not necessarily "how does one build an ast/translate a program." The two are not always the same. 14:34
pmurias: there are several places where things we've done in Rakudo and NQP have fed back in to become significant changes to STD 14:35
one of the biggest is the <O(...)> approach to handling operator precedence instead of STD's previous %additive mechanism for doing so 14:36
NQP also prompted the elimination of the <noun> subrule.
There are also places where rakudo and nqp are likely to influence the handling of language braids. 14:37
14:38 iblechbot left
PerlJam pmurias: STD doesn't *need* to converge with Rakudo, it *wants* to. :-) 14:40
masak even the implementation of GGE has influenced STD.pm :) 14:42
(ever so slightly) 14:43
Trashlord masak: you're the author of proto? 14:44
masak the first of quite a few, yes.
Trashlord cool
masak :)
Trashlord I was just wondering about a nice way to install modules (so I can get IO/Socket.pm), and found it 14:45
masak right. IO::Socket actually comes with Rakudo itself.
Trashlord oh
masak so if you have Rakudo, you already have IO::Socket
Trashlord didn't know that, heh
so everything I see in rakudo's directory in github, comes with it? 14:46
masak aye.
Trashlord awesome
masak that generalizes to all github projects, by the way. :)
moritz_ well, not everything in every github project is actually installed 14:47
masak true. but it's downloaded.
which was what I took Trashlord's 'comes with it' to mean.
pugs_svn r29686 | pmurias++ | [mildew] dominace frontiers are calculated 14:49
masak 'dominace frontiers'? 14:51
moritz_ sounds scary :-) 14:52
masak sounds like the borders of Italian opera or something.
"And now, the weather. A dominace frontier is entering Europe from the south..." 14:53
pmurias masak: they are needed for calculating where to insert phi functions while converting to SSA 14:57
masak pmurias: excellent. what's a phi function, and what's SSA? 14:58
pmurias en.wikipedia.org/wiki/SSA 14:59
masak gives me a disambiguation page. 15:02
so now I know it can mean a lot of things. 15:03
moritz_ single static assignment, I guess
pmurias yes 15:04
masak wow, what an amazing coincidence. I have use of this in my $WORK today.
cool.
pmurias masak: how do you use SSA at work? 15:05
masak I don't yet, but the model it implies might be of use to me.
15:05 Guest59314 left
masak basically, I'm introducing value tracing into an existing statistics program. 15:06
right now, I'm prototyping the eventual software with Perl 6. this makes me happy :) 15:07
moritz_ is hunting an ugly race condition in his (Perl-non6) program 15:09
15:10 justatheory joined
Su-Shee hunts ugly perl-non6 programs. 15:11
masak maybe that's what we should call Perl 5... Non6 :) 15:13
the Perl 5 crowd will be overjoyed.
15:20 colomon left 15:27 nihiliad joined 15:28 Trashlord left
masak SF++ strikes again! lastofthecarelessmen.blogspot.com/2...-post.html 15:30
15:31 uniejo left 15:33 cognominal left
TimToady Perl 5 is...non-plus-plussed 15:35
masak undoubleplusgood.
TimToady
.oO(Is that gnuspeak?)
15:42
Su-Shee I think 1984 re-translated. :) 15:43
jnthn back 15:46
15:46 payload left 15:55 Psyche^ joined 15:57 pmurias left 15:58 Patterner left, Psyche^ is now known as Patterner 16:01 jaldhar left
TimToady re "arrives", you can arrive before you're grown up, like say, Shirley Temple. 16:05
jnthn
.oO( who? )
16:07
moritz_ arrived at school very often before I was grown up 16:08
Su-Shee jnthn: the prototype of a child star(let).
masak <backseat>are we there yet?</backseat>
Su-Shee very often did not arrive at school before I was grown up. ;) 16:09
16:24 payload joined 16:29 Limbic_Region joined 16:30 uniejo joined 16:31 Trashlord joined 16:34 fridim left 16:35 cl58 joined
cl58 does anyone know if moritz_ ever plans on coming back? 16:35
phenny cl58: 10 Feb 08:53Z <moritz_> tell cl58 it seems we don't share much common uptime these days - feel free to /msg me, or send an email to [email@hidden.address]
cl58 what time zone is he in?
moritz_ cl58: I'm here nearly every day 16:36
UTC+1
cl58 moritz_: your set to away right now, JSYK :D
moritz_ cl58: away messages can be deceiving
but indeed I have to run now
cl58 i'll e-mail you, if that's okay 16:37
moritz_ sure
cl58 thanks
moritz_ afk
16:40 eternaleye joined
moritz_ actually I missed the bus, so I'll be online for 15 more minutes or so 16:44
Juerd \o/ 16:46
cl58 moritz_: should i tell you here or via email then?
Juerd Good to have you here :)
moritz_ cl58: whatever you prefer
cl58 moritz_: i'll e-mail you 16:47
thanks
again
16:47 cotto_w0rk joined 16:49 cotto_working left 16:50 cl58 left 16:56 Trashlord left 16:58 Gothmog_ joined 17:00 iblechbot joined 17:19 ruoso left 17:22 barney left 17:27 [1]Limbic_Region joined 17:30 Limbic_Region left, [1]Limbic_Region is now known as Limbic_Region 17:31 pmurias joined, macae left 17:34 ruoso joined
pmurias ruoso: hi 17:37
17:42 orderthruchaos joined 17:43 hudnix joined 17:46 orderthruchaos left 17:50 Chillance joined 17:51 hudnix left
pugs_svn r29687 | pmurias++ | [mildew] register aliveness is aproximated 17:52
17:52 colomon joined
pugs_svn r29688 | pmurias++ | [mildew] using Hash::Util::FieldHash::idhash instead of using refaddr 17:52
r29688 | during the conversion to SSA
17:53 stephenlb joined 17:56 ruoso left 17:58 hudnix joined 18:00 Limbic_Region left 18:01 ShaneC joined 18:06 hercynium left 18:08 dakkar left 18:12 colomon left 18:13 cognominal joined 18:15 Trashlord joined, Trashlord left, Trashlord joined 18:16 colomon joined, masak left 18:17 iblechbot left 18:25 payload left 18:41 tewk joined 18:44 goksie joined 18:46 goksie left, goksie joined 18:48 ashleyb left 18:50 wolverian left 18:52 wolverian joined 18:54 goksie left 18:56 cotto_working joined 18:57 payload joined 18:59 cotto_w0rk left 19:00 payload left 19:03 pmurias left 19:04 colomon left 19:08 eternaleye left 19:09 rgrau joined 19:11 orafu left, orafu joined
pugs_svn r29689 | lwall++ | [t/spec/S01-perl-5-integration] replace various old usages of perl5: with :from<perl5> 19:11
19:12 ignacio_ left 19:13 ignacio_ joined
pugs_svn r29690 | lwall++ | [STD] also add shortname alias on adverbialized names 19:15
19:19 colomon joined 19:20 payload joined 19:30 xdg joined, toddr joined, ruoso joined 19:36 cognominal left 19:38 cognominal joined 19:53 pmurias joined 19:58 bluescreen left 19:59 cotto_working left 20:04 itz joined, jonasbn joined, itz left 20:05 itz joined
itz is ng the master branch yet? 20:05
jnthn itz: Not yet, within days I suspect.
PerlJam itz: almost.
20:11 tomaw_ joined, tomaw_ left
colomon there was a rumor ng would become master today, as I recall... ;) 20:12
PerlJam no rumor. pmichaud said as much yesterday. 20:13
TimToady you're listening to the wrong mongers :P
pmichaud colomon: yes, that rumor is still present. :) 20:14
20:14 bluescreen joined
colomon I'm pretty sure Wikipedia would insist that hearing it straight from the horse's mouth was just hearsay... ;) 20:14
PerlJam pmichaud: you've got about 10 hours localtime ;)
pmichaud PerlJam: yes, I know. Things around here have been a bit dicey since yesterday morning. :-| 20:15
TimToady the best way to predict the present is to have created it...
20:15 tomaw_ joined
PerlJam heh, "predict the present" 20:16
pmichaud predicting the present isn't what it used to be.
TimToady everyone who is present is tense 20:17
20:25 cotto_working joined 20:32 k23z__ joined
[particle] does this mean we officially enter the third 80% today? 20:51
PerlJam third 80%?!? 20:52
colomon might be the fourth... 20:53
jnthn Yeahbut how many more 80%s are there to go? :-) 20:54
PerlJam the good news is that each 80% is smaller than the last 20:55
20:55 athenot joined
PerlJam (the bad news is that you can't know how many 80% there are to go, so there appears to be an infinite number of them) 20:55
[particle] fortunately, we're evaluating that lazily 21:02
PerlJam well, that's the other good news 21:04
TimToady as long as each 80% is smaller, we're converging on a solution...though that gives new meaning to "Hundred Year Language"...
pugs_svn r29691 | lwall++ | [STD] refrain from trying to add a &foo:($sig) shortname twice 21:06
21:07 armicron joined 21:08 ruoso left 21:09 ignacio_ left
jnthn TimToady: Is that "try to detect duplicate subs with the same signature"? 21:09
[particle] perl 5 is already on it's a way to becoming a "hundred year language"
PerlJam [particle]: it's not even 1/5 of the way there yet.
21:10 armicron left
[particle] the first 20 years take 80% of the time. the next 80 years should fly by. 21:10
PerlJam wonders from when you start counting Perl 6's birth?
so far it looks like about a 10 year gestation period. 21:11
Perl 6 should live a *really* long time.
(well, unless we humans accidentally eradicate ourselves) 21:12
[particle] don't assume it'll be us, or by accident.
PerlJam I'm just going with a likely scenario. 21:13
There are other possibilities.
cognominal Is there code one hundred old but Lovelace's stuff for the difference engine?
jnthn ng: my $x; $x //= 42; say $x 21:17
p6eval ng 2d8d82: OUTPUT«Null PMC access in invoke()␤current instr.: '!assign_metaop' pc 15138 (src/builtins/Junction.pir:147)␤»
jnthn FAIL.
ng: my $x; say $x // 42;
p6eval ng 2d8d82: OUTPUT«42␤»
jnthn ng: my $x = Mu; $x //= 42; say $x 21:18
p6eval ng 2d8d82: OUTPUT«sh: ./perl6: No such file or directory␤»
PerlJam ng: my $x; say $x.defined
p6eval ng 2d8d82: OUTPUT«sh: ./perl6: No such file or directory␤»
jnthn grrrrrr
21:18 uniejo left 21:19 cotto_working left, cotto_working joined
PerlJam who has access to whatever process builds perl6 for p6eval? 21:19
21:20 payload left
jnthn Hmm. Should //= short circuit? 21:21
PerlJam ng: my $x; say $x.defined 21:22
p6eval ng 51583c: OUTPUT«0␤» 21:23
jnthn eh well, guess we need the non-sc version of the op for reductions anyways.
PerlJam: I found the probby
[particle] if i say $undefined-thing //= $another-undefined-thing; i want to set it to $another-undefined-thing always.
jnthn Yes, I know that bit. :-) 21:24
My question was if it evaluated what's to the RHS of //= 21:25
in the case that the LHS is defined
in juse // it does not.
Juerd I would expect //= to short circuit. 21:27
jnthn yeah, I fear folks will 21:28
ah well, non-short-circuiting version for now, and can figure out the short-circuit later on. :-)
We need to define the multi for [//] @foo anyways, I guess.
Juerd reads it as a conditional assignment
jnthn *nod* 21:29
Juerd And there I don't expect evaluation if the condition is not met :)
jnthn I agree it should be, I've just too much of a headache to do it perfectly tonight. :-)
Juerd Heh
jnthn And the imperfect way lets us pass the not-related-to-that test, and I'm sure other tests will call us out on the right semantics later. :-)
21:30 Su-Shee left
jnthn dalek: You're being very quite about my commits. :-P 21:31
Juerd quite or quiet? 21:32
jnthn quiet. :-P 21:33
oh 21:34
They ain't shown up on github yet either though.
colomon stealth mode.
I had that happen yesterday, actually.
PerlJam jnthn: maybe you didn't really push. It was all your imagination.
21:34 Chillance left
colomon I got new stuff when I pulled just now. 21:35
Add the multi for infix:<//> so meta-ops using it can work
etc.
jnthn PerlJam: My headache isn't from drinking borovicka. :-P
colomon: ok, cool
I didn't somehow find a new way to screw up with git then. :-) 21:36
colomon: Well, I only won back 2 test files so far today.
16 tests.
Drop in the ocean. :-)
colomon I've been distracted, alas.
but then, there's still a lot of day left here, too.
jnthn Yeah, your days finish later than mine. Odd. 21:37
:-)
21:38 masak joined
masak oh hai again. 21:38
jnthn: ping
jnthn hides - masak usually brings bugs 21:39
masak: OH HAI!
:-)
masak no bugs. promise. :)
jnthn :-O
masak gist.github.com/301987 # first attempt (failed) at anon enum
after I add this patch, ng still insists that &enum is a sub that it cannot find. 21:40
I yelled at it but that didn't seem to help at all.
jnthn masak: Tried kicking it too? 21:41
dalek kudo/ng: 5817a4e | jonathan++ | src/core/operators.pm:
Add &hash sub.
kudo/ng: d125a59 | jonathan++ | src/Perl6/Actions.pm:
Correctiong to block vs hash detection.
kudo/ng: 51583cb | jonathan++ | t/spectest.data:
We now pass S06-signature/scalar-type.t again.
kudo/ng: b7e4b08 | jonathan++ | src/core/operators.pm:
Add the multi for infix:<//> so meta-ops using it can work; we need to re-visit //= at some point though since it's special.
jnthn lolicomitted
PerlJam masak: then you need to jump up and down and yell some more
masak jnthn: no, didn't think of that. hold on. 21:42
jnthn masak: Hmm. Nothing immediately jumps out to me as wrong with it though.
masak: oh wait
PerlJam masak: what did your test code look like?
jnthn method term:sym<type_declarator>($/) { make $<type_declarator>.ast; }
You did that in actions.pm
masak PerlJam: ./perl6 -e 'enum <a b c>'
jnthn Did you add to Grammar.pm a similar thingy?
21:43 toddr left
masak jnthn: the diff you see is what I added. 21:43
what similar thingy?
jnthn Grammar.pm needs a line lajk:
masak oh!
jnthn token term:sym<type_declarator> { <type_declarator> }
masak ah. yes.
I will go back to off-line and attempt that. thanks for the tip.
jnthn masak: But looks like a good start. :-) 21:44
masak \o/
jnthn I very much suspect that's what's missing.
masak woot.
masak takes the opportunity to pull
this whole Internet phenomenon is great, but it can be very distracting. 21:45
PerlJam masak: quick! Look at this shiny thing! 21:46
masak: now look at this other shiny thing!
masak PerlJam: I usually put my shiny things in tabs and come back to them months later.
jnthn Doesn't the shininess wear off after that?
colomon I have an entire browser window of tabs waiting for me to get back to it...
jnthn: that just makes it easier to quickly delete them and get on with life. :) 21:47
jnthn++: those 16 tests pushed the count on make spectest to over 3700 tests for me, \o/
jnthn Nice!
masak jnthn: for most things the shininess does wear off, yes. 21:48
catcherall later. 21:49
21:49 masak left
jnthn o/ 21:49
er
21:50 iblechbot joined
jnthn S03-operators/basic-types.t appears to (a) have little to do with operators and (b) be full of it. 21:50
my $a;
isa_ok($a, Any, 'it is an Any type');
$a is Mu by default, iirc, not any.
21:51 jonasbn left, alester left
pugs_svn r29692 | jnthn++ | [t/spec] One little test pays a visit to the Latest Spec doctor. 21:54
21:54 payload joined 22:01 bluescreen left
colomon jnthn: if we got my @pop be like my @pop = (), we could get back pop.t... 22:05
or if we changed the test, but that feels like cheating. 22:06
22:07 cotto_work joined
colomon ng: my @pop = (); say @pop.pop() ~~ Failure 22:07
p6eval ng 54dabc: OUTPUT«1␤»
22:08 cotto_working left
jnthn colomon: I think that's one of the things pmichaud will be doing in the array fixes. 22:10
colomon: BTW, just got us 18 more :-)
dalek kudo/ng: 7085c8d | jonathan++ | src/c (2 files):
Move == and != from PIR cheats into operators.pm.
kudo/ng: 11e77a1 | jonathan++ | t/spectest.data:
S03-operators/basic-types.t passes again.
colomon I just discovered the Failure work from a few days ago fixes a bunch of skips in pop.t. 22:11
\o/ 22:12
jnthn Oh, cool
colomon: Does the pop.t hard or soft-fail? 22:13
pugs_svn r29693 | colomon++ | [t/spec] Unfudge tests that work now.
jnthn (that is, the my @a; thing...)
colomon Null PMC fail
jnthn ah, ok 22:14
Hmm
method keys() {
self.iterator.map({ $^pair.key })
}
%hash.keys.sort # fails with no method sort on MapIterator
Should map be returning directly a MapIterator or a List (or something else) containing it? 22:15
colomon I think it directly returns a MapIterator.
I think we just don't have sort yet.
on iterator, anyway. 22:16
jnthn ok
colomon err... on anything?
ng: (1..10).batch(10).sort 22:17
p6eval ng 54dabc: OUTPUT«Method 'batch' not found for invocant of class 'Range'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
jnthn ng: my @a = 4,3,7,1; @a.sort
p6eval ng 54dabc: OUTPUT«Method 'sort' not found for invocant of class 'Array'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
colomon yeah, there's no sort at all in ng.
jnthn Hmm
OK
That sorts out why it's failing then :-)
jnthn doesn't have the concentration to take on the scary that is S06-multi/type-based.t today, but S06-multi/value-based.t looks more do-able. :-) 22:18
colomon I think we'll actually get back a decent number of tests when we fix my @a. 22:23
jnthn Getting back test files is feeling increasingly easier. 22:26
colomon :)
22:28 dual left 22:29 dual joined 22:37 mberends left
dalek kudo/ng: 53b16d2 | jonathan++ | src/Perl6/ (2 files):
Support multi foo(1) { } again, along with taking the type of the literal for the multi-dispatch sortable nominal type.
22:39
kudo/ng: 1a9e769 | jonathan++ | t/spectest.data:
S06-multi/value-based.t passes again.
22:47 nihiliad left
jnthn ng: say "foo \$x" 22:48
p6eval ng 11e77a: OUTPUT«sh: ./perl6: No such file or directory␤»
jnthn ng: say "foo \$x" 22:49
p6eval ng 11e77a: OUTPUT«sh: ./perl6: No such file or directory␤»
jnthn ng: say "foo \$x"
p6eval ng 11e77a: OUTPUT«sh: ./perl6: No such file or directory␤»
jnthn meh
anyway, locally it tries to find $x 22:50
TimToady std: say "foo \$x" 22:51
p6eval std 29693: OUTPUT«ok 00:01 107m␤»
jnthn Yeah
Some bug in quote parsing I guess.
22:53 ezgranny420 joined
pugs_svn r29694 | lwall++ | [RE.pm] fix fossil file 22:54
22:57 cotto_work left, mugwump left, cotto_work joined 23:00 ezgranny420 left 23:13 iblechbot left 23:14 RandalSchwartz joined
RandalSchwartz what's the simplest description of rakudo... I'm looking for the two-paragraph version 23:15
Rakudo uses the Parrot engine to run a translation of Perl6 via [what]
how would you describe the pieces that translate perl6 into PIR?
crickets? :) 23:16
23:17 drbean joined 23:18 patspam joined
jnthn RandalSchwartz: It uses a Perl 6 grammar to do the parsing, building an AST in the process, and then that gets translated down to PIR. 23:20
RandalSchwartz Still using the Parrot Compiler Toolkit?
jnthn Yes.
RandalSchwartz ok
I'm googling for all this stuff 23:21
finding old pages, not sure how relevant everythig is :)
jnthn Things move/change/advance fairly quickly too, which doesn't help. :-)
23:21 ihrd joined
RandalSchwartz Yeah - I'm getting that 23:21
so of course, my article will also be out of date when I publish :)
23:22 patspam left, justatheory left
pugs_svn r29695 | lwall++ | [STD] duh, carp about longname collisions, not shortname 23:25
23:26 ezgranny420 joined, patspam joined, justatheory joined
TimToady RandalSchwartz: most of the info hanging off of perl6.org is fairly recent 23:27
jnthn -> rest 23:31
23:34 colomon left 23:39 cognominal left 23:43 ihrd left 23:44 colomon joined 23:50 colomon left 23:51 athenot left
pmurias perl6: sub foo($a,$b) {$a+$b};&bar := &foo.assuming(1);say bar(4); 23:52
p6eval rakudo 1d4928: OUTPUT«5␤» 23:53
..pugs: OUTPUT«*** ␤ Unexpected " :="␤ expecting "::" or signature value␤ Variable "&bar" requires predeclaration or explicit package name␤ at /tmp/dYf2BXpqIL line 1, column 28␤»
..elf 29695: OUTPUT«/home/p6eval/pugs/misc/STD_red/match.rb:141:in `block in to_dump0': undefined method `to_dump0' for true:TrueClass (NoMethodError)␤ from /home/p6eval/pugs/misc/STD_red/match.rb:140:in `each'␤ from /home/p6eval/pugs/misc/STD_red/match.rb:140:in `map'␤ from
../home/p6eval/pugs/misc/STD…
23:54 REPLeffect left