»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:00 rom1504 joined 00:05 panchiniak left 00:11 geekosaur left, geekosaur joined 00:14 FROGGS joined 00:16 treehug88 left 00:20 pdcawley left 00:26 rurban left 00:29 kivutar left 00:39 thou left 00:42 thou joined 00:43 DarthGandalf left 00:44 pmurias_ left 00:48 thou left 00:53 DarthGandalf joined 00:56 rurban joined 01:00 jnap left, dayangkun left 01:07 pdcawley joined 01:11 ens_ left 01:12 pdcawley left 01:13 dayangkun joined, jnap joined 01:25 DarthGandalf left 01:29 rurban left, DarthGandalf joined 01:31 BenGoldberg joined 01:59 stevan__ joined 02:04 regreg2 left 02:05 regreg joined 02:09 cognominal__ joined, regreg2 joined 02:11 regreg left, kst` joined 02:12 japhb_ joined, itz__ joined 02:13 lizmat_ joined, djanatyn1 joined 02:14 xinming joined, [Sno]_ joined, FROGGS left, xenoterracide left, daniel-s left, genehack_ joined 02:15 raiph left, revdiablo left, Psyche^_ left, daxim left, itz left, cooper left, go|dfish left, nebuchadnezzar left, japhb left, nsh left, colomon left, djanatyn left, lizmat left, gfldex left, mattp__ left 02:16 nsh joined 02:17 go|dfish joined, jnap1 joined, kaare__ joined 02:18 Psyche^ joined, daniel-s joined, Colby` joined, eiro left, huf_ joined, skids1 joined, Ben_Goldberg joined, skids left, mavcunha left, xinming_ left, sunnavy left, cognominal left, jercos left, genehack left, kst left, labster left, Pleiades` left, huf left, synopsebot left, rhr left, Alula left, Colby` is now known as Pleiades` 02:19 rhr_ joined, daxim_ joined 02:20 FROGGS joined, FOAD left, gfldex joined, cooper joined, cooper left, cooper joined, itz joined 02:21 eiro joined 02:22 synopsebot joined, sunnavy joined, regreg2 left, BenGoldberg left, jnap left, sjohnson left, araujo left, kaare_ left, [Sno] left, ingy left, dalek left, itz_ left, Vlavv left, Khisanth left, rylinaux left, [Sno]_ is now known as [Sno] 02:23 hugme left, orevdiabl joined, huf_ left 02:24 exodist_ left, rhr_ left, mavcunha joined 02:25 daniel-s left 02:28 rurban joined 02:29 telex left, hugme joined, ChanServ sets mode: +v hugme 02:30 dalek joined, ChanServ sets mode: +v dalek 02:31 daxim__ joined 02:33 daxim_ left, Pleiades` left, jnap1 left, go|dfish left, nsh left 02:34 Vlavv joined, Colby` joined, Colby` is now known as Pleiades`, go|dfish joined 02:35 japhb__ left, ponbiki left 02:36 daxim__ left 02:37 d4l3k_ joined 02:38 FOAD joined, benabik joined, nsh joined, orevdiabl left, skids1 left 02:39 japhb joined, amkrankr1leuen left, amkrankruleuen joined, amkrankruleuen left, amkrankruleuen joined, jercos joined, skids joined 02:40 Khisanth joined, stevan_ joined, Khisanth is now known as Guest10512, dalek left 02:41 rhr joined, kst joined, FROGGS_ joined, d4l3k_ is now known as dalek 02:42 telex joined, labster joined 02:43 FROGGS left, ponbiki joined, mtk left 02:44 Exodist joined, cooper_ joined, Shozan joined, revdiablo joined, kshannon_ joined 02:45 xenoterracide joined, sunnavy_ joined 02:46 jnthn_ joined, grondilu_ joined, ponbiki left, hugme left, simcop2387_ joined 02:47 ponbiki_ joined, hugme joined, ChanServ sets mode: +v hugme 02:48 diakopter joined, diakopter left, ribasushi_ joined 02:49 CABFUWB joined, mavcunha left, sunnavy left, cooper left 02:50 [Sno] left, xinming left, djanatyn1 left, kst` left, stevan__ left, bluescreen10 left, simcop2387 left, jnthn left, bjz left, grondilu left, SHODAN left, salv0 left, logie_ left, yakudza left, ruoso left, aindilis left, Alina-malina left, kshannon left, ashleydev left, renormalist left, silug_ left, ribasushi left, simcop2387_ is now known as simcop2387, cooper_ is now known as cooper, ribasushi_ is now known as ribasushi, cooper left, cooper joined 02:51 daxim__ joined, mtk joined, ashleydev joined 02:52 xinming joined 02:54 FROGGS__ joined 02:56 FROGGS_ left 02:57 bluescreen10 joined 02:59 Alina-malina joined, yakudza joined 03:00 logie joined, rurban left, __rnddim__ joined, lizmat joined 03:03 daxim joined, bjz joined 03:04 ruoso joined, lue left, daxim__ left, Exodist left, jnthn_ left, lizmat_ left, djanatyn1 joined 03:07 Exodist joined 03:08 ruoso left, bluescreen10 left, pdcawley joined 03:09 ruoso joined, salv0 joined, jnthn joined 03:10 bluescreen10 joined 03:12 silug_ joined 03:13 pdcawley left, pecastro joined 03:29 huf joined 03:30 japhb_ left, japhb_ joined, go|dfish left, go|dfish joined
TimToady so, I guess everyone in the Americas is out partying tonight... 03:32
rjbs Out in my parts, they're all looking miserably out their windows. 03:34
03:35 __rnddim__ is now known as lue 03:51 btyler joined 04:00 Alula joined 04:06 rurban joined 04:09 pdcawley joined 04:10 ens joined 04:13 btyler left, pdcawley left 04:14 mattp__ joined 04:18 ingy joined 04:19 sjohnson joined 05:10 pdcawley joined 05:14 pdcawley left 05:22 SamuraiJack_ joined 05:38 bluescreen10 left 05:47 woosley joined 05:53 Ben_Goldberg left
daxim paste.scsys.co.uk/304593 Ambiguous call problem 05:55
am I doing something wrong?
06:00 darutoko joined 06:06 rurban left 06:11 pdcawley joined
raydiak daxim: I don't think return type is considered in any way for multi dispatch, only params...so it can't tell which one you want to call 06:13
lue yeah, only the signatures count. Besides, I don't think there exists a very sane way to use return types in MMD anyway. 06:15
06:15 pdcawley left
daxim this means I have to make a different name for each type 06:16
next problem: paste.scsys.co.uk/304605 expected 'Array[Int]' but got 'Array' 06:21
06:22 xinming_ joined, xinming left
raydiak not sure, but I think something about typed arrays is not done yet...getting rid of [Int] will probably fix it 06:26
daxim that's not a fix, but papering over a shortcoming (if typed arrays are really not done yet) 06:27
lue daxim: return [4,5,6]; says nothing about the type of Array, despite how obvious it is to you :)
daxim okay, does that mean I have to help out the system in determining that? 06:28
if yes, how? I already tried [Int(4), …]
lue r: my @a is Array[Int] = 1,2,3; say @a.perl; say @a.WHAT; 06:29
camelia rakudo-moar 0d2b68: OUTPUT«use of uninitialized value of type Any in string context␤Unhandled exception: No exception handler located for warn␤ at <unknown>:1 (/home/p6eval/rakudo-inst-2/languages/perl6/runtime/CORE.setting.moarvm:print_exception:4294967295)␤ from src/gen/m…»
..rakudo-jvm 0d2b68: OUTPUT«use of uninitialized value of type Any in string context␤Unhandled exception: use of uninitialized value of type Any in string context␤ in warn (gen/jvm/CORE.setting:677)␤ in warn (gen/jvm/CORE.setting:673)␤ in Str (gen/jvm/CORE.setting:1023)␤ …»
..rakudo-parrot 0d2b68: OUTPUT«use of uninitialized value of type Any in string context in any throw at src/Perl6/World.nqp:2442␤␤use of uninitialized value of type Any in string context␤===SORRY!=== Error while compiling /tmp/tmpfile␤Can't use unknown trait…»
Timbus dispatch based on return type. oh boy 06:30
lue daxim: anything more complex with arrays and such, such as shaping or typing, is barely implemented if at all at the moment :( It's easiest to just go with Array instead of Array[Int] right now
daxim a meta observation: how come that always the first thing I try does not work? next year, surely, will be the year of desktop linux^W^Wperl6 06:32
lue daxim: depends on what type of stuff you're doing. :) S09 is one of the really weak spots at the moment. 06:33
06:40 grondilu_ is now known as grondilu, grondilu left, grondilu joined 06:43 Guest10512 is now known as Khisanth 07:00 telex left 07:02 telex joined 07:06 rurban joined 07:11 pdcawley joined, rurban left 07:16 pdcawley left 07:20 FROGGS__ left 07:24 sqirrel joined 07:33 FROGGS__ joined, FROGGS__ is now known as FROGGS
FROGGS jnthn: I have a curiosity, and I'm sure you won't like it 07:35
07:36 nebuchadnezzar joined
FROGGS jnthn: when trying to run panda's bootstrap.pl using perl6-m, it hangs in Perl6::ModuleLoader when trying to compile Panda::Ecosystem 07:36
jnthn: however, when I add DEBUG() statements, it does not hang, but complains (correctly) about "When pre-compiling a module[...]" 07:37
which scares me a bit
07:44 kaleem joined 07:47 erkan joined 07:52 chayin joined 07:55 salv0 left 07:56 chayin left
b^_^d /win 12 07:58
07:59 sqirrel left 08:01 xenoterracide left 08:08 rurban joined 08:10 djanatyn1 left, djanatyn1 joined, Biohazard left, salv0 joined, jercos left, zakharyas joined 08:11 jercos joined 08:12 pdcawley joined, kaleem_ joined 08:13 simcop2387 left, JimmyZ left, pdcawley left, kaleem left 08:14 pdcawley joined, pdcawley left, Alina-malina left 08:15 sunnavy_ left, sjn left, Alina-malina joined 08:16 simcop2387 joined, sunnavy joined, sjn joined, Biohazard joined 08:21 JimmyZ joined 08:22 Biohazard left 08:23 dagurval left, dagurval joined 08:26 JimmyZ left, crazedpsyc joined, JimmyZ joined 08:27 anocelot left, anocelot joined 08:28 Biohazard joined 08:30 denis_boyun joined, sqirrel joined 08:39 SamuraiJack joined, SamuraiJack_ left 08:41 rurban left 08:44 dmol joined 08:46 pdcawley joined, pdcawley left 09:11 Funkwecker joined 09:13 SamuraiJack left 09:14 sqirrel left 09:27 xinming_ left
jnthn r: my Int @a = 1,2,3; sub foo(Int @x) { say 'ok' }; foo(@a) 09:30
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«ok␤»
jnthn r: sub foo(Int @x) { say 'ok' }; foo(Array[Int].new(1,2,3)) 09:31
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«ok␤»
jnthn daxim: ^^ is the right way. They are *nominally* typed. 09:32
daxim: Using a feature wrongly and then saying it doesn't work is kinda silly. 09:33
09:34 dakkar joined, fhelmberger joined
FROGGS jnthn: do you see my msg from two hours ago? 09:34
moritz that said, there are lots of corners where typed arrays don't behave well 09:35
jnthn moritz: There are, and I'm sure for newcomers it can be a surprise that typed arrays are nominally typed... 09:36
But folks saying "oh, they're not implemented yet" in response to a program that, even if we implemented all of S09, would still be incorrect, is unhelpful. 09:37
09:37 rurban joined
jnthn FROGGS: Yeah, but I ain't gonna be able to look into it today 09:38
09:38 pdcawley joined
FROGGS jnthn: you are not supposed to look into that 09:38
09:38 pdcawley left
FROGGS you should just say "wth" :o) 09:38
jnthn FROGGS: wth!!??!!! 09:39
moritz jnthn: agreed
FROGGS :o) 09:40
jnthn FROGGS: Sadly, I've no even any guesses on that.
FROGGS: Unless it's some odd exception-y thing
But I kinda hope not. :) 09:41
FROGGS I will debug it further today and will keep you updated once I know more
jnthn k 09:42
jnthn digs into writing the code so he can make the slides so he can give the talk...
FROGGS so he will be famous \o/ 09:43
ohh, wait...
jnthn heh 09:49
10:12 rurban left 10:25 lizmat left 10:27 lizmat joined 10:32 denis_boyun left, clkao_ is now known as clkao 10:40 woolfy joined
grondilu rn: say (1 + *)(2); 10:40
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68, niecza v24-109-g48a8de3: OUTPUT«3␤»
grondilu rn: say .(2) for (1, 2) X+ * 10:41
camelia niecza v24-109-g48a8de3: OUTPUT«3 4␤»
..rakudo-moar 0d2b68: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤ in method Numeric at src/gen/m-CORE.setting:1010␤ in sub infix:<+> at src/gen/m-CORE.setting:3996␤ in sub infix:<+> at src/gen/m-CORE.setting:3994␤ in block at src/gen/m…»
..rakudo-jvm 0d2b68: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤ in any at gen/jvm/BOOTSTRAP.nqp:1212␤ in any at gen/jvm/BOOTSTRAP.nqp:1202␤ in method Numeric at gen/jvm/CORE.setting:1010␤ in sub infix:<+> at gen/jvm/CORE.setting:3996…»
..rakudo-parrot 0d2b68: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤ in any at gen/parrot/BOOTSTRAP.nqp:1219␤ in any at gen/parrot/BOOTSTRAP.nqp:1210␤ in method Numeric at gen/parrot/CORE.setting:1013␤ in sub infix:<+> at gen/parrot/CO…»
grondilu rn: say .WHAT given 1 + 1/Inf 10:47
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«(Num)␤»
..niecza v24-109-g48a8de3: OUTPUT«Num()␤»
grondilu would have been happy with a Rat 10:52
10:57 woolfy left 10:59 woosley left 11:00 kurahaupo_mobile joined 11:03 lizmat left
grondilu std: my $x = 2; $x [R/]= 1; say $x; 11:06
camelia std 09dda5b: OUTPUT«ok 00:01 125m␤»
grondilu rn: my $x = 2; $x [R/]= 1; say $x; 11:07
camelia niecza v24-109-g48a8de3: OUTPUT«0.5␤»
..rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Preceding context expects a term, but found infix = instead␤at /tmp/tmpfile:1␤------> my $x = 2; $x [R/]=⏏ 1; say $x;␤»
11:07 regreg joined 11:10 kurahaupo_mobile left 11:32 ingy left, ingy joined 11:38 revdiablo left, denis_boyun joined 11:39 revdiablo joined 11:52 jtpalmer left 11:53 ivan`` left 11:55 yoleaux left, jtpalmer joined 11:59 ivan`` joined
timotimo grondilu: rats have integers as their nom and denom, how are they supposed to store an inf in one of these? :( 12:05
FROGGS: can you use gdb?
maybe my gdb python scripts will be of a bit of assistance? 12:06
FROGGS timotimo: I think Int is specced to be able to store Inf as well 12:07
timotimo: I can use gdb, yes
but I am not sure for what I'd need gdb right now :o)
timotimo if i build a frame filter that shows the current file and line of the interpreter in the backtrace 12:08
would that help?
FROGGS I try that perhaps this evening, when I know where I will start looking 12:10
corecatcher slaps timotimo 12:30
grondilu timotimo: I meant that */Inf could return 0.Rat instead of 0.Num 12:35
rn: say .WHAT given 1/Inf
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«(Num)␤»
..niecza v24-109-g48a8de3: OUTPUT«Num()␤»
timotimo oh. huh. 12:37
corecatcher: "you must log in with services to message this user" 12:40
12:42 SamuraiJack joined
timotimo corecatcher: check your status window, i sent you an irc invite 12:48
12:57 yoleaux joined, ChanServ sets mode: +v yoleaux 13:02 Ven joined 13:04 regreg left, regreg joined 13:08 spider-mario joined
Ven omfg spider-mario est un perl6-eur :o 13:23
spider-mario pourquoi cette surprise ? 13:24
Ven je sais pas, ca me fait juste rire de voir des pseudo d'il y a longtemps
mais oui tant mieux :) 13:25
Util r: my $a = 3; say ++$a; 13:33
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«4␤»
Util r: my int $a = 3; say ++$a; 13:34
camelia rakudo-moar 0d2b68: OUTPUT«No such method 'STORE' for invocant of type 'Int'␤ in sub prefix:<++> at src/gen/m-CORE.setting:4344␤ in sub prefix:<++> at src/gen/m-CORE.setting:1758␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 0d2b68: OUTPUT«Cannot modify an immutable value␤ in sub prefix:<++> at gen/parrot/CORE.setting:4348␤ in sub prefix:<++> at gen/parrot/CORE.setting:1762␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-jvm 0d2b68: OUTPUT«Cannot modify an immutable value␤ in sub prefix:<++> at gen/jvm/CORE.setting:4344␤ in sub prefix:<++> at gen/jvm/CORE.setting:1758␤ in block at /tmp/tmpfile:1␤␤»
Util ???
r: my int $a is rw = 3; say ++$a; 13:35
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Can't use unknown trait 'is rw' in a variable declaration.␤at /tmp/tmpfile:1␤------> my int $a is rw ⏏= 3; say ++$a;␤ …»
13:37 eviljonny joined 13:38 nsh left 13:39 sftp left
timotimo Util: known deficiency :( 13:40
jnthn $a + 1
or $a = $a + 1
13:41 sftp joined
timotimo += 1 will work, too 13:42
it will also work inside expressions
r: my int $a = 1; say ($a += 1) * ($a += 1)
camelia rakudo-moar 0d2b68: OUTPUT«No such method 'STORE' for invocant of type 'Int'␤ in block at src/gen/m-CORE.setting:16455␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-jvm 0d2b68: OUTPUT«Cannot modify an immutable value␤ in block at gen/jvm/CORE.setting:16458␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 0d2b68: OUTPUT«Cannot modify an immutable value␤ in block at gen/parrot/CORE.setting:16705␤ in block at /tmp/tmpfile:1␤␤»
timotimo oh 13:43
r: my int $a = 1; say ($a = $a + 1) * ($a = $a + 1)
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«6␤»
timotimo hm, so it's pre-increment always
that makes sense
13:43 BenGoldberg joined
jnthn The issue is simply that we need a way to refer to natives container-style, *but* that we can also inline away in the common cases (like ++), otherwise we'll end up with $a++ being a load slower than $a = $a + 1... 13:44
...so it's one of those annoying "harder than it looks" problems. 13:46
13:46 rurban joined
FROGGS to its defense it would be easy to fix this wrongish 13:48
13:48 eviljonny left 13:51 genehack_ left 13:53 genehack joined 14:03 jnap joined
Util timotimo, jnthn, FROGGS: Thanks! 14:06
14:12 kbaker joined
[Coke] moritz: planeteria.org/perl6/ has been updated. Give it a few hours to refresh, i guess. 14:12
14:16 grondilu left
timotimo thank you, [Coke] 14:17
you can also remove Konrad Borowski from the subscriptions, as that just 404s nowadays :( 14:18
14:21 johnmilton joined 14:29 xenoterracide joined 14:32 regreg left, colomon joined
[Coke] timotimo: removed. again, may take some time for the UI to reflect. 14:36
timotimo sure 14:37
thank you
14:42 xinming joined
TimToady FROGGS: not only would it be easy to fix wrongish, but C and JVM have very different ideas of what is "wrongish" 14:43
Gosling once told me that he intentionally designed the JVM to make it impossible to implement C on it
14:43 rurban left
mathw I can see why he'd take that approach 14:45
Although I take issue with the word 'impossible'. Maybe impossible to implement C in a way that runs at a decent speed... 14:46
14:46 PZt left
mathw But getting away from a variety of C-ish things is a primary driver in my choice of programming languages these days. So long, C++... 14:47
tadzik I think the pointer arithmetic itself may be quit impossible
as in: take a pointer to this struct and call whatever's 4 bytes further 14:48
14:48 benabik left
mathw tadzik: nonsense, you can simulate a memory layout for all your variables in a byte array 14:48
tadzik oh, heh
I guess
timotimo time for ASM.jar 14:49
oh, wait, that already exists
mathw Not very practical I'll grant you, but it's *possible*
tadzik well, if you get creative enough, you can write an x86 emulator and then a compiler for it :)
mathw s/creative/masochistic/
tadzik and then turtles all the way down
14:49 bluescreen10 joined
mathw surely it'd be easier to write an ARM emulator 14:49
and then just use GCC
14:50 benabik joined
mathw (yes you could use GCC with your x86 emulator, but ARM's instruction set is smaller) 14:51
timotimo mips!
14:53 btyler joined
jnthn
.oO( many instructions per second? )
14:53
14:54 SamuraiJack left, xinming left
mathw A friend of mine's developing a microarchitecture in his spare time, I could use that 14:54
...well, maybe after it's Turing-complete, not sure it is yet 14:55
timotimo doesn't take much :))
[Coke] anyone working on rakudo-turing ?
jnthn mathw: Well, x86 showed that if you design...well...enough, you can end up with a single instruction being Turing-complete :P 14:56
mathw jnthn: for some value of 'well', sure... 14:57
14:59 PZt joined 15:04 rurban joined 15:06 xinming joined 15:10 araujo joined 15:21 pdcawley joined, pdcawley left 15:29 bluescreen10 left
timotimo gist.github.com/timo/544d3d75bd92932e635d - current status of my moarvm heap analyzer 15:36
15:39 kaare_ joined
tadzik goo.gl/JN71PV stables :) 15:40
15:40 kaare__ left, thou joined
tadzik timotimo++ # awesome stuff 15:40
15:47 btyler left
[Coke] timotimo++ 15:57
15:59 Psyche^_ joined 16:03 Psyche^ left, clkao left 16:05 clkao joined 16:12 salv0 left 16:14 xfix left 16:15 kaleem_ left, denis_boyun left 16:17 xfix joined
hoelzro timotimo++ # nice! 16:19
hoelzro is back
FROGGS wb hoelzro
hoelzro .tell btyler I did a little work on using ufo with different backends; let me know if you encounter any surprises
yoleaux hoelzro: I'll pass your message to btyler.
hoelzro thanks yoleaux! 16:20
16:26 sqirrel joined, kivutar joined 16:27 pecastro left 16:31 btyler joined
btyler hoelzro: no surprises, your ufo fork was just what I was looking for. the vm autodetection is a nice touch :) 16:36
yoleaux 16:19Z <hoelzro> btyler: I did a little work on using ufo with different backends; let me know if you encounter any surprises
16:36 lowpro30 joined
hoelzro btyler: glad you could make use of it =) 16:36
FROGGS is there a PR for masak/ufo ?
hoelzro FROGGS: yes 16:40
FROGGS hoelzro++ 16:41
16:42 xenoterracide left
timotimo except for "analyze the gen2, too" and "diff between two statistics", what else should i try to put into the heap analyzer? 16:45
16:47 zakharyas left
TimToady tell me which pointer I should've freed earlier to release a bunch of memory? 16:48
16:48 kaleem joined
TimToady I guess what would really be interesting to know (and hard to calculate) is how long we held onto each pointer after the last time any of its dependents was accessed 16:50
16:52 kaleem left
TimToady and things like how often we hang onto an entire list when we'll never visit the head again 16:52
16:57 telex left 16:58 treehug88 joined
FROGGS ha! 16:59
I know what's wrong with panda 17:00
NOTHING!
17:00 guru joined
FROGGS dir() is supposed to return absolute paths, and it does not 17:00
17:00 guru is now known as Guest84573, Guest84573 is now known as ajr_
FROGGS so panda descends into its own lib and tries to install itself when it should build/install ext/File__Find/lib 17:01
17:02 lowpro30 left, denis_boyun joined 17:03 telex joined
timotimo i'm progressively getting sicker :\ 17:03
FROGGS :/
17:04 nsh joined, lizmat joined
timotimo i shall drive home and wrap myself up in blankets 17:04
but first i shall acquire some tea 17:05
17:05 panchiniak joined
FROGGS and perhaps buy some drugs 17:05
17:05 panchiniak is now known as Desu, Desu is now known as DEUSU
timotimo i have some left at home 17:06
i have some with me right now! \o/
17:06 DEUSU is now known as panchiniak
FROGGS \o/ 17:06
take all the things! /o/
dalek nda/moar-support: 53b1d41 | (Tobias Leich)++ | lib/Panda/Fetcher.pm:
fix "my" stupidness
17:08
17:13 nsh left 17:14 fhelmberger left
btyler FROGGS: I'm still seeing a hang on building lib/Panda/Ecosystem.pm on the panda moar-support branch, like you mentioned the other day. is that a different problem? 17:16
FROGGS btyler: it is a different problem but I am sure it will vanish
(at least it will be hidden)
==> Successfully installed File::Find \o/ 17:18
that is its local checkout, but still
17:19 denis_boyun_ joined
FROGGS - $elem := $.SPEC.catfile($!path, $elem) if self.is-relative && self ne '.'; 17:19
+ $elem := $.SPEC.catfile($!path, $elem) if self ne '.';
that is the patch btw in rakduo/src/core/IO.pm
commute & 17:20
17:21 denis_boyun left 17:26 FROGGS left 17:29 denis_boyun joined, denis_boyun_ left 17:33 denis_boyun__ joined 17:34 denis_boyun left 17:38 denis_boyun__ left 17:39 FROGGS joined 17:40 pdcawley joined 17:41 pdcawley left 17:42 FROGGS_ joined 17:43 denisboyun joined 17:44 FROGGS left
timotimo TimToady: what you wished for with regards to the pointers sounds pretty hard from my point of view; i don't exactly have a ways to follow moving objects around 17:47
BenGoldberg gps tracking! ;) 17:48
17:48 denisboyun left
timotimo well, one could introduce an extra field to MVMObject that is just a counter that the allocator counts up every time it allocates any object 17:50
that way you'd have a global identifier
17:51 denisboyun joined 17:54 nsh joined, nsh left, nsh joined 17:56 woolfy joined 18:01 dakkar left, ens left 18:03 bjz left 18:04 bjz joined 18:06 arnsholt joined
arnsholt O hai! o/ 18:06
timotimo hey arnsholt! 18:08
how's life?
18:09 denisboyun left
sjn arnsholt: heya 18:10
18:10 sqirrel left
arnsholt Life's good. Teaching, thesis writing 18:13
Trying to get callbacks working on JVM
timotimo time to start with diffing the histograms
sjn arnsholt: sent you mail about dconway in Oslo \o/
arnsholt I think I'm mostly there, but JNA keeps yelling at me for some reason
sjn: Cheers!
timotimo d'oh :(
arnsholt Yeah, 'tis a bit annoying 18:15
timotimo finally signs up for GPW2014
i ought to do something 6y there 18:23
18:24 Adriaaan joined 18:25 ens joined 18:27 pecastro joined 18:34 treehug88 left 18:35 [particle]1 joined 18:36 treehug88 joined 18:38 [particle] left
hoelzro think I found a mokudo bug 18:38
r: printf '%s - %s'
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«Too many directives: found 2, but no arguments after the format string␤␤»
hoelzro hmm 18:39
it infinite loops on my machine
timotimo REPL? 18:42
18:45 FROGGS_ is now known as FROGGS
raydiak morning #perl6 18:45
timotimo hey raydiak
raydiak hiya timotimo 18:46
FROGGS ==> Successfully installed panda
timotimo \o/
FROGGS :o)
raydiak w/moar?
timotimo that's the implication
raydiak hooray :)
a question came to mind last night: what happens if you inherit from multiple classes with different reprs? 18:47
timotimo i can't imagine how that would be supported 18:48
raydiak r: class Foo is Array is Str {}; say Foo.new.REPR 18:49
camelia rakudo-parrot 0d2b68, rakudo-jvm 0d2b68, rakudo-moar 0d2b68: OUTPUT«P6opaque␤»
hoelzro timotimo: yes
FROGGS++
raydiak erm, well...what uses a repr other than p6opaque? 18:50
timotimo nothing, afaict
oh 18:51
well CStruct if you do NativeCall
raydiak thought I remembered reading about several different reprs somewhere, but can't recall...perhaps I'm imagining issues which don't exist
eg P6Hash, etc 18:52
timotimo no, that would be VMArray and VMHash
18:52 SamuraiJack joined, raiph joined
timotimo they are wrapped by a P6opaque if you're in perl6 and exposed directly if you're in nqp 18:52
FROGGS m: say nqp::list.REPR.name
camelia rakudo-moar 0d2b68: OUTPUT«Cannot find method 'name': no method cache and no .^find_method␤ in block at /tmp/fmi6JwoAqv:1␤␤»
18:55 tgt joined, jnap left
raydiak can you create a class which can act as (for example) an array or a string? I guess that'd just be an array with an overloaded .Str method? 18:59
timotimo not necessarily
you may want to just have an attribute that is box_target
raydiak what is box_target? 19:00
timotimo it tells P6opaque where to put native strings/ints/doubles
19:01 jnap joined
timotimo you just have to write "has int $foo is box_target;" i think 19:01
raydiak oh neat
19:02 woolfy left
dalek kudo/nom: 1ce379e | (Tobias Leich)++ | src/core/IO.pm:
fix result of dir()

