»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:03 cognominal left
timotimo d'oh. i forgot the most important part, almost. 00:06
dalek ast: dba0788 | (Solomon Foster)++ | S03-operators/bit.t:
Bitwise complement on bigint.
00:10
00:14 cognominal joined 00:19 gfldex left 00:20 gfldex joined 00:21 cognominal_ joined 00:22 cognominal left 00:26 bitonic left 00:31 cognominal_ left
felher good night, #perl6 :) 00:36
00:38 spider-mario left 00:40 cognominal_ joined 00:51 PacoAir left 00:57 haxmeister joined 01:03 cognominal joined 01:04 cognominal_ left 01:07 MikeFair left, hypolin joined 01:13 Ulti left 01:16 haxmeister left 01:18 dayangkun_ is now known as dayangkun 01:22 anuby_ left 01:26 cognominal left 01:27 anuby joined
dalek ecza: 89e47b6 | (Solomon Foster)++ | lib/Builtins.cs:
Make prefix:<+^> support BigIntegers.
01:31
01:45 xinming joined 02:04 cognominal joined 02:09 dayangkun_ joined 02:12 dayangkun left 02:24 Guest58404 left 02:27 FROGGS_ joined 02:30 quester left, FROGGS left
timotimo youtu.be/3wbVH8AhVbk - just going to leave this screencast here for feedback. i might just release this version. i'm more or less satisfied with it. 02:33
(although i will normalize the sound and reupload it probably)
dalek p: 5f89700 | rurban++ | .gitignore:
add MANIFEST.generated to .gitignore

This is generated by parrot > 4.11
02:37
flussence r: eval("class foo {} class bar") 02:50
p6eval rakudo a93058: OUTPUT«===SORRY!===␤Unable to parse class definition␤at eval_0:1␤------> class foo ⏏class bar␤ expecting any of:␤ statement list␤ prefix or term␤ prefix or meta-prefix␤ generic role␤»
flussence r: eval("class foo {} \x[2028] class bar {}")
p6eval rakudo a93058: OUTPUT«===SORRY!===␤Unable to parse class definition␤at eval_0:1␤------> class foo 
 ⏏class bar ␤ expecting any of:␤ statement list␤ prefix or term␤ prefix or meta-prefix␤ generic role␤»…
timotimo r: eval("class foo {}␤class bar {}");
p6eval rakudo a93058: OUTPUT«===SORRY!===␤Unable to parse class definition␤at eval_0:2␤------> <BOL>⏏class bar ␤ expecting any of:␤ statement list␤ prefix or term␤ prefix or meta-prefix␤ generic role␤»
flussence .u 2028
phenny U+2028 LINE SEPARATOR (
)
timotimo oh my.
flussence r: eval("class foo {...}␤class bar {...}"); 02:52
p6eval rakudo a93058: OUTPUT«Stub code executed␤current instr.: 'throw' pc 328671 (src/gen/CORE.setting.pir:146858) (src/gen/CORE.setting:9197)␤called from Sub 'sink' pc 358070 (src/gen/CORE.setting.pir:158744) (src/gen/CORE.setting:10354)␤called from Sub 'MAIN' pc 464 (src/gen/perl6.pir:170) …
flussence ok, that's better
r: eval("class foo {...}\x[2028]class bar {...}");
p6eval rakudo a93058: OUTPUT«Stub code executed␤current instr.: 'throw' pc 328671 (src/gen/CORE.setting.pir:146858) (src/gen/CORE.setting:9197)␤called from Sub 'sink' pc 358070 (src/gen/CORE.setting.pir:158744) (src/gen/CORE.setting:10354)␤called from Sub 'MAIN' pc 464 (src/gen/perl6.pir:170) …
flussence std: eval("class foo {...}\x[2028]class bar {...}"); 02:53
p6eval std a8bc48f: OUTPUT«ok 00:00 42m␤»
flussence n: eval("class foo {...}\x[2028]class bar {...}");
p6eval niecza v24-16-g89e47b6: OUTPUT«Unhandled exception: >>>Stub code executed␤ at /tmp/E7ygJvFSU8 line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4218 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4219 (module-CORE @ 580) ␤ at /home/p6eval/niecza/lib/COR…
02:57 cognominal left 03:04 cognominal joined
timotimo www.youtube.com/watch?v=10p_2yHk5BA - this is the louder version of the screencast. the old one is deleted. would appreciate feedback (other than 'there's a typo in the commit message') :) 03:11
diakopter listens/watches 03:12
diakopter has huge trouble understanding "heavily" accented English 03:13
diakopter is quite deficient in that regard
timotimo is that heavily accented? :(
diakopter I don't know; like I said, my perception is very different from most's 03:14
heh devbeast 03:15
timotimo :)
Juerd The recording is awful; an accent (German, I think) is clearly present but it'd be easier to understand if the recording were better. 03:17
diakopter the keyboard is loud 03:18
diakopter is done whining
timotimo maybe i should re-record the voiceover, then? try a different microphone at least
Juerd timotimo: That could certainly help 03:19
timotimo twitter.com/loltimo/status/2876604...64/photo/1 - did quite a bit of blanket-hanging so that the recording would be better
but i suppose using the noise-removal filter made it quite a bit worse
Juerd If that lojban lightning talk is yours, then at least for me, your accent is no problem at all :)
diakopter: Can you understand www.youtube.com/watch?v=QdlGxgKt7nc ?
diakopter what does fat-letters() do with non-ascii text
timotimo yes, it is 03:20
diakopter: what .trans does with non-supplied stuff. leave it untouched
Juerd I HATE the "next slide" nonsense in ccc lightning talks!
timotimo Juerd: i had my smartphone with me and could have used the "pew! pew!" app to get the next slide 03:21
Juerd Also, the LTs are scheduled way too early, when I'm usually still in bed during a ccc congress :P
diakopter Juerd: yes, more easily
Juerd timotimo: They should simply use a remote control.
timotimo yeah, well ...
i would *love* to learn how to get my accent neutralised 03:22
Juerd timotimo: Intonation is a big part.
timotimo fwiw, the guess "german" was correct
meaning what part of the word is stressed or the thing chinese has? 03:23
has as a central feature of the language*
Juerd Having visited 21c3 .. 29c3, recognising german accents is no challenge anymore :)
timotimo :D
diakopter you can listen to UK English and imitate it, then the same words in American English and imitate it, then pick one. :)
timotimo i'd more likely imitate both at once and create some really uncanny combination 03:24
Juerd timotimo: That's what I do :)
timotimo anyway, it's already been bedtime for a few hours now. good night!
diakopter well, the consistency is part of not having an accent
o/ 03:25
Juerd timotimo: At 0:11 of the LT, you pronounce "conlang" with "lang" in a higher pitch than "con", which sounds unnatural to me. This pattern is present in almost everything you say, and something that's typical of many, but certainly not all, german accents.
timotimo that's a good hint, thanks! 03:27
Juerd timotimo: And in "computer", in English usually the "o" sounds more like a german "a", not an "o". See also "control" which has a first, then o.
These two things are just some examples. Listen to your own lightning talk and try to find samples of the same words elsewhere.
diakopter computer vowels: but cute bird
Juerd But only do so if you want to. Your English is fine imho. 03:28
At the german conferences, much of the denglish I hear is much, much worse :)
Juerd has no idea whether he has a strong accent himself. 03:29
diakopter must reemphasize: my accent listening is atrocious
Juerd hates listening to his own voice.
diakopter: Does unaccented English even exist? :)
timotimo i'd love to be the proud owner of a barely noticable german accent
Juerd As long as you don't say things like "it gives", I guess most people won't even recognise it. 03:31
03:31 tokuhiro_ left
timotimo oh, you think? 03:32
Juerd No, still afloat ;)
03:33 kst joined
Juerd (Just teasing; your th is good enough :)) 03:33
skids_ Juerd: A particular American English accent is preferred by television producers. It's prevalent around where I live (Western MA) and also some areas of CA.
timotimo yeah, th is kind of the killer 03:34
it may not be exclusive to the german accent, but almost every non-proficient german english-speaker does it and it drives me crazy
Juerd timotimo: There was a tv commercial in .nl, featuring a bad german accent: <people on a boat> "We are sinking!" ... <germans> "What are you thinking ABOUT?" 03:35
timotimo oh, yes, that audiobite is also part of a song i'm quite fond of
maybe i'll spend a couple bucks on a proper microphone. the ps3 eye cam mics aren't that hot, are they? same goes for my ~7 euro clip-on microphone i bet.
Juerd So, whenever I run rsync, I keep thinking "What am I syncing ABOUT?!"
Which makes no sense. 03:36
And drives me mad.
I'm off to bed now. 4:36 here.
03:38 pmurias left 03:40 cognominal left 03:46 cognominal joined 03:52 cognominal left 03:57 orafu left 03:59 orafu joined 04:02 MikeFair_ joined 04:45 dayangkun_ left 05:34 dayangkun joined 05:35 telex left 05:36 telex joined 05:50 quester joined 05:58 dayangkun left 06:03 JJ_Brain joined, dayangkun joined 06:10 JJ_Brain left 06:21 slayer101_ joined 06:22 slayer101_ left 06:38 anuby_ joined 06:40 anuby left 06:41 anuby joined 06:43 anuby_ left 06:51 anuby_ joined 06:54 anuby left 07:04 jokar joined 07:07 jokar left, jokar joined
snarkyboojum hi guys, what do we have for creating modules a la Dist::Zilla or Module::Starter? 07:14
07:27 JJ_Brain joined
snarkyboojum e.g. is panda going to be extended to create modules as well props? 07:32
praps*
07:42 kaare_ joined 08:02 GlitchMr joined 08:03 jokar left, JJ_Brain left 08:34 SamuraiJack joined 08:43 bitonic joined
moritz \o 08:46
08:55 anuby joined 08:57 anuby_ left 09:04 quester left 09:08 MayDaniel joined 09:16 dayangkun left, quester joined 09:19 MACH8ZN joined 09:22 gaussblurinc joined 09:36 arkydo joined 09:42 Psyche^ joined 09:46 Patterner left, Psyche^ is now known as Patterner
FROGGS_ phenny: tell flussence that he might try: r: eval("class foo \{...\}\x[2028]class bar \{...\}"); # you need to escape { } 09:52
phenny FROGGS_: I'll pass that on when flussence is around.
09:52 FROGGS_ is now known as FROGGS
FROGGS morning moritz 09:53
timotimo: I really like it, but you need a better keyboard ;o) 09:58
09:58 popl joined
FROGGS timotimo: what do your neighbours say when you type? # the colors and sound is pretty good, my kid is talking to me in a loop, so will check your talk later 09:59
popl o_O 10:00
10:04 hypolin left 10:06 anuby left 10:08 PacoAir joined 10:32 quester left 10:33 wk joined, wk is now known as Guest72847 10:38 FROGGS_ joined 10:39 dayangkun joined, FROGGS_ is now known as FROGGS[mobile]
FROGGS[mobile] whats up popl? 10:42
10:45 JJ_Brain joined
popl FROGGS[mobile]: just hanging out over in #perl 10:47
10:47 JJ_Brain left
masak g'day, #perl6 11:07
tadzik HELLO! 11:08
FROGGS[mobile] hi masak, tadzik 11:16
tadzik HOP in epub format for free!11111 11:18
popl nothing is free, tadzik 11:19
tadzik no, some things are free
popl TANSTAAFL
tadzik a smile is free, for example
popl Are you calling Robert Heinlein a liar? 11:20
;P
tadzik . o O ( that'd be free speech ) ;)
masak tadzik: you *assume* a smile is free...
masak smiles, menacingly
timotimo: nice video. 11:21
11:22 popl left
tadzik video? 11:22
masak timotimo: I have no problem with the accent or the keyboard smatter. I was slightly disappointed that you didn't actually send the pull request at the end. also, two or three avoidable typos/mistakes pulled down the quality slightly.
tadzik: www.youtube.com/watch?v=10p_2yHk5BA
tadzik Pandas! \o/ 11:23
will have to watch that
masak Juerd: www.youtube.com/watch?v=yR0lWICH3rY :) 11:24
tadzik :D:D:D 11:25
masak oh, I didn't know Potion was an influence for CoffeeScript. 11:30
I was actually in hoodwink.d for a short while. 11:40
the most fun thing I experienced was going to the Wikipedia article for it. it didn't exist.
but at the bottom of the non-existent article were hoodwink.d comments, with people laughing and making jokes :D 11:41
that kinda summarizes the whole thing, methinks.
hm, I notice I'm commenting without context. sorry about that. _why's site is back up, in a very weird way: news.ycombinator.com/item?id=5015087 11:44
11:47 MikeFair_ left 11:57 xenoterracide left 12:00 xenoterracide joined
moritz is _why's disappearance some deep, shared trauma of the ruby community? 12:03
arnsholt To some extent, I think it might be 12:05
I read an article about it a while back
masak was that the article where they tracked _why down and revealed his identity once and for all, to the tunes of him saying that he just wants to be left alone? 12:19
12:27 gaussblurinc left
masak it left me wondering what went through the journalist's mind at the time. 12:28
arnsholt Yeah, that bit was a bit weird I guess 12:33
masak it was a fine, well-researched article, appropriate as a tribute to _why, oddly ending with "so, I tracked him down". 12:35
arnsholt Actually talking to him was a good ending I think, but dropping all the info on him as well might be a bit unnecessary 12:43
Although it was more a confirmation than news to those who had looked into it before it seems 12:44
masak aye. 12:47
12:49 Guest72847 left 12:50 cognominal joined 12:58 tokuhiro_ joined 13:02 colomon left
moritz still, not quite the right spirit to divulge the details, IMHO 13:03
13:04 FROGGS[mobile] left, spider-mario joined
moritz en.wikipedia.org/wiki/Math_Wars # wow, I had no idea this had been such a big topic 13:13
13:13 wk joined 13:14 wk is now known as Guest70211 13:21 Guest70211 left
masak unrelated to the "new math" that Tom Lehrer is singing about, I assume. 13:24
this seems to have been later than that.
felher timotimo++ # nice video :)
13:24 tokuhiro_ left 13:35 arkydo left 13:36 cognominal_ joined
snarkyboojum the subject matter of the 'Maths Wars' debate reminds me of a beautiful essay I read some time ago - www.maa.org/devlin/lockhartslament.pdf 13:36
13:36 cognominal left
masak now why does that sound familiar? oh yes: www.scottaaronson.com/blog/?p=410 13:39
13:40 pmurias joined 13:55 MayDaniel left
timotimo hum 13:56
now what am i supposed to think/do. re-record the audio, re-do the video and audio? :|
13:57 daniel-s left 13:59 cognominal_ left
timotimo FROGGS: also, my keyboard is *excellent*, thank you very much :P 14:10
masak I don't believe that's what he was asking. 14:16
he was asking what the neighbors think when you type :)
(I am the proud owner of a model M keyboard, by the way. I'm glad I held onto it. it truly is a joy to type on.) 14:17
timotimo this is a Das Keyboard, so it's similar enough
FROGGS timotimo: :o)
timotimo i'm not sure my neighbours actually hear it
FROGGS wow
(Das Keyboard)++
timotimo but for the next time i record a screencast, i'll retrieve that external thinkpad usb keyboard i've deposited at a friend's
FROGGS 1800 euros, right? 14:18
timotimo er, no?!
that would be the optimus maximus
FROGGS ahh, k
timotimo i'm not that crazy :)
although i'm currently considering spending a hundred euros on a microphone and related, necessary doodads
moritz masak: the math wars started indeed with the "new math" thing 14:20
though "new math" became old pretty quickly, and the "reformed math" was basically a reaction to the new math
14:21 nyuszika7h left
timotimo i should only spend money on recording equipment if my voice is pleasant enough so that i could consider making lots of screencasts and stuff. would that be the case? 14:21
FROGGS timotimo: I think so, yes 14:22
14:22 cognominal joined
masak moritz: if I would guess, the fundamental problem is that kids typically hate math and don't see the point of it. Russia and much of Asia seem to be exceptions for some reason, but it holds true for Europe and the US. 14:23
as for me, I'm not sure if I enjoyed math because I saw the point of it early, or vice versa. early memories seem to point to the enjoyment being there first :) 14:25
moritz same here
14:26 nyuszika7h joined
masak after learning how to do addition on paper, I liked to sit down with a sheet of graph paper, write "1" in the top right corner, then "2" below it, and keep doubling as I ran out of paper. 14:26
s/ as / until /
I don't know what I found so fascinating about it. but it did give me an early familiarity with the powers of two. 14:27
I also observed -- long before I learned anything about logarithms -- that sometimes it would take 3 lines until one got a new digit, sometimes it would take 4. but always 3 *or* 4. 14:28
timotimo mathematical "doodle games" like that and the ones vi hart is popularising should be a great way to make math fun for kids, although most of the doodle games vi does are rather for advanced students
masak r: say log(10)/log(2) 14:29
p6eval rakudo a93058: OUTPUT«3.32192809488736␤»
masak I also liked to think about the cycles that always happened in the far-right column.
r: say 1, { ($_ * 2) % 10 } ... * 14:30
p6eval rakudo a93058: OUTPUT«1 2 4 8 ...␤»
masak heh.
r: say (1, { ($_ * 2) % 10 } ... *)[^20]
p6eval rakudo a93058: OUTPUT«1 2 4 8 6 2 4 8 6 2 4 8 6 2 4 8 6 2 4 8␤»
masak r: say (3, { ($_ * 2) % 10 } ... *)[^20]
p6eval rakudo a93058: OUTPUT«3 6 2 4 8 6 2 4 8 6 2 4 8 6 2 4 8 6 2 4␤»
masak you can start at any digit (except 5 or 0) and you will get this cycle.
I found that intriguing. 14:31
oh, and I soon learned that I could do the addition left-to-right, if only I kept on the lookout for carries. 14:32
timotimo masak: do you think you had a predisposition for finding those patterns interesting? or could any kid have been fascinated in a similar way? 14:40
14:41 Chillance left
masak I have no insights into nature-vs-nurture, unfortunately. I think it's a complex interplay of predisposition and environment. 14:41
moritz decimal fractions also have interesting properties regarding the length of the cycle 14:44
in particular, the cycle can't ever be longer than the denominator
because there can only by remainders that are smaller than the denominator
masak for example, 2**10 == 1048576. if I do the doubling without carries, it comes out as 2086042, and I can do that left-to-right. but then I know the '8604' digits all require a carry, becoming '9715'. so the final result is '2097152'. but I can do it all left-to-right. 14:45
(with some lookahead)
masak tries to capture this in an algorithm 14:46
here: gist.github.com/4467722 :) 14:55
I wrote it first as an algorithm that pops the last element of the array, adds one and puts it back. 14:56
then I refactored it into an algorithm that uses $last :)
interesting exercise.
speaking of which: people, send in your p6cc solutions! I'm getting some, but not enough. :) don't wait until the very last moment. 14:57
moritz I'd send in more solutions if I had more :-)
r: gist.github.com/4467722 15:04
p6eval rakudo a93058: OUTPUT«ok 1 - ␤ok 2 - ␤ok 3 - ␤»
masak I realize I should have had one more test case: is double(7), 14; 15:06
anyway, the code would pass that one, too.
thanks to the post-increment on line 10 turning an Any value into 0 before incrementing. 15:07
15:10 sftp left 15:12 sftp joined
timotimo r: class A { has $.attr is rw; }; class B { has A $!foo handles <attr>; }; my $inst = B.new(); $inst.attr = "hello world"; say $inst.attr; 15:31
p6eval rakudo a93058: OUTPUT«Cannot look up attributes in a type object␤ in method attr at src/gen/CORE.setting:1791␤ in method attr at src/gen/CORE.setting:267␤ in block at /tmp/td7yoZUU_q:1␤␤»
timotimo oh, right
r: class A { has $.attr is rw; }; class B { has A $!foo handles <attr>; method new() { $!foo = A.new; }; }; my $inst = B.new(); $inst.attr = "hello world"; say $inst.attr; 15:32
p6eval rakudo a93058: OUTPUT«Cannot look up attributes in a type object␤ in method new at /tmp/MoVaNwVRXJ:1␤ in block at /tmp/MoVaNwVRXJ:1␤␤»
timotimo er, huh?
std: class A { has $.attr is rw; }; class B { has A $!foo handles <attr>; method new() { $!foo = A.new; }; }; my $inst = B.new(); $inst.attr = "hello world"; say $inst.attr;
p6eval std a8bc48f: OUTPUT«ok 00:00 46m␤»
timotimo oh, did i forget to bless in new()? 15:33
std: class A { has $.attr is rw; }; class B { has A $!foo handles <attr>; submethod BUILD() { $!foo = A.new; }; }; my $inst = B.new(); $inst.attr = "hello world"; say $inst.attr;
p6eval std a8bc48f: OUTPUT«ok 00:00 46m␤»
timotimo r: class A { has $.attr is rw; }; class B { has A $!foo handles <attr>; submethod BUILD() { $!foo = A.new; }; }; my $inst = B.new(); $inst.attr = "hello world"; say $inst.attr;
p6eval rakudo a93058: OUTPUT«hello world␤»
timotimo yay
that's pretty cool
15:38 cognominal left 15:43 spider-mario left 16:00 arkydo joined 16:07 SamuraiJack_ joined 16:08 SamuraiJack left
moritz r: my &a := * % 10; 16:09
p6eval rakudo a93058: ( no output )
masak r: my &a := * / 10; say a a a 42_000 16:17
p6eval rakudo a93058: OUTPUT«42␤»
masak r: my &a := 'a' ~ *; say a a a a a a 'rgh!' 16:18
p6eval rakudo a93058: OUTPUT«aaaaaargh!␤»
16:18 pmurias left
moritz r: say map * % 10, '7654'.comb Z+ '8230'.comb 16:18
p6eval rakudo a93058: OUTPUT«Cannot call 'map'; none of these signatures match:␤:(&code, *@values)␤␤ in block at /tmp/QYwXgmvjB7:1␤␤»
moritz what's wrong here?
masak precedence.
moritz oh
r: say map * % 10, ('7654'.comb Z+ '8230'.comb)
p6eval rakudo a93058: OUTPUT«5 8 8 4␤»
masak just so.
moritz masak++ 16:19
masak in an arm-wrestling match between a listop and a zip operator, the zip operator wins (binds the loosest). this is often surprising. 16:20
hm, no. it's not the listop so much as the list `* % 10, '7654'.comb`
timotimo ooh, so *that* is how that works! 16:23
masak yeah.
it's one of those "can't win" precedences. even the same user will expect both variants at different times. 16:24
this feels perfectly natural, for example:
rn: .say for 1, 2, 3, 4 Z+ 50, 60, 70, 80
p6eval rakudo a93058, niecza v24-16-g89e47b6: OUTPUT«51␤62␤73␤84␤»
masak we *don't* expect just 4 and 50 to be added there, and the other six elements to be silently thrown out.
well, the same argument causes '* % 10' to be gobbled up by Z+ above. 16:25
timotimo yes, indeed. 16:26
can i do debug-prints from inside the nqp source of rakudo in any sensible way? 16:27
16:28 yakshavr left
timotimo (in Actions.pm for instance) 16:28
masak nqp: say("lol I am a debug statement!") 16:29
p6eval nqp: OUTPUT«lol I am a debug statement!␤»
16:29 yakshavr joined
timotimo oh? that's surprisingly easy 16:31
nqp: say "lol, do i need parens?";
p6eval nqp: OUTPUT«Confused at line 2, near "say \"lol, "␤current instr.: 'panic' pc 13231 (src/stage2/gen/NQPHLL.pir:4687) (src/stage2/gen/NQPHLL.pm:328)␤»
timotimo fair enough
nqp: my $a := 10; say($a.WHAT); 16:32
p6eval nqp: OUTPUT«Can only use get_what on a SixModelObject␤current instr.: '' pc 53 ((file unknown):43) (/tmp/IblgbcqxXn:1)␤»
timotimo if i'm not sure what type something is, how would i get it print'd?
nqp: my $a := 10; say($a.perl);
p6eval nqp: OUTPUT«Method 'perl' not found for invocant of class 'Integer'␤current instr.: '' pc 59 ((file unknown):43) (/tmp/4E4LK31kZO:1)␤»
timotimo nqp: my $a := 10; say($a.gist);
p6eval nqp: OUTPUT«Method 'gist' not found for invocant of class 'Integer'␤current instr.: '' pc 59 ((file unknown):43) (/tmp/17VBXiznOo:1)␤»
timotimo hah, that should do it :P 16:33
16:41 Moukeddar joined 16:42 Moukeddar left 16:43 Moukeddar joined, Moukeddar left
masak Mouk...edd...! \o/... 16:45
17:04 ismail_ joined 17:14 ismail_ left 17:21 MayDaniel joined 17:42 wk joined 17:43 wk is now known as Guest78034 17:44 darkwolf joined
darkwolf hi #perl6 17:45
r: my int $a
p6eval rakudo a93058: ( no output )
darkwolf r: my int $a =5; say $a 17:46
p6eval rakudo a93058: OUTPUT«5␤»
darkwolf works
diakopter :) 17:47
masak hi, darkwolf.
darkwolf it seems this bug is only in archlinux/rakudo version
hi masak
masak darkwolf: "this bug"? could you nopaste what you get? 17:48
including 'perl6 -v' output.
darkwolf ok I'll try
moritz darkwolf: are you using the interactive shell?
darkwolf yes 17:49
moritz that's know not to like native types
darkwolf it was in repl
17:49 am0c left
moritz right, that's a known bug 17:49
masak oh, the REPLs the differing factor.
darkwolf so it was known bug then
masak REPL's*
darkwolf like unicode :(
timotimo trying to understand the require ::($foo) thing again, kind of not really getting it so far :| 17:50
darkwolf thanks, masak
masak darkwolf: Unicode -- that could be your terminal, though.
darkwolf last time I cheked repl printed giberish when I tried to print unicode 17:51
Is that fixed
timotimo hm, token longname has a {} inside. what does that do? it's an empty closure/block/code? 17:52
darkwolf воркс
ops
works
wrong keymap
:)
moritz timotimo: I have a partial patch locally 17:53
timotimo: spectesting that now
timotimo oh. well, of course you could do it, too ..
moritz timotimo: the {} is an empty block that limits LTM
timotimo limit in what way?
moritz timotimo: I wanted to leave it to you, but it didn't let me rest :-)
limit what the "longest" in "longest token" refers to 17:54
timotimo mhm
as long as you are willing to answer my questions about your patch, it's okay
tadzik hrm, timotimo
in your video, 0:15-0:20 or so, why is the scrollbar not moving? :)
timotimo tadzik: i have no idea tbh
tadzik . o O ( Lies! ) 17:55
timotimo moritz: can i have a look at the patch even if it's not 100% spectested yet? 17:57
masak darkwolf: "воркс" -- wrong keymap, and even then a typo. it's "works", not "vorks" :P 18:00
tadzik the video convinces me again that no one has ever written META.info from scratch :P
timotimo :D
darkwolf in Bulgarian phonetic keymap "в" is on "w" 18:01
:)
masak oh!
TIL
darkwolf that's why
masak tadzik: it's META.info copies all the way down! :)
darkwolf: what's on "v"?
darkwolf ж
masak no жay! 18:02
that's just... жeird.
darkwolf I know
masak clearly ж should be on the "zh" key :P
darkwolf It must be near "any" key 18:03
;)
tadzik wonders if Module::Starter is still useful
timotimo the only thing it should do is grab a random META.info from github :P 18:04
18:06 grondilu joined
grondilu rn: say [R**] 2 .. 4 18:07
phenny grondilu: 03 Jan 21:50Z <masak> tell grondilu that I think rosettacode.org/mw/index.php?title=...did=149561 made a mathematical-looking expression much less easy to understand :/
p6eval rakudo a93058, niecza v24-16-g89e47b6: OUTPUT«4096␤»
phenny grondilu: 03 Jan 21:53Z <masak> tell grondilu also, I can't reproduce the bug you seem to be compensating for in rosettacode.org/mw/index.php?title=...did=149562 -- old rakudo?
tadzik timotimo: awesome screencast! 18:11
timotimo you think? thanks!
i got quite diverse opinions ;)
tadzik yeah, I liked it a lot
I'm amazed every time panda works for someone :P 18:12
timotimo \o/
tadzik are you planning to do more of those?
grondilu rn: for ^2 { FIRST { .say for <foo bar> }; .say } 18:14
p6eval niecza v24-16-g89e47b6: OUTPUT«===SORRY!===␤␤Action method statement_prefix:FIRST not yet implemented at /tmp/1abxGTuWcL line 1:␤------> for ^2 { FIRST { .say for <foo bar> }⏏; .say }␤␤Unhandled exception: Unable to resolve method statement_level in …
..rakudo a93058: OUTPUT«0␤1␤»
masak submits rakudobug
grondilu++ 18:15
18:15 groky left
masak I'm running 2012.11-95-g8a1836b locally, and it works there. 18:15
so it's a relatively new regression.
masak was the one with the old rakudo, it turns out :) 18:16
grondilu :)
timotimo tadzik: yes, i'd love to. i just ordered a less crappy microphone
18:16 groky joined 18:18 arkydo is now known as putau
flussence < /dev/backlog 18:18
phenny flussence: 09:52Z <FROGGS_> tell flussence that he might try: r: eval("class foo \{...\}\x[2028]class bar \{...\}"); # you need to escape { }
flussence hm
rn: eval("class foo \{...\} \x[2028] class bar \{...\}"); 18:19
p6eval niecza v24-16-g89e47b6: OUTPUT«Unhandled exception: Package was stubbed but not defined␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 5633 (STD.sorry @ 7) ␤ at /home/p6eval/niecza/src/STD.pm6 line 5416 (STD.explain_mystery…
..rakudo a93058: OUTPUT«===SORRY!===␤Two terms in a row␤at eval_0:1␤------> class foo {...} 
 ⏏class bar {...}␤ expecting any of:␤ argument list␤ postfix␤ infix or meta-infix␤ infix stopper␤ statement end␤ s…
timotimo tadzik: feel free to suggest topics ;) 18:20
flussence rn: eval("class foo \{ has $.a; \} \x[2028] class bar \{ has $.b; \}");
p6eval rakudo a93058: OUTPUT«===SORRY!===␤Variable $.a used where no 'self' is available␤at /tmp/t1IvKYRqSo:1␤------> eval("class foo \{ has $.a⏏; \} \x[2028] class bar \{ has $.b; \}")␤ expecting any of:␤ argument list␤ prefix or term␤ …
..niecza v24-16-g89e47b6: OUTPUT«===SORRY!===␤␤Variable $.a used where no 'self' is available at /tmp/22UqaL08sB line 1:␤------> eval("class foo \{ has ⏏$.a; \} \x[2028] class bar \{ has $.b; \␤␤Variable $.b used where no 'self' is available at /tmp/22…
flussence rn: eval("class foo \{ has $a; \} \x[2028] class bar \{ has $b; \}");
p6eval niecza v24-16-g89e47b6: OUTPUT«===SORRY!===␤␤Variable $a is not predeclared at /tmp/wGNo2HxtTy line 1:␤------> eval("class foo \{ has ⏏$a; \} \x[2028] class bar \{ has $b; \}"␤␤Variable $b is not predeclared at /tmp/wGNo2HxtTy line 1:␤------> \{…
..rakudo a93058: OUTPUT«===SORRY!===␤Variable $a is not declared␤at /tmp/PuFV0Sc6AD:1␤------> eval("class foo \{ has $a⏏; \} \x[2028] class bar \{ has $b; \}");␤ expecting any of:␤ postfix␤»
flussence argh
tadzik timotimo: ha, I was curious if you have any ideas :)
masak r: for ^2 { FIRST { say "hah!" }; .say }
p6eval rakudo a93058: OUTPUT«hah!␤0␤1␤»
timotimo "how to implement simple things into rakudo" :P 18:21
masak r: for ^2 { FIRST { .say for 4 }; .say }
p6eval rakudo a93058: OUTPUT«0␤1␤»
masak r: for ^2 { LAST { .say for 4 }; .say }
p6eval rakudo a93058: OUTPUT«0␤1␤»
masak r: for ^2 { LAST { say "hah!" }; .say }
p6eval rakudo a93058: OUTPUT«0␤1␤hah!␤»
masak r: for ^2 { ENTER { .say for 4 }; .say }
p6eval rakudo a93058: OUTPUT«0␤1␤»
masak r: for ^2 { LEAVE { .say for 4 }; .say } 18:22
p6eval rakudo a93058: OUTPUT«0␤1␤»
flussence std: class foo { has $!a } #ok, let me start from the basics...
p6eval std a8bc48f: OUTPUT«ok 00:00 43m␤»
flussence rn: eval("class foo \{ has \$!a; \} \x[2028] class bar \{ has \$!b; \}");
p6eval rakudo a93058: OUTPUT«===SORRY!===␤Two terms in a row␤at eval_0:1␤------> class foo { has $!a; } 
 ⏏class bar { has $!b; }␤ expecting any of:␤ scoped declarator␤ constraint␤ postfix␤ infix or meta-infix␤ infix st…
..niecza v24-16-g89e47b6: ( no output )
flussence there we go
unicode newlines: should they be allowed as source code newlines or not?
masak r: for ^2 { FIRST { say "oh!" for 4 }; .say } 18:23
p6eval rakudo a93058: OUTPUT«0␤1␤»
flussence (also, what's the q adverb for interpolating \x but nothing else?)
r: say q:b/ $a $b {foo} \x[2028] / 18:25
p6eval rakudo a93058: OUTPUT« $a $b {foo} 
 ␤»
dalek kudo/nom: 60c572c | moritz++ | src/Perl6/ (2 files):
crude implementation of "require ::($modulename) <importlist>

only works for a single chunk, e.g. "require Test::($name) <&symbols>" does not work
18:30
18:39 snearch joined
FROGGS rn: eval('class foo {...}; class bar {...}'); 18:51
p6eval rakudo a93058: OUTPUT«===SORRY!===␤The following packages were stubbed but not defined:␤ foo␤ bar␤at eval_0:1␤------> class foo {...}; class bar {...}⏏<EOL>␤ expecting any of:␤ argument list␤ postfix␤ infix or meta-infix…
..niecza v24-16-g89e47b6: OUTPUT«Unhandled exception: Package was stubbed but not defined␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 5633 (STD.sorry @ 7) ␤ at /home/p6eval/niecza/src/STD.pm6 line 5416 (STD.explain_mystery…
FROGGS flussence: why not with semicolon and single quotes?
18:51 ismail_ joined
flussence I was testing how it handled the line break in the middle. 18:52
FROGGS ahh, k
grondilu /away 18:54
darkwolf panda is not working for me :( 18:59
18:59 mtk left
masak darkwolf: any chance you can paste the output at gist.github.com/ ? makes it easier to diagnose. 19:03
darkwolf paste.perldancer.org/32DjAXhHmrawh 19:07
is that ok
? 19:08
FROGGS darkwolf: what command did you invoke?
your paste is a bit short
moritz and did you install panda yourself? or did you the panda that came with a rakudo Star installation?
and what version of rakudo are you using? 19:09
darkwolf panda install NativeCall
I built it myself
from the github repository
as a common user 19:10
moritz what, rakudo? or panda?
darkwolf rakudo 19:11
oops
panda
moritz so, what's your rakudo version?
darkwolf rakudo is from archlinux/rakudo repository
moritz and whats its version?
darkwolf 2012.12
moritz that should be new enough
darkwolf on parrot 4.11.0 19:12
moritz and then in panda, you ran perl6 bootstrap.pl ?
darkwolf yes
moritz hrmpf 19:13
and what does which panda say?
flussence FWIW this looks like exactly the same problem I've been having (someone mentioned it was a precomp bug)
japhb I get that one on a semi-regular basis as well. The number changes, BTW. 19:14
And I suspect pre-comp as well, but I've not proven it.
darkwolf prove tests fail after instalation too
moritz well, that error is basically always related to precomp 19:15
if you get, please try to run it with the env variable RAKUDO_MODULE_DEBUG=1 set
japhb My script to build a new rakudo and reinstall panda modules is starting to have several "salt the earth" steps ...
moritz well, you should remove the old %*CUSTOM_LIB<site> dir 19:16
19:16 snearch left
japhb moritz, IIRC that wasn't enough. I also had to 19:16
git clean -dXf in panda's checkout or somesuch 19:17
japhb goes and looks on the computer with the latest variant
flussence I've gotten panda to run by blowing away all its installed *.pir files, but that doesn't solve trying to install other packages using it
japhb Oh, there was also the problem at one point that I suspected was the result of bash caching the location of the panda bin when I built a new rakudo that used a new parrot that had a new lib path 19:19
japhb has found this whole process losing -Ofun in the iteration 19:20
19:21 GlitchMr left, GlitchMr joined
darkwolf paste.perldancer.org/afOH4TcII9qq 19:26
this is debug output 19:27
from panda when it fails
masak ooh, RAKUDO_MODULE_DEBUG=1 19:29
darkwolf yes
masak added by moritz++ on 2012-06-05. and I didn't learn about it until today... 19:31
flussence env vars like that should be listed in the manpage, or *somewhere* people might look for them 19:33
19:36 GlitchMr left, GlitchMr joined 19:39 nebuchadnezzar joined
darkwolf flussence++ 19:40
that might help much 19:42
masak submits rakudobug
19:50 SamuraiJack_ left 19:55 thou joined 20:00 GlitchMr left
flussence this might help: bpaste.net/show/68597/ 20:09
moritz flussence++ 20:10
flussence (there's also one in Test.pm, but I don't think that counts) 20:11
FROGGS r: my @a = <a b c>; say @a.grep('b')[0] = ''; say @a 20:12
p6eval rakudo 60c572: OUTPUT«␤a c␤»
FROGGS how do I delete an element that was found by grep?
moritz FROGGS: you don't
FROGGS meh
FROGGS is sad
moritz FROGGS: you say @a.=grep($inverted_condition)
FROGGS ahh 20:13
masak FROGGS: if you plan to do this a lot, maybe define a &discard subroutine in your program.
FROGGS r: my @a = <a b c>; @a.=grep(/<-[b]>/); say @a
p6eval rakudo 60c572: OUTPUT«a c␤»
FROGGS no, only once 20:14
dalek kudo/nom: e67fa90 | moritz++ | docs/running.pod:
document environment variables

patch by flussence++
FROGGS moritz: thanks!
moritz r: my @a = <a b c>; @a.=grep(* ne 'b'); say @
p6eval rakudo 60c572: OUTPUT«===SORRY!===␤Non-declarative sigil is missing its name␤at /tmp/KLcH5YJQdC:1␤------> @a = <a b c>; @a.=grep(* ne 'b'); say @⏏<EOL>␤ expecting any of:␤ argument list␤ prefix or term␤ prefix or meta-prefix␤…
moritz r: my @a = <a b c>; @a.=grep(* ne 'b'); say @a
p6eval rakudo 60c572: OUTPUT«a c␤»
masak r: my @a = <a b c>; @a.=grep(none /<[b]>/); say @a
p6eval rakudo 60c572: OUTPUT«a c␤»
moritz r: my @a = <a b c>; @a.=grep(none 'b'); say @a 20:15
p6eval rakudo 60c572: OUTPUT«a c␤»
masak and moritz are so full of good ideas :P
FROGGS ohh, I like that one
20:15 GlitchMr joined
FROGGS (the last one) 20:15
flussence rn: my @a = <a b c>; @a.splice: @a.pairs.first(*.value eq 'b').key, 1; say @a
p6eval rakudo 60c572, niecza v24-16-g89e47b6: OUTPUT«a c␤»
FROGGS n: my @a = <a b c>; @a.=grep(none 'b'); say @a
20:15 GlitchMr left
p6eval niecza v24-16-g89e47b6: OUTPUT«a c␤» 20:15
flussence that's the "modify in place" version 20:16
FROGGS cool
20:20 pmurias joined
dalek kudo-js: b8af9a6 | (Paweł Murias)++ | src/QAST/Compiler/JavaScript.nqp:
remove a dead method
20:24
kudo-js: 3368ffa | (Paweł Murias)++ | bin/compile-setting.nqp:
remove debugging statement
kudo-js: 5c3ec6a | (Paweł Murias)++ | / (5 files):
serialize method caches, more test pass
moritz r: say do for 1 { FIRST 42 } 20:33
p6eval rakudo 60c572: OUTPUT«␤»
moritz r: say CHECK 42
p6eval rakudo 60c572: OUTPUT«42␤»
moritz r: say FIRST 42
p6eval rakudo 60c572: OUTPUT«Nil␤»
moritz r: say LEAVE 42
p6eval rakudo 60c572: ( no output )
masak 'say FIRST 42' would be Nil. 20:35
but I would expect 'say LEAVE 42' to be something similar. 20:36
r: say LEAVE 42; say "alive"
p6eval rakudo 60c572: ( no output )
masak there's something rotten in the state of phasers.
20:38 GlitchMr joined
FROGGS yay, my grammar works somehow \o/ 20:38
sorear what did you expect? we haven't even had a #phasers for months.
masak sorear: that is a sad state of affairs, too. 20:39
I, for one, would welcome the return of our #phasers overlords^Wweekly meetings. 20:40
20:50 putau left, lichtkind joined
darkwolf bye 20:50
20:51 darkwolf left
lichtkind jnthn: are you activly working on the vvm port? 20:52
i mean jvm
masak lichtkind: he is. but he's not back until late tonight or tomorrow.
lichtkind thanks 20:53
masak: any prognosis about that?
masak lichtkind: it's all on github, so you can inspect the progress yourself. 20:54
last I heard though, it's doing large parts of QAST now, but not yet nqp.
moritz my prognosis is: fun
lichtkind i currently do i just mean if there are any releasaedates 20:55
20:55 GlitchMr left
nwc10 Christmas! 20:55
masak lichtkind: Christmas! \o/
heh, great minds.
moritz masak: fwiw rt.perl.org/rt3/Ticket/Display.html?id=116314 is about the phasers not being put in sink context properly
masak oh!
moritz: show me your reasons for believing this. 20:56
(...and I'll add them to the ticket)
moritz masak: for loops are lazy, and only run in eager or sink context
masak ohrghgh! 20:57
moritz masak: so if normal statements are run, but for loops aren't, sink context is missing
masak adds this to the ticket
"Perl 6: we eliminated contexts, because they were too confusing" *rimshot* 20:58
diakopter <.<. 20:59
moritz nobody says we eliminated contexts in Perl 6 21:00
we just changed the way they propagate
masak my point still stands.
er, my ironic point.
moritz well yes, buggy context implementation is confusing. I don't challenge that point at all 21:01
21:01 sizz joined
moritz just like buggy lexicals are confusing 21:01
etc.
21:02 [particle]1 left
masak oh, buggy lexicals! yeah, this is nothing compared to that. 21:02
21:02 [particle] joined
masak thanks for the reminder :) 21:02
we still have an outstanding lexical bug, by the way. 21:04
r: sub foo ($a, $f) { if $f { foo('z', 0) }; given $a {say $a; say $_} }; foo('x', 1) 21:05
p6eval rakudo 60c572: OUTPUT«z␤z␤z␤x␤»
21:05 hash_table joined
moritz I know, I recently stumbled over it in RT 21:06
n: sub foo ($a, $f) { if $f { foo('z', 0) }; given $a {say $a; say $_} }; foo('x', 1)
p6eval niecza v24-16-g89e47b6: OUTPUT«z␤z␤x␤x␤»
21:14 hash_table left
diakopter p: sub foo ($a, $f) { if $f { foo('z', 0) }; given $a {say $a; say $_} }; foo('x', 1) 21:17
p6eval pugs: OUTPUT«z␤z␤x␤x␤»
moritz niecza++ 21:18
pugs++
21:19 kaare_ left 21:21 hash_table joined
diakopter rnp: sub foo ($a, $f) { if $f { foo('z', 0) }; { my $a = $OUTER::a; given $a {say $a; say $_} } }; foo('x', 1) 21:21
p6eval niecza v24-16-g89e47b6: OUTPUT«Potential difficulties:␤ $a is declared but not used at /tmp/UGzgEhPWIA line 1:␤------> sub foo (⏏$a, $f) { if $f { foo('z', 0) }; { my $a␤␤z␤z␤x␤x␤»
..rakudo e67fa9: OUTPUT«z␤z␤z␤z␤»
..pugs: OUTPUT«*** Undeclared variable: ("$OUTER::a",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0xf6e4fc89>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0xf6dbadc5>}),("@_",PELexical {pe_type = (mkType "Array"), pe_proto = <Array:…
diakopter rakudo ... um?
21:23 sizz left
diakopter masak: see that? rakudo gets it wronger 21:23
masak hm.
I wouldn't be surprised if that was all part of the same problem. 21:24
21:27 stevan_ left
diakopter r: sub foo (\foo, $f) { if $f { foo('z', 0) }; { my \foo = \OUTER::foo; given foo {say foo; say $_} } }; foo('x', 1) 21:28
p6eval rakudo e67fa9: OUTPUT«z␤z␤z␤z␤»
diakopter teehee
21:34 stevan_ joined 21:36 stevan_ left 21:38 sizz joined 21:40 hash_table left 21:54 colomon joined 21:59 thou left 22:00 fgomez left 22:13 fgomez joined
masak 'night, #perl6 22:40
tadzik good night 22:41
22:46 stevan_ joined 22:51 stevan_ left 23:17 Guest78034 left
lichtkind o/ good night @ all 23:17
23:18 lichtkind left 23:31 stevan_ joined 23:35 stevan_ left 23:43 stevan_ joined 23:44 stevan_ left 23:53 ismail_ left 23:58 pmurias left 23:59 ismail_ joined