This confuddled panda so much, that it tried to installed itself rather then the requested module.
19:03
FROGGS er, s/installed/install/ 19:04
-.-
19:04 kaare_ left 19:05 Rotwang joined 19:06 lizmat left
raydiak FROGGS++ 19:06
19:09 Sqirrel joined
colomon FROGGS++ # panda on moar 19:11
FROGGS well, it says that it installed itself correctly, but this seems to be a lie 19:12
btyler yeah, it misses the executable, at least for me
FROGGS there is only the site/lib/panda/state, nothing else 19:13
19:15 darutoko left 19:17 SamuraiJack left
FROGGS hmpf, panda installs to panda/.work/<mumble>/home/froggs/dev/panda/... 19:18
timotimo heh, oops :) 19:19
hoelzro this code:
.say for @modules>>.name.chars;
is functionally equivalent to .name.chars.say for @modules, right?
timotimo no
it calls .chars on the result of @modules.map: *.name
so it calls .chars on the list, not the individual items 19:20
hoelzro ooooooooooohhhhhhhh
that explains this obscenely large value
thanks timotimo
timotimo and also that you only get one value :)
hoelzro so @modules>>.name>>.chars, then? 19:21
timotimo yeah
19:21 zakharyas joined 19:26 rurban left
TimToady timotimo: I wasn't seriously suggesting you do that; it was just wishing for a pony 19:27
timotimo maybe someone will at some point 19:28
or someone will offer me a big sum of money :)
TimToady hopes timotimo++ isn't coming down what whatever TimToady has, which has so far lasted 18 days... 19:31
timotimo probably not. scratchy throat, runny nose, achey head
seems like a regular old flu
with unfortunate timing
arnsholt Right, at least now I know *why* JNA is complaining 19:33
Next step, how to implement it without codegenning ALL THE THINGS... 19:34
19:35 lue left 19:50 sftp left
arnsholt Right, I think I can make this work. But that'll be tomorrow methinks 19:50
19:51 virtualsue joined
tadzik FROGGS++ (wizard) 19:51
FROGGS *g*
arnsholt tadzik: With a bit of luck I'll have callbacks working tomorrow or during the weekend. Your asteroids game/SDL stuff still potentially a user for it? =) 19:52
timotimo \o/
arnsholt: can i do anything to help you get a quick start with nativecall on moarvm?
tadzik arnsholt: 'fcourse! What's more, I'm in Oslo next week :) 19:53
19:53 sftp joined
hoelzro alright, #perl6 folk! I updated my "Rakudo * modules on Mokudo" gist, now with more accurate results! gist.github.com/anonymous/8982533 19:54
TimToady hoelzro++ 19:55
19:55 tgt left
hoelzro \o/ 19:55
arnsholt timotimo: You can start implementing stuff, if you want to
hoelzro I also prettified the summary
and I included the script I wrote to generate the results
timotimo arnsholt: that seems like a daunting thing to ask of me :P 19:56
hoelzro a good next step would probably be to go through everything on modules.perl6.org
arnsholt timotimo: It's mostly a question of de-Parrotifying the Parrot version, so in one way less complicated than the JVM bits
timotimo hmm 19:57
arnsholt But I think following the path I've taken on JVM should be sound for the Moar version as well
timotimo what file(s) would you point me at in order to get a good overview?
arnsholt The ops, in src/vm/parrot/ops/nqp_dyncall.ops, and the NativeCall REPRs (CArray, CPointer, CStr, CStruct, NativeCall) 19:58
timotimo ISTR not_gerd doing a lot of work on c structure support 19:59
arnsholt Yeah, he did a lot
timotimo i don't really know where that is/went and i haven't seen him online in a long time
arnsholt But he started changing lots of the internal structures, so I'm not sure how much of that stuff fits into the expectations of NativeCall as it is today
20:00 sftp left, sftp joined
arnsholt There are two ops that are needed to implement most of the things: nqp::buildnativecall and nqp::nativecall 20:00
tadzik yeah, not_gerd mysteriously disappeared :(
I hope he's alright 20:01
arnsholt So if you set up those two ops in NQP/Moar, and start building the int/num/string stuff, we're well on our way
timotimo probably swallowed up by finishing his university stuff?
tadzik I'd love to see stuff on JVM, because parallel GC
arnsholt After that, we can start moving the REPRs over and plugging them into the ops
FROGGS omfg /o\ 20:02
tadzik Seeing Parrot taking 200ms to render a frame because GC demotivated me a bit :)
arnsholt Hehe, I can see how that'll happen, yeah
timotimo i should build buildnativecall and nativecall and *then* build the reprs?
that seems backwards to me right now
arnsholt Yeah
FROGGS the million dollar question: what (the hell!) is wrong here? github.com/tadzik/panda/blob/moar-...der.pm#L88
arnsholt int/num/string arguments don't need custom reprs
Which means that you can ignore the REPRs while you get the basic infrastructure working 20:03
timotimo ah, ok
i suppose the test suite will give me a bunch of simple things to try out at first?
arnsholt That functionality is exercised by the first three test files in NativeCall 20:04
Yeah
01-argless.t, 02-simple-args.t and 03-simple-returns.t
Then there's one each for arrays, structs, pointers, and callbacks, and 07-writebarrier.t (which is a terrible name) which tests a third op which can ignore for now 20:05
tadzik: When're you in Oslo next week, BTW? 20:06
20:07 [Sno] joined
FROGGS Compiling lib/Panda.pm to mbc 20:07
===SORRY!===
STable conflict detected during deserialization.
ó.ò
arnsholt timotimo: Oh, and on Moar you don't have to do any codegeneration =)
timotimo oh!
that sounds helpful :) 20:08
arnsholt There's computing struct layouts OTOH, but that can pretty much be stolen outright from Parrot =)
timotimo FROGGS: that error seems to pop up *every*where nowadays :\
FROGGS timotimo: yeah, I was able to work around it in v5 though
arnsholt Codegen is required on JVM since we're a bit further away from raw bytes there
timotimo right 20:09
FROGGS r: "abc" ~ "def" or say(42) 20:11
btyler FROGGS: I hit that when I tried to manually install panda using ufo :(
camelia rakudo-jvm 1ce379: OUTPUT«(timeout)»
( no output )
timotimo j: say "hi"
FROGGS btyler: yeah, now you don't even need ufo for that :P
camelia rakudo-jvm 1ce379: OUTPUT«hi␤»
20:11 tgt joined
FROGGS r: shell "abc" ~ "def" or say(42) 20:11
camelia rakudo-jvm 1ce379: OUTPUT«42␤»
..rakudo-parrot 1ce379, rakudo-moar 1ce379: OUTPUT«shell is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:2␤ in sub shell at src/RESTRICTED.setting:7␤ in block at /tmp/tmpfile:1␤␤»
btyler FROGGS: progress! now we can get our errors automatically :)
FROGGS r: shell "ls" or say(42)
camelia ( no output )
..rakudo-parrot 1ce379, rakudo-moar 1ce379: OUTPUT«shell is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:2␤ in sub shell at src/RESTRICTED.setting:7␤ in block at /tmp/tmpfile:1␤␤»
20:12 Sqirrel_ joined, Sqirrel left 20:14 rurban joined
dalek nda/moar-support: 3793174 | (Tobias Leich)++ | lib/Panda/Fetcher.pm:
properly clean up the path

Before it was kind of a no-op, since the methods are not called when written this way in a regex.
20:14
nda/moar-support: 20bd234 | (Tobias Leich)++ | lib/Panda/Builder.pm:
call shell() with cmd only, and fail() on its result
FROGGS btyler: do you have any clue what causes the STable conflict?
20:15 pdcawley joined, pdcawley left
btyler FROGGS: not in the slightest. I got about as far as finding where that error is thrown in Moar src (src/6model/serialization.c 2059), and my eyes glazed over a bit 20:15
FROGGS yeah, I am more wondering what in panda makes it pop up 20:16
20:17 pdcawley joined, pdcawley left
hoelzro [commentary on my Perl 6 style would also be welcome =)] 20:18
20:19 pdcawley joined, pdcawley left
tadzik arnsholt: tuesday-friday 20:20
20:21 lue joined
tadzik FROGGS: well, it's creating directories so it can copy stuff inside them later. I guess... 20:21
oh, #88...
well, isn't it self-explanatory? :) 20:22
20:23 ajr_ left
FROGGS tadzik: it is, but also fails 20:31
tadzik how so?
FROGGS it does not fail with the parens though, due to some weirdness
segomos did async stop working with jvm? 20:32
timotimo it's now called "start" 20:37
... er, is that correct?
segomos ahh that is working, thank you 20:41
PerlJam segomos: see jnthn.net/papers/2013-npw-conc.pdf 20:42
20:46 rurban left
segomos thanks, familiar with these from nodejs, this way of doing it looks far more intuitive. haven't screwed around with it since the word was 'async' 20:49
this doc is p good
thanks jnthn
and perljam
hoelzro so Mokudo gives me "Malformed UTF-8" when trying to decode the URI-encoded version of 'ǂ' 20:50
I take it MoarVM is missing some Unicode information?
timotimo hm. i wonder what exactly it's trying to do 20:52
what does the uri-encoded version look like? %1234?
20:52 xenoterracide joined
hoelzro %c7%82 20:52
well, %C7%82 20:53
also, I get a fun error when loading URI from blib/lib/URI.moarvm versus lib/URI.pm
FROGGS r: say 'ǂ'
timotimo huh, interesting.
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«ǂ␤»
FROGGS r: say "\c[C7,82]" 20:54
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Unrecognized character name C7␤at /tmp/tmpfile:1␤------> say "\c[C7⏏,82]"␤»
FROGGS r: say "\x[C7,82]"
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«Ç␤»
TimToady r: say Buf.new(0xC7,0x82).decode("UTF-8") 20:55
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«ǂ␤»
FROGGS hoelzro: what is the funny error btw?
the STable thing is not funny btw :P 20:56
hoelzro FROGGS: it's in the gist I posted earlier 20:58
gist.github.com/anonymous/8982533 20:59
URI.txt
FROGGS this I guess: gist.github.com/anonymous/8982533#...ri-txt-L25 21:00
hoelzro yes 21:01
21:01 dayangkun left
FROGGS r: my %default_port = ( ftp => 21 ); say %default_port{'ftp'}.Int // Int; 21:02
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«21␤»
FROGGS r: my %default_port = ( ftp => 21 ); say %default_port{'hurz'}.Int // Int;
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«No such method 'Int' for invocant of type 'Any'␤ in block at /tmp/tmpfile:1␤␤»
hoelzro offending line in URI (the malformed UTF-8 issue): @rc.=map(*.encode('latin-1').decode('UTF-8')) 21:03
anyone know why the encode to latin-1?
TimToady because otherwise it's a string, not a buffer 21:04
FROGGS r: package P { my %dp = ( ftp => 21 ); our sub sp(Str $scheme) { %dp{$scheme}.Int // Int } }; P.sp('hurz') # <--- jnthn
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379: OUTPUT«No such method 'sp' for invocant of type 'P'␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-moar 1ce379: OUTPUT«Cannot invoke null object␤ in block at /tmp/tmpfile:1␤␤»
FROGGS ohh, wait
timotimo should it have been :: instead? 21:05
or did you want to import P?
21:05 araujo left
timotimo and now: hilbert curves! 21:05
hoelzro ah ha
TimToady: why Latin-1, though? 21:06
TimToady to get all eight bits through, presumably--it's just an alias for iso-8859-1
it just changes the interpretation of the high bits from latin-1 to utf-8 without actually changing the bits 21:07
21:08 guru joined, guru is now known as ajr_
FROGGS r: package P { my %dp = ( ftp => 21 ); our sub sp(Str $scheme) { %dp{$scheme}.Int // Int } }; say P::sp('ftp') # I dunno why URI fails 21:09
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«21␤»
21:13 Rotwang left 21:25 dayangkun joined 21:29 lowpro30 joined 21:30 spider-mario left 21:34 lowpro30 left 21:35 renormalist joined
dalek q: 12e4f15 | (Prog Rammer)++ | answers.md:
time -> type fix
21:37
q: 0a89f7c | (Prog Rammer)++ | answers.md:
creates -> created
q: cd82896 | (Brent Laabs)++ | answers.md:
Merge pull request #2 from prammer1/minor-fixes

Minor fixes (look good to me)
21:42 lizmat joined 21:44 rurban joined
dalek nda/moar-support: a1ab2f6 | (Tobias Leich)++ | lib/Panda/Fetcher.pm:
use IO::Spec.catpath to make windows happy
21:47
timotimo gist.github.com/timo/544d3d75bd92932e635d <- moarvm heap analyzer now with a proper diff at the bottom 21:48
21:49 lowpro30 joined
timotimo (except the diff ought to be in the other direction, but that was easy to fix just now) 21:49
updated with diff in the right direction 21:54
FROGGS tadzik: ping 21:55
timotimo ← now ready to receive praise
benabik timotimo++ 21:56
timotimo thanks :)
FROGGS timotimo: what do all these numbers mean? :o) 21:57
some of them must be counts and the size in bytes
21:57 zakharyas left
timotimo that's right 21:58
FROGGS sizes of objects/stables:
24 [ 1 24
32 [========================= 15497 495.904
timotimo if there's two columns, the right one is for size in bytes, the left for count
24 * 1 = 24 :)
FROGGS I see
timotimo++ then :o)
timotimo i think i shall push this now. 21:59
22:00 dalek left, dalek joined, ChanServ sets mode: +v dalek
FROGGS File::Find's tests are not where windows friendly :/ 22:02
22:07 aindilis joined, arnsholt left
hoelzro timotimo: holy crap, that's awesome work 22:12
timotimo thanks :3
22:13 djanatyn1 is now known as djanatyn 22:24 araujo joined
raydiak whoa, nice; timotimo++ 22:29
hoelzro r: "\x[C7,82]".encode('latin-1') 22:32
camelia ( no output )
hoelzro r: say "\x[C7,82]".encode('latin-1')
camelia rakudo-moar 1ce379: OUTPUT«Buf:0x<c7 3f>␤»
..rakudo-parrot 1ce379, rakudo-jvm 1ce379: OUTPUT«Buf:0x<c7 82>␤»
timotimo oh well :o
hoelzro that's what's breaking mokudo + URI
(well, aside from the blib loading)
22:37 kaare_ joined 22:38 tgt left 22:41 kbaker left 22:47 raiph left
hoelzro is it ok to add a failing list to NQP, or should I fudge it somehow? 22:50
I'm wondering how clean we want to keep things
22:54 treehug88 left
jnthn hoelzro: I prefer we keep it clean 22:54
hoelzro ok 22:55
jnthn I think we support todo
hoelzro I guess that just means I should try to fix it =)
timotimo votes in favor :P
22:55 denisboyun joined
jnthn srsly? Moar's latin-1 decoded is bust? :/ 22:57
*decoder 22:58
hoelzro yeah =/
I'm digging in now
jnthn I had it open 'cus I was about to teach it about decode streams 22:59
We should probably fix it before I do that :)
uh... 23:02
hoelzro ?
23:02 lowpro30 left
timotimo expects a "how was this supposed to work at all?!" :) 23:03
jnthn git log src/strings/latin1.c
...
fix latin1 so it's right-er. again, no idea how to test it.
hoelzro right-er is what I usually do with Moar =P
jnthn Moar betterer... 23:05
It appears to have a hard-coded binary search. I wonder if that was coded by hand. 23:09
hoelzro heh, I just got there in the source myself 23:10
something about map(*.encode('latin-1').decode('utf-8')) still feels off to me 23:13
I get %c7%82, so I create "\x[c7,82]"
I feel like URI should be building a Buf here at the beginning
because "\x[c7,82]" has two codepoints: 0xC7 and 0x82, right? 23:15
23:15 Adriaaan left
hoelzro so it's no wonder that 0x82 gets squashed down to '?' 23:15
jnthn r: "\x[c7,82]".say 23:18
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«Ç␤»
23:18 telex left
jnthn r: "\x[c7,82]".chars 23:18
camelia ( no output )
jnthn r: "\x[c7,82]".chars.say
camelia rakudo-parrot 1ce379, rakudo-jvm 1ce379, rakudo-moar 1ce379: OUTPUT«2␤»
jnthn .u 0x82 23:19
yoleaux No characters found
timotimo okay, i think it's time for me to go hug my hot water bottle and try for some sleep 23:20
23:20 telex joined
timotimo o/ 23:20
hoelzro timotimo: feel better!
jnthn timotimo: Hope you feel well again soon! 23:21
timotimo i'll give it my best, thanks :)
.o( i also hope TimToady will feel well again soon! ) 23:22
www.google.org/flutrends/de/#DE-BW ← this seems to match my current status
ah well.
23:22 ajr_ left 23:23 colomon left 23:29 colomon joined 23:32 denisboyun left 23:42 lizmat left 23:47 nebuchadnezzar left, nebuchadnezzar joined
hoelzro ok, I fixed URI instead of MoarVM 23:49
because I'm not well-versed enough to know if this is actually a problem with MoarVM itself 23:50
23:55 kivutar left