Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-02-25

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:04 pippo left #perl6
00:04 pippo joined #perl6
00:05 pippo p: say "Test";
00:05 camelia rakudo-parrot 299d70: OUTPUT«Test␤»
00:05 raiph joined #perl6
00:05 pippo left #perl6
00:28 treehug88 joined #perl6
00:36 pdcawley_ joined #perl6
01:00 benabik joined #perl6
01:06 hoverboard joined #perl6
01:11 BenGoldberg rn: say "\c[PILE OF POO]".ord.fmt('%x')
01:11 camelia rakudo-jvm 299d70: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name PILE OF POO�at /tmp/tmpfile:1�------> [32msay "\c[PILE OF POO[33m�[31m]".ord.fmt('%x')[0m�»
01:11 camelia ..rakudo-moar 299d70: OUTPUT«10176b␤»
01:11 camelia ..rakudo-parrot 299d70, niecza v24-109-g48a8de3: OUTPUT«1f4a9␤»
01:15 lue hang on, why does canonpath put an s:g in a while loop conditional? Shouldn't the :g part have that covered?
01:21 ph1ur3 joined #perl6
01:23 TimToady rn: say "\c[PILE OF POO]".ord.base(16)
01:23 camelia rakudo-moar 299d70: OUTPUT«10176B␤»
01:23 camelia ..rakudo-jvm 299d70: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name PILE OF POO�at /tmp/tmpfile:1�------> [32msay "\c[PILE OF POO[33m�[31m]".ord.base(16)[0m�»
01:23 camelia ..rakudo-parrot 299d70, niecza v24-109-g48a8de3: OUTPUT«1F4A9␤»
01:24 TimToady rn: say "\x1F4A9"
01:24 camelia rakudo-parrot 299d70, rakudo-jvm 299d70, rakudo-moar 299d70, niecza v24-109-g48a8de3: OUTPUT«💩␤»
01:25 TimToady m: say "\x10176b"
01:25 camelia rakudo-moar 299d70: OUTPUT«􁝫␤»
01:26 BenGoldberg rn: say "\c[PILE OF POO]"
01:26 camelia rakudo-jvm 299d70: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name PILE OF POO�at /tmp/tmpfile:1�------> [32msay "\c[PILE OF POO[33m�[31m]"[0m�»
01:26 camelia ..rakudo-parrot 299d70, niecza v24-109-g48a8de3: OUTPUT«💩␤»
01:26 camelia ..rakudo-moar 299d70: OUTPUT«􁝫␤»
01:26 lostguy joined #perl6
01:26 lostguy hello
01:26 BenGoldberg hi
01:27 lue .u U+10176B
01:27 yoleaux No characters found
01:27 lostguy can someone help me with my perl 6 problem im trying to use the rakudo make file but it says  no rule to make target j-all D: help?
01:28 TimToady did you configure with the jvm backend?
01:29 TimToady perl Configure.pl --backends=ALL --gen-nqp --gen-parrot --gen-moar
01:29 TimToady that's what I use
01:29 TimToady but then it makes all three bakends
01:30 lostguy what is j-all from?
01:31 TimToady j-all would just be a rule in the Makefile that says to make everything for the jvm backend.  no j-all is actually created
01:31 TimToady but it sounds like your Makefile is borked
01:31 TimToady did you just say "make"
01:32 TimToady to invoke it?
01:32 lostguy yea
01:32 TimToady are you using HEAD from github?
01:32 lostguy pretty sure4
01:32 TimToady are you trying to make all the backends?
01:33 TimToady what did you use for a Configure command?
01:33 lostguy i think it might be a problem at the end of setting up the backends it tries to nmake but there isnt a nmake command
01:34 TimToady hmm, I'm not a windows guy
01:35 lostguy i pretty do it the linux way :P command prompt
01:35 TimToady are you on Linux?
01:35 lostguy no :P
01:35 lostguy windows
01:36 TimToady well, we certainly have people making it on windows, including jnthn++
01:36 lostguy i think i gotta add more PATH variables :P
01:37 TimToady could be, but if you're using the same path Configure did, it oughta figure things out
01:37 lostguy its trying to run nmake which is visual studio
01:37 TimToady maybe Configure is stupid about some o fthe semantic corners
01:37 TimToady you can probably get a gmake from somewhere
01:38 TimToady but yeah, maybe pathness is the issue
01:38 lostguy i have a make
01:38 lostguy i have cgywin pathed with gnu make
01:38 TimToady is your cygwin somehow changing the path on you?
01:39 TimToady I don't think anyone here is actually building under cygwin
01:39 TimToady if that's what you're attempting
01:39 TimToady are you using a cygwin shell?
01:40 * TimToady feels like he's playing 20 questions here...
01:40 mavcunha joined #perl6
01:40 lostguy lol :P
01:41 lostguy i know what im doing just hate make files so muchhhhhhhhhh
01:41 TimToady yes, it's fine if you know what you're doing, but you're making it difficult for *me* to know what you're doing
01:41 lostguy just missing a few key thinfs
01:42 telex joined #perl6
01:42 lostguy i have an idea how to get it working tho
01:43 lostguy im making a PATH variable to nmake.exe and see if that helps
01:57 kbaker joined #perl6
02:07 FROGGS_ joined #perl6
02:22 gfldex joined #perl6
02:28 dalek roast: 26ca4e3 | larry++ | S03-metaops/cross.t:
02:28 dalek roast: cross test for [] was slightly wrong
02:28 dalek roast:
02:28 dalek roast: stringizing a list puts an extra space in the middle
02:28 dalek roast: review: https://github.com/perl6/roast/commit/26ca4e3c5f
02:32 gfldex joined #perl6
02:41 klapperl_ joined #perl6
02:45 treehug88 joined #perl6
02:47 btyler joined #perl6
02:50 kaleem joined #perl6
03:13 dayangkun joined #perl6
03:21 dalek rakudo/nom: e6c7baf | larry++ | src/core/metaops.pm:
03:21 dalek rakudo/nom: [1,2] Xop <a b> now treats [] as item
03:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e6c7baf01d
03:22 dalek roast: 4658683 | larry++ | S03-metaops/cross.t:
03:22 dalek roast: [1,2] Xop <a b> no longer todo
03:22 dalek roast: review: https://github.com/perl6/roast/commit/4658683faa
03:25 TimToady someone with an rt login can close RT74072 now
03:35 water joined #perl6
03:46 daniel-s_ joined #perl6
03:52 vendethiel joined #perl6
04:24 lue Looking at File::Find::find, I *think* the culprit for its slowness is one of the reify methods.
04:31 rurban joined #perl6
04:41 jnap joined #perl6
04:53 dalek rakudo/nom: dbbfc65 | larry++ | src/core/ (2 files):
04:53 dalek rakudo/nom: define X in terms of X,
04:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dbbfc65381
04:54 TimToady X now has the correct semantics with [1,2] as well
04:55 bjz joined #perl6
04:55 TimToady next, fix Z which has the same problems
04:56 TimToady r: say ([1,2] Z <a b>).perl
04:56 camelia rakudo-parrot e6c7ba, rakudo-jvm e6c7ba, rakudo-moar e6c7ba: OUTPUT«((1, "a"), (2, "b")).list␤»
05:15 dalek rakudo/nom: 97d6149 | larry++ | src/core/LoL.pm:
05:15 dalek rakudo/nom: define Z in terms of Z,
05:15 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/97d6149453
05:34 araujo joined #perl6
05:41 jnap joined #perl6
05:45 kaleem joined #perl6
06:17 Mouq joined #perl6
06:23 raydiak if I attach files to an e-mail bug report, will they be added to the ticket it creates?
06:32 FROGGS_ RT #74072
06:32 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=74072
06:34 FROGGS_ TimToady: done (closed it)
06:34 FROGGS_ raydiak: I think so
06:34 FROGGS_ raydiak: just test it :o)
06:36 raydiak FROGGS_: good point...thanks, will do :) narrowed down my precomp bug that was causing those test failures in Math::ThreeD
06:36 FROGGS_ .tell lostguy I'd recommend installing MSVC Express and rip out gmake/cygwin stuff if you can, this should work out. (perhaps use ActivePerl instead of strawberry also)
06:36 yoleaux FROGGS_: I'll pass your message to lostguy.
06:36 FROGGS_ raydiak++
06:36 FROGGS_ I already wanted to ask hoelzro if he can golf it down some more
06:37 FROGGS_ raydiak: then it might be the same bug as RT #121298 ?
06:37 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=121298
06:37 raydiak nope, something different
06:38 raydiak a multi sub isn't being imported under certain circumstances
06:38 FROGGS_ raydiak: ohh
06:38 FROGGS_ on all backends?
06:38 raydiak I'll try it on moar...what's the --target=
06:39 FROGGS_ mbc
06:39 raydiak k, hold on
06:39 FROGGS_ it is likely that I am able to fix you sub-export/import bug :o)
06:41 raydiak oh that'd be much nicer than leaving the tests commented out :)
06:43 raydiak it's either taking a waaaay long time, or the process is hung
06:44 raydiak there's 2 modules, and one uses the other...but compiling the one with the use in it seems to go into an infinite loop
06:44 moritz good morning
06:44 raydiak good morning
06:45 grondilu a very basic Linear Algebra module using subtypes:  https://github.com/grondilu/linalg
06:45 bjz joined #perl6
06:47 raydiak FROGGS_: yeah idk, it won't compile for me w/moar, but I'll write the bug report and then you can have a look at it yourself
06:47 denisboyun joined #perl6
06:49 raydiak grondilu++
07:02 raydiak FROGGS_: RT #121319
07:02 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=121319
07:05 ph1ur3 joined #perl6
07:07 scottp joined #perl6
07:17 xinming joined #perl6
07:27 xinming joined #perl6
07:49 masak morning, #perl6
07:52 mathw morning masak
07:55 timotimo morning, morning
07:55 FROGGS joined #perl6
07:55 mathw lo
07:55 masak hi
07:58 TimToady ho
08:03 FROGGS fa
08:04 denis_boyun joined #perl6
08:06 sftp joined #perl6
08:08 moritz hey
08:19 timotimo lue: did the callgrind show that MVM_string_flatten takes up a lot of time?
08:19 timotimo or MVM_get_codepoint_at_nocheck?
08:22 dalek roast: 13d65fe | larry++ | S03-metaops/zip.t:
08:22 dalek roast: list infix reductions no longer flatten
08:22 dalek roast:
08:22 dalek roast: So that, for instance, [Z~] (1,2,3), <a b c> produces 1a 2b 3c.
08:22 dalek roast: This is necessary now that X and Z ops no longer violate [1,2,3]
08:22 dalek roast: itemness.
08:22 dalek roast: review: https://github.com/perl6/roast/commit/13d65fe1f4
08:23 timotimo do these tests pass already on rakudo?
08:23 FROGGS yes, according to the clogs
08:24 timotimo yays
08:24 timotimo praise the toad!
08:24 FROGGS *g*
08:25 TimToady well, the fix for that particular thing is not in yet
08:25 FROGGS O.o
08:25 masak TimToady: it's very nice to see you on the implementor part of the fence.
08:26 TimToady I have the fix for [Z~] already, but am trying to coax [\Z~] into working with non-flattened input
08:33 tgt joined #perl6
08:34 [Sno] joined #perl6
08:36 dmol joined #perl6
08:36 dalek rakudo/nom: da8c1c2 | larry++ | src/ (2 files):
08:36 dalek rakudo/nom: list infix reductions no longer flatten
08:36 dalek rakudo/nom:
08:36 dalek rakudo/nom: Since we fixed X and Z metaops to not violate Scalar containers,
08:36 dalek rakudo/nom: we have to be able to pass a list of parcels to [Xop] and [Zop]
08:36 dalek rakudo/nom: and have each parcel treated as a separate list.  The triangle
08:36 dalek rakudo/nom: forms also work (slowly, since they have to recalculate each stage
08:36 dalek rakudo/nom: from the start), but there is an unbox warning I don't understand yet.
08:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/da8c1c26bb
08:37 masak TimToady++
08:39 timotimo i haven't ever seen an "unbox warning" o_O
08:41 dalek specs: ea21cb2 | larry++ | S03-operators.pod:
08:41 dalek specs: doc that [Xop] now does not flatten
08:41 dalek specs: review: https://github.com/perl6/specs/commit/ea21cb2904
08:44 TimToady > say [\X+] (1,2), (3,4), (5,6)
08:44 TimToady This type cannot unbox to a native integer
08:44 TimToady 1 3 6 10 15 21
08:44 timotimo huh
08:45 timotimo ... why is that not fatal?
08:45 skids joined #perl6
08:45 timotimo i can't wait until that timo person finally completes "parameterized builds" for perl6-bench
08:45 timotimo then i won't have to hack around the components.json to get the latest moar to test on :|
08:47 TimToady but I think the cross and zip metaops are doing some weird error trapping somewhere
08:47 TimToady I'd get fatal errors thrown with some of my mistakes, and they'd give a traceback and then continue to the next iteration somehow
08:47 moritz TimToady: on all backends?
08:48 TimToady I've only tested on moarvm mostly
08:48 moritz I'd only slightly be surprised if some backends get the continution thingy and exceptions wrong when mixed together
08:50 TimToady anyway, I think I'm done for the night now
08:50 TimToady probably done enough damage for one day
08:50 timotimo thanks for stopping by, TimToady
08:51 TimToady strange, I thought I lived here...
08:51 TimToady anyhoo, g'nite &
08:55 SamuraiJack_ joined #perl6
08:55 FROGGS gnight TimToady
08:57 sqirrel joined #perl6
09:10 masak g'nait, TimToady
09:10 SamuraiJack_ joined #perl6
09:23 smls joined #perl6
09:25 dakkar joined #perl6
09:38 xinming_ joined #perl6
09:41 jnthn o/
09:41 timotimo ohai jnthn
09:42 timotimo i'll have a long commute today during which i won't be able to work (as i'll be operating the car), but should i try to expand the fast-path in flatten_string to handle any number of rope pieces that have IS_WIDE set?
09:44 jnthn timotimo: Givne that's all we likely end up with these days, probably makes sense.
09:44 timotimo mhm
09:45 timotimo that should make a good dent into the whole performance situation
09:45 timotimo hopefully lue will hit that fast path with the pod work
09:52 zakharyas joined #perl6
09:57 xinming joined #perl6
10:00 mavcunha joined #perl6
10:02 xinming_ joined #perl6
10:08 Ven joined #perl6
10:11 xinming joined #perl6
10:17 nwc10 timotimo: rakudo/nqp/MoarVM HEAD pass all (own) tests on 32 bit linux for me.
10:17 timotimo \o/
10:17 FROGGS cool!
10:17 timotimo i saw a few valgrind messages pop up the other day, btw
10:17 nwc10 based on the commit message on MoarVM HEAD, I suspect that this is useful
10:17 timotimo didn't look deeply into it, but ...
10:17 nwc10 oh. bother. valgrind is usually correct
10:18 timotimo oh, the 32bit address confusion thing was about memcpy wanting bytes, rather than "number of things to copy"
10:18 timotimo so i had to multiply by 4 in the right places
10:18 timotimo but not on others, where adding to a pointer will increment by 4 bytes by virtue of the pointer being an int32 pointer
10:20 japhb joined #perl6
10:22 timotimo okay, afk for about 4 hours now
10:23 tadzik linux is funny: https://github.com/torvalds/linux/blob/master/fs/ext4/resize.c#L698
10:26 smls joined #perl6
10:26 masak tadzik: perfectly good explanations in the HN discussion.
10:26 masak tadzik: still a pretty badly named variable.
10:33 masak feeling after teaching Python for 1.5 days: it's a nice little language. probably an excellent first language. I could be productive in it, but I'm not sure about fulfilled.
10:35 zaydon joined #perl6
10:37 zaydon left #perl6
10:38 tadzik python's ecosystem made me appreciate how awesome CPAN is
10:38 moritz there's more than one way to install modules? :-)
10:38 tadzik to name them, too :)
10:39 tadzik ImportError: module MysqlDB not found. What's the name of the module to install? Of course! It's python-mysql!
10:39 berekuk joined #perl6
10:39 tadzik and duckduckgoogle is the only way I know to map one to the other
10:39 xinming joined #perl6
10:39 tadzik compare that to Perl, where you can almost pipe the error message to cpanm
10:40 fhelmberger joined #perl6
10:41 jnthn hah, that'd a neat Panda feature. Pipe the missing module error to it and it says "oh, it's X you want" :)
10:41 tadzik troo
10:41 jnthn "Would you like me to install that for you?" :)
10:42 tadzik or you could write a module that catches exceptions and installs modules
10:42 tadzik perl6 -MAutoInstall foo.pl
10:43 salv0 joined #perl6
10:43 jnthn ooh :)
10:43 tadzik seems perfectly doable too
10:43 jnthn So long as the user asks for it, it's a nice thing.
10:43 tadzik as long as a module can setup a global exception handler somehow
10:45 alc joined #perl6
10:45 jnthn The debugger does it, though it's a hack. :)
10:45 jnap joined #perl6
10:45 tadzik nothing wrong with a good hack :)
10:51 mavcunha joined #perl6
10:54 xinming joined #perl6
10:55 donaldh joined #perl6
11:01 xinming_ joined #perl6
11:01 tadzik yay, TPF is in GSoC
11:04 [Sno]_ joined #perl6
11:05 denisboyun joined #perl6
11:06 klapperl joined #perl6
11:08 FROGGS tadzik: that would just be a CompUnitRepo with a low priority
11:16 xinming joined #perl6
11:22 xinming joined #perl6
11:26 kaleem joined #perl6
11:26 kaleem_ joined #perl6
11:33 xinming joined #perl6
11:38 salv0 joined #perl6
11:45 salv0 joined #perl6
11:52 daniel-s__ joined #perl6
11:55 [particle] joined #perl6
12:05 virtualsue joined #perl6
12:11 colomon Last two nights the smoker failed to get by Rakudo compilation, don't have time to check details at the moment.  :(
12:11 FROGGS :/
12:25 Timbus joined #perl6
12:25 SamuraiJack_ joined #perl6
12:25 salv0 joined #perl6
12:27 SamuraiJack__ joined #perl6
12:30 klapperl joined #perl6
12:53 treehug88 joined #perl6
12:55 spider-mario joined #perl6
12:56 aindilis joined #perl6
13:01 rindolf joined #perl6
13:15 SamuraiJack__ joined #perl6
13:17 ph1ur3 joined #perl6
13:33 JimmyZ joined #perl6
13:40 kbaker joined #perl6
13:40 ph2ur3 joined #perl6
13:46 ajr joined #perl6
13:48 jnap joined #perl6
13:53 jnap joined #perl6
14:00 isBEKaml joined #perl6
14:04 isBEKaml Oh, TimToady++ on the implementers' side of the garden since the days of STD.pm6 :-)
14:09 * timotimo reached his destination
14:09 nwc10 rah!
14:10 nwc10 did the car reach it too?
14:10 hoverboard joined #perl6
14:11 isBEKaml timotimo: Nice work on the p6weekly.  Keep going!
14:11 timotimo i'll try :)
14:11 xragnar_ joined #perl6
14:13 isBEKaml timotimo++
14:19 _daniel-s__ joined #perl6
14:30 rindolf joined #perl6
14:36 araujo joined #perl6
14:37 virtualsue joined #perl6
14:40 btyler joined #perl6
14:45 TimToady r: say [X~] <1 2 3>, <a b c>
14:46 camelia rakudo-parrot da8c1c: OUTPUT«Cannot assign a non-Perl 6 value to a Perl 6 container␤  in method REIFY at gen/parrot/CORE.setting:8373␤  in method reify at gen/parrot/CORE.setting:7275␤  in method gimme at gen/parrot/CORE.setting:7720␤  in method push at gen/parrot/CORE.setti…»
14:46 camelia ..rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«1a 1b 1c 2a 2b 2c 3a 3b 3c␤»
14:46 rindolf Hmmm....
14:47 rindolf Ah, works in the JVM  - does not in parrot.
14:47 TimToady r: say [\X~] <1 2 3>, <a b c>
14:47 camelia rakudo-moar da8c1c: OUTPUT«===SORRY!===␤This type cannot unbox to a native integer␤»
14:47 camelia ..rakudo-jvm da8c1c: OUTPUT«This representation can not unbox to a native int␤  in block  at gen/jvm/CORE.setting:16510␤  in block  at gen/jvm/CORE.setting:7499␤  in block  at gen/jvm/CORE.setting:7501␤  in method reify at gen/jvm/CORE.setting:7527␤  in method reify at gen/j…»
14:47 camelia ..rakudo-parrot da8c1c: OUTPUT«This type cannot unbox to a native integer␤  in block  at gen/parrot/CORE.setting:16758␤  in any coro at gen/parrot/CORE.setting:7539␤  in method reify at gen/parrot/CORE.setting:7520␤  in method reify at gen/parrot/CORE.setting:7262␤  in metho…»
14:48 [Coke] TimToady: do you care to be able to close RTs?
14:48 TimToady ooh, a backtrace
14:48 TimToady [Coke]: seems like a reasonable thing
14:49 * TimToady has no idea whether he has an account there
14:50 TimToady r: say [10,20] Z* 1,2
14:50 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2␤»
14:51 TimToady r: say [10,20],3 Z* 1,2
14:51 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2 6␤»
14:51 water joined #perl6
14:51 TimToady god
14:51 TimToady *oo
14:53 SamuraiJack__ joined #perl6
14:53 [Coke] TimToady: I need a userid. I used to be able to pick from a dropdown and guess, but that's gone with the latest rt upgrade.
14:53 TimToady arguably, the arg processing I had to bake into Xop and Zop should be the correct semantics of **@args instead
14:54 TimToady [Coke]: no idea
14:54 * [Coke] sees his shipment is coming from fort worth, and wonders if pmichaud is back home.
14:54 [Coke] TimToady: eh. you have a horde of people willing to close tickets, NBD.
14:54 [Coke] TimToady++
14:55 smls ++TimToady: http://rosettacode.org/wiki/Brace_expansion#Perl_6 appears to be ironclad now :)
14:55 smls Also, it's nice to see that on Moar it runs more than twice as fast than on Parrot (for a simple benchmarck of 500 random-ish inputs)
14:56 timotimo smls: that must be after the concatenation fastpath :P
14:56 smls Not to mention that on Parrot, it exhibited a very noticable lag every second or so (caused by garbage collection, I would guess), whereas on Moar it keep up its performance pretty consistently afaict
14:57 smls timotimo: I'm using the rakudo-moarvm 2014.01-2 AUR package
14:57 smls jnthn++  # releasing Moar
14:57 smls spider-mario  # making Arch Linux packages for Rakudo and Moar available
14:57 timotimo oh?!
14:58 smls spider-mario++ I meant
14:58 spider-mario thanks :p
14:59 FROGGS joined #perl6
15:00 stevan_ joined #perl6
15:01 _thou joined #perl6
15:04 dalek joined #perl6
15:07 rurban joined #perl6
15:09 * timotimo now has an opportunity to do reverse debugging
15:12 moritz what's "reverse debugging"?
15:13 moritz "I know this piece of code is wrong; what harm does it do"?
15:13 timotimo the ability to run the program backwards and forwards :)
15:14 moritz oh
15:14 moritz I know that as "time-travelling debugging"
15:14 timotimo ah, aye.
15:14 timotimo hm
15:14 rurban be sure you a SSD on /tmp. it can get superslow
15:14 timotimo i wonder why nqp still does the "copy these files over ten times" thing
15:15 timotimo rurban: i'm doing it on nqp, not rakudo. it was fine :)
15:15 timotimo and i was able to get very close to the position of the bug
15:15 * benabik generally expects a RAMFS on /tmp these days.
15:16 smls yeah, on Arch Linux it's in RAM
15:16 smls (by default)
15:16 benabik Although apparently not on OS X.  Hm.  Boo, Apple, boo.
15:16 rurban nqp-p -j or -m?
15:19 timotimo -m in this case
15:21 timotimo my flatten_string fastpath seems to have successfully built rakudo-moar now
15:22 timotimo lue: could you be so kind as to test it? the branch is called "flatten_fastpath"
15:23 d4l3k_ joined #perl6
15:29 treehug88 joined #perl6
15:30 sqirrel joined #perl6
15:32 Ven so, perl 6 got in GSoC :D ?
15:33 moritz well, Perl got :-)
15:33 nwc10 lucky Perl 3! You have friends at least
15:33 nwc10 or at last
15:33 nwc10 naughty fingers
15:34 TimToady p6: sub infix:<Y> (**@args) is equiv(&infix:<X>) { [Z~] @args }; say 1,2,3 Y <a b c>
15:34 camelia niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Slice parameters NYI at /tmp/tmpfile line 1:â�¤------> [32msub infix:<Y> (**@args[33mâ��[31m) is equiv(&infix:<X>) { [Z~] @args }; s[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/l…»
15:34 camelia ..rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Routine given to equiv does not appear to be an operator�at /tmp/tmpfile:1�------> �»
15:34 isBEKaml Did we have GSoC last year? I thought we did some under the TPF umbrella.
15:34 TimToady under Parrot, iirc
15:34 isBEKaml macros and p6doc is all I remember.
15:35 TimToady TPF was not GSoC last year
15:35 Ven r: sub foo($_) { .say; }; "a".foo;
15:36 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«No such method 'foo' for invocant of type 'Str'␤  in block  at /tmp/tmpfile:1␤␤»
15:36 TimToady I think the JS backend to nqp by pmurias++ was GSoC under Parrot Foundation
15:36 isBEKaml Ah. So we didn't do any GSoC programmes last year?
15:36 TimToady we did, just not through TPF
15:36 Ven r: sub foo($_) { .say; }; "a".&foo;
15:36 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«a␤»
15:36 Ven rosettacode++
15:36 TimToady we snuck pmurias in under parrot instead
15:36 isBEKaml pmurias++ work, brrt++ (mod_parrot) work.
15:36 Ven discovering cool perl6 tricks, I don't think I saw "a.&b" in the synopsis.
15:37 TimToady yes, that's one of those features that people immediately start overusing :)
15:37 Ven true enough.
15:37 Ven r: say [10,20] Z* 1
15:37 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2␤»
15:37 Ven r: say [10,20] Z* 1, 2
15:37 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2␤»
15:37 Ven r: say [10,20] Z 1, 2
15:37 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«10 20 1␤»
15:37 Ven r: say [10,20] Z [1, 2]
15:37 TimToady had the same bug as X
15:38 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«10 20 1 2␤»
15:38 TimToady r: say 10,20 Z 1,2
15:38 Ven TimToady: it had precedence issue ?
15:38 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«10 1 20 2␤»
15:38 TimToady no, it was violating the item-ness of []
15:38 TimToady now it doesn't
15:38 Ven err, okay. Either both sides are itemized, either none
15:39 TimToady ordinarily a list with [] in it is supposed to keep the [] as a single thing
15:39 TimToady but X and Z were unpacking it
15:39 Ven oh, okay
15:39 TimToady list infixes are infixes between lists, so they should play by the same rules as other lists
15:39 moritz does anybody know if there's an IRC channel for perl GSoC stuff?
15:39 Ven that looked expected to me, though. How do you use X with a [] now ?
15:39 moritz with .list on the []
15:40 Ven I guess. moritz++ # obvious answer
15:40 TimToady r: say [+] [10,20]
15:40 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2␤»
15:41 TimToady see, same rules now as list prefix
15:41 moritz r: say [+] [10,20].list
15:41 Ven oh yeah, an array in numeric context is just its length
15:41 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30␤»
15:41 moritz TimToady++ # sanity
15:41 isBEKaml moritz: probably, #soc-help on irc.perl.org
15:41 moritz isBEKaml: thanks
15:41 TimToady r: say [+] [10,20][]
15:41 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30␤»
15:41 isBEKaml moritz: YW - sure enough - http://news.perlfoundation.org/2014/02/google-summer-of-code-2014.html
15:41 TimToady that works too
15:42 TimToady r: say [+] @([10,20])
15:42 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30␤»
15:42 TimToady or that
15:42 TimToady r: my @foo := [10,20]; say [+] @foo
15:42 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30␤»
15:43 TimToady r: my $foo := [10,20]; say [+] $foo
15:43 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2␤»
15:43 TimToady r: my $foo := [10,20]; say [+] @$foo
15:43 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30␤»
15:43 smls perl6: .say for <a b c d>.combinations;  # from http://rosettacode.org/wiki/Power_set#Perl_6
15:43 camelia niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Unable to resolve method combinations in type Parcel␤  at /tmp/tmpfile line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4595 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4596 (module-CORE @…»
15:43 camelia ..rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«␤a␤b␤c␤d␤a b␤a c␤a d␤b c␤b d␤c d␤a b c␤a b d␤a c d␤b c d␤a b c d␤»
15:44 smls I get "Method 'combinations' not found for invocant of class 'Parcel'" locally
15:44 TimToady old rakudo
15:44 smls ok
15:44 TimToady was fixed within the last month, and getting () on the front a couple days ago
15:46 TimToady should probably have a "works with" on the RC entry
15:47 araujo joined #perl6
15:54 timotimo i'll have benchmark results for the fast path for string flatten later today, but for now i'm off to do ... stuff :)
15:55 TimToady looks like maybe the next step is to actually attach properties to operators so that things like equiv work right, and so that we can write do real HOP with metaops, which are currently faked in Actions
15:56 TimToady r: say &infix:<Z+>
15:56 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Undeclared name:â�¤    &infix:<Z+> used at line 1â�¤â�¤Â»
15:56 TimToady and so that things like that can work
15:57 TimToady n: say &infix:<Z+>
15:57 camelia niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤    'infix:<Z+>' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6…»
15:58 TimToady I guess not even niecza is quite there
15:58 Ven r: my @foo = (10, 20); say [+] $@foo;
15:58 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2␤»
15:58 TimToady but it ought to just be function composition of some sort
15:59 Ven it all makes sense. ... Kinda
15:59 TimToady superstitious parens there
15:59 Ven I'd rather be explicit
15:59 PerlJam .oO( this is a family channel! ;)
15:59 TimToady they're a bit misleading, insofar as the no-ops
15:59 TimToady *they're
16:00 Ven TimToady: you wrote it correctly the first time ;o)
16:00 TimToady indeed
16:01 Ven r: my @foo = 10, 20; say [+] $@foo;
16:01 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2␤»
16:02 kurahaupo_mobile joined #perl6
16:02 Ven What I don't like is `foo 1, 2` vs `foo (1, 2)` vs `foo(1, 2)`
16:03 PerlJam Ven: wait ... what exactly don't you like?
16:03 TimToady it isn't like P5 :)
16:03 smls seem much more sane to me, than in Perl 5
16:04 TimToady but P6 is very consistent on the subject of postfixes, so the middle parens cannot be a postfix
16:04 TimToady and the reason for the postfix policy is language extensibility
16:05 TimToady and leads to the general best practice of putting spaces around infixes
16:05 TimToady you can write 1*2, but then what if someone adds a postfix:<*> operator?
16:06 TimToady r: sub postfix:<*>($x) { $x + 42 }; say 1 + 2; say 1*
16:06 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«3␤43␤»
16:07 TimToady r: sub postfix:<*>($x) { $x + 42 }; say 1 * 2; say 1*2
16:07 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Two terms in a rowâ�¤at /tmp/tmpfile:1â�¤------> [32mx:<*>($x) { $x + 42 }; say 1 * 2; say 1*[33mâ��[31m2[0mâ�¤    expecting any of:â�¤        â€¦Â»
16:07 TimToady r: sub postfix:<*>($x) { $x + 42 }; say 1 * 2; say 1*
16:07 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2␤43␤»
16:08 jnthn r: sub postfix:<*>($x) { $x ~ "\n* We didn't say which one!" }; say "Perl 6 will be done by Christmas"*
16:08 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«Perl 6 will be done by Christmas␤* We didn't say which one!␤»
16:08 jnthn The disclaimer postfix :P
16:09 * TimToady looks ‡ at jnthn++
16:09 ashleydev is ',' an infix?
16:09 TimToady yes
16:09 ashleydev but doesn't get surrounded with spaces?
16:09 TimToady and, in fact, Z is now defined (as of yesterday) as Z,
16:10 TimToady nobody in their right mind is going to write postfix:<,> :)
16:10 ashleydev go on finish your sentence
16:10 TimToady :P
16:11 TimToady so while you can write "1 , 2", I don't expect that one to become a best practice
16:11 PerlJam Actually, isn't it the right mind that *would* do such a think because it's the center of creativity?  :)
16:11 PerlJam s/think/thing/
16:11 TimToady and it may be that best practice will settle on 1*2 rather than admitting a possible postfix:<*>, but that's really kinda up to the community to vote
16:12 * smls for one, likes the way P6 parses function calls and operators
16:12 TimToady PerlJam: you right mind is really on your left :)
16:12 smls glad that the P5 function call ambiguity is gone
16:13 smls print "     Hello";             # original code
16:13 PerlJam smls: amen!
16:13 smls print (" " x $indent)."Hello";  # adding a little feature... looks harmless enough, right?
16:13 smls --> BUG
16:13 benabik circumfix:<*> so you can *$emphasize* things?
16:13 TimToady would have to be circumfix:<* *>
16:13 benabik D'oh
16:14 TimToady but note the collision with term:<*>
16:14 ashleydev so infix w/o space is ambiguous only when there's a postfix of the same name?
16:14 TimToady yes
16:15 benabik Hm.  Circumfix and prefix have to worry about collisions with term.
16:15 TimToady and most infixes are more readable with spaces anyway
16:15 TimToady yes, we only really have three syntactic slots there
16:15 TimToady term, postfix, and infix
16:15 TimToady prefix and circumfix are in with term
16:16 benabik prefixes are just terms that expect another expression as postfix?
16:16 TimToady and we can't really afford to parse differently based on whether there's a closer
16:16 TimToady benabik: I wouldn't say it that way, since that's outside the technical meaning of "postfix" in P6 culture, but yeah
16:17 TimToady prefixes just recursivel expect another term, until you really find a term
16:17 TimToady *ly
16:18 TimToady much like regex assertions have internal prefixes like <?foo> that just reparse as if you'd written <foo>
16:19 TimToady people can figure out much smarter parsers that can decipher all sorts of tangled language, but such parsers force the user to be as smart as the parser
16:20 TimToady so we opt for a few ironclad rules instead
16:20 TimToady one-pass, self-clocking terms, no ws before postfix
16:20 TimToady very limited backtracking
16:22 TimToady P6 only backtracks in two spots, that I recall
16:22 TimToady distinguishing [+] from [1]
16:23 TimToady and finding the final brackets in interpolating a string like "$foo.bar().baz"
16:23 ashleydev what's [1] for?
16:23 TimToady it's an array with a 1 in it
16:23 TimToady both of those occur in term position
16:24 TimToady but reduction operators are pretty easy to recognize
16:24 TimToady first, they don't allow space, so [ 1 ] is always an array
16:24 TimToady second, the namespace of infix operators is pretty easy to recognize, and fairly distinct from array literals
16:24 kurahaupo_mobile TimToady: so [+] is matched by the parser rather than the lexer?
16:25 TimToady yes, in fact
16:25 TimToady since the lexer is limited to DFA semantics, the recursive nature of metaops would explode a lexer that tried to do the whole thing
16:25 TimToady believe me, I tried
16:26 TimToady so the LTM is really just [
16:26 TimToady and then it backtracks if it can't get an infix followed by a ]
16:27 TimToady it's one of those massive DWIMs that almost never triggers a WAT
16:27 TimToady because visually reduce ops are so distinct from array literals
16:28 TimToady in P6 we try to avoid most of the low-luminosity dwims from P5, and instead choose a few high-luminosity dwims
16:29 TimToady reduce ops is one, so is smartmatching
16:30 kurahaupo_mobile so really its own little layer between the lexer & parser?
16:30 PerlJam TimToady: woolfy & lizmat need to get you some wooden coins with DWIM on one side and WAT on the other :)
16:31 kurahaupo_mobile how does the parsing of meta ops interact with the precedence of the constructed op and its effect on the outer parser?
16:31 TimToady well, that's what I was mentioning earlier as a deficiency in rakudo
16:32 * kurahaupo_mobile has been away too long and doesn't recognize "WAT"
16:32 TimToady which fakes some things in the compiler that should really be done with higher-order functions, but we can't until the functions carry their own associativity properties
16:33 TimToady see S99:911 re WAT
16:33 synopsebot Link: http://perlcabal.org/syn/S99.html#line_911
16:35 araujo joined #perl6
16:36 TimToady funny how that's line 911
16:39 ph1ur3 joined #perl6
16:44 kurahaupo_mobile thanks but can't view the video on this device
16:46 smls kurahaupo_mobile: In a nutshell, it's the safe-for-work version of WTF
16:46 smls :P
16:46 TimToady What Are That!?!
16:49 kurahaupo_mobile ah, thanks
16:49 TimToady Woe And Tragedy!
16:57 kaleem joined #perl6
16:57 masak Warts Are Typical
16:57 vendethiel TimToady: how do you distinguish array with constants in them then ?
16:57 vendethiel r: constant Z = 1;
16:57 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: ( no output )
16:57 masak WAT Ain't TLA
16:58 vendethiel r: constant Z = 1; my $ary = [Z]; say $ary;
16:58 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«(timeout)»
17:02 treehug8_ joined #perl6
17:04 TimToady it tries for a reduce first, so say [ Z ] if you mean the other thing
17:04 TimToady or [Z,]
17:04 TimToady wait, that won
17:04 TimToady 't work
17:04 TimToady :)
17:04 SamuraiJack__ joined #perl6
17:05 TimToady r: say [Z,]((1,2,3),<a b c>)).perl
17:05 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unexpected closing bracket�at /tmp/tmpfile:1�------> [32msay [Z,]((1,2,3),<a b c>)[33m�[31m).perl[0m�»
17:05 TimToady r: say [Z,]((1,2,3),<a b c>).perl
17:06 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«((1, "a"), (2, "b"), (3, "c")).list␤»
17:06 TimToady r: say [Z, ]((1,2,3),<a b c>).perl
17:06 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Undeclared name:â�¤    Z used at line 1â�¤â�¤Â»
17:06 TimToady that "works" :)
17:06 TimToady but is no shorter than [ Z ]
17:07 TimToady or use a better Z
17:08 frusen joined #perl6
17:09 TimToady r: constant 𝐙 = 1; say [𝐙].perl
17:09 camelia rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Missing initializer on constant declarationâ�¤at /tmp/tmpfile:1â�¤------> [32mconstant [33mâ��[31mð��™ = 1; say [ð��™].perl[0mâ�¤    expecting any of:â�¤        stat…»
17:09 camelia ..rakudo-parrot da8c1c: OUTPUT«[1]␤»
17:10 TimToady m: say '𝐙'.ord.base(16)
17:10 camelia rakudo-moar da8c1c: OUTPUT«1D419␤»
17:11 TimToady m: say so '𝐙' ~~ /\w/
17:11 camelia rakudo-moar da8c1c: OUTPUT«False␤»
17:11 TimToady p: say so '𝐙' ~~ /\w/
17:11 camelia rakudo-parrot da8c1c: OUTPUT«True␤»
17:11 TimToady interesting
17:11 TimToady r: constant term:<𝐙> = 1; say [𝐙].perl
17:11 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[1]␤»
17:12 TimToady n: say so '𝐙' ~~ /<:Alpha>/
17:12 camelia niecza v24-109-g48a8de3: OUTPUT«True␤»
17:12 TimToady r: say so '𝐙' ~~ /<:Alpha>/
17:12 camelia rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«False␤»
17:12 camelia ..rakudo-parrot da8c1c: OUTPUT«True␤»
17:12 TimToady hmm
17:13 TimToady did the UC change their mind on those?
17:15 TimToady r: constant Z = 1; say [Z].perl
17:15 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[1]␤»
17:19 TimToady maybe we should allow the mathematical symbols as terms anyway
17:19 TimToady or we could go as far as to make constant accept anything as a term that is surrounded by whitespace
17:20 TimToady then we'd get all the math symbols for free
17:20 TimToady whether they're alpha or not
17:22 TimToady can anyone think of the WAT of that?
17:22 * masak is fine with that
17:22 masak the WAT will probably only affect people who don't put in their whitespace.
17:22 masak which feels like an OK corner to sweep a WAT into.
17:22 PerlJam constant + = 5;   # ?
17:23 frusen left #perl6
17:23 TimToady well, plenty of skyhook to nuke yourself in the bedrock
17:24 masak PerlJam: technically not worse than * being a term.
17:24 TimToady .oO(higher order snowclones)
17:24 PerlJam true
17:24 TimToady well, but we don't also have * as a prefix, you'll note
17:25 ashleydev what's the usecase of * as a term?
17:26 TimToady r: constant term:<➕> = 5; say +➕
17:26 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«5␤»
17:26 TimToady ashleydev: you can use it for whatever you like
17:27 TimToady r: say (1..*)[^10]
17:27 ashleydev ah as in whatever?
17:27 ashleydev yes
17:27 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«1 2 3 4 5 6 7 8 9 10␤»
17:28 PerlJam .oO( not having prefix:<*> is clearly an oversight by our esteemed language designer  ;)
17:28 ashleydev r say 2*2
17:28 ashleydev r: say 2*2
17:28 camelia rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«4␤»
17:29 masak TimToady: thinking about it an extra time, I think 'constant term:<+>' is rather nicely huffmanized for that.
17:30 masak PerlJam: at one point, we had prefix:<=> :P
17:32 myfree joined #perl6
17:32 TimToady masak: the counterargument is that we're at the mercy of the unicode consortium not to move things into and out of alpha, which may have happened here
17:33 denisboyun joined #perl6
17:34 TimToady r: say so '𒉑' ~~ /\w/
17:34 camelia rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«False␤»
17:34 camelia ..rakudo-parrot da8c1c: OUTPUT«True␤»
17:34 TimToady or maybe those implmentations are just buggy
17:35 [Sno] joined #perl6
17:36 TimToady that's a great cuneiform character
17:36 TimToady somehow, most of them end up looking biological
17:37 PerlJam yeah, I was gonna ask if that's "angular fish" or something
17:37 masak TimToady: seems to me any version of Perl 6 (the spec) should (a) tie itself to a particular version of Unicode and its notion of alpha, and (b) never move things out of alpha once they're in, for the sake of backwards compat.
17:38 TimToady r: say "\c[CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU]"
17:38 camelia rakudo-moar da8c1c: OUTPUT«虜␤»
17:38 camelia ..rakudo-jvm da8c1c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU�at /tmp/tmpfile:1�------> [32mEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU[33m�[31m]"[0m�»
17:38 camelia ..rakudo-parrot da8c1c: OUTPUT«𒉑␤»
17:38 PerlJam buggy it is!
17:38 TimToady r: say "\c[CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU]".ord.base(16)
17:38 camelia rakudo-moar da8c1c: OUTPUT«2F9B4␤»
17:38 camelia ..rakudo-jvm da8c1c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU�at /tmp/tmpfile:1�------> [32mEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU[33m�[31m]".ord.base(16)[0m�»
17:38 camelia ..rakudo-parrot da8c1c: OUTPUT«12251␤»
17:39 jnthn Moar's char lookup is known busted :/
17:39 TimToady JVM's anything unicode is known busted :/
17:40 jnthn Just stay in the BMP and all is well :P
17:40 TimToady but there are lots of things that don't go BMP in the night
17:40 jnthn The char lookup thing is thanks to busted code-gen somewhere in the unicode database => c thing, which is a Perl 5 script...
17:41 timotimo http://t.h8.lv/p6bench/2014-02-25-flatten_fastpath.html - i made a thing
17:43 timotimo wow, holy crap
17:43 timotimo the performance is rc-forest-fire tanked *massively* since the release
17:44 PerlJam timotimo: the dips on the _concat graphs are because of string handling inefficiences I take it?
17:44 jnthn timotimo: All the for looping things have gotten slower too
17:44 jnthn timotimo: I suspect your tests are not on the same Rakudo revision...
17:45 jnthn But yeah, we should figure out what hurt forrest fire so badly.
17:45 jnthn That can't just be "for got a bit slower"
17:45 jnthn 'cus it's a huge change rather than a minor one.
17:49 TimToady well, I wouldn't be surprised if it's a laziness vs reify issue
17:49 TimToady having removed the faulty batching logic from mapiter, it falls to other reifys to decide batching policies
17:50 TimToady and doubtless some of those could use more context to decide right
17:50 TimToady range's reify was easy because it has no side effects
17:51 TimToady I'm guess array's reify might need tweaking here
17:52 timotimo jnthn: aye, different rakudo revision
17:52 timotimo didn't wo make fors better?
17:52 timotimo hmm.
17:52 TimToady it's also possible that the X and Z fixes had some unanticipated impact here
17:53 timotimo rc-forest-fire does use X
17:53 timotimo i'll re-run it with a 2014.02 rakudo but with a flatten_fastpath moar.
17:55 jnthn time for dinner...bbl
17:55 timotimo jnthn: could we put a null-check after the malloc for the buffer in flatten_string and cause a garbage collector run?
17:57 timotimo PerlJam: which dip exactly do you mean?
17:57 timotimo PerlJam: that moar gets progressively slower than the other backends?
17:57 PerlJam aye
17:58 timotimo yes, that's the exact cause
17:58 timotimo the fastpath helps mitigate the slowness, but it doesn't improve the algorithmical complexity problem
17:58 colomon This type cannot unbox to a native integer
17:59 colomon in block  at bin/panda:44
17:59 timotimo i'm glad the performance improvement via the fastpath is so noticable
18:05 [particle]1 joined #perl6
18:08 sftp joined #perl6
18:08 skids joined #perl6
18:10 awwaiid_ joined #perl6
18:21 btyler joined #perl6
18:23 timotimo http://t.h8.lv/p6bench/2014-02-25-flatten_fastpath.html - refresh for new data
18:23 _sri joined #perl6
18:23 scottp joined #perl6
18:24 timotimo indeed, using the 2014.02 rakudo (and a master nqp), we get the same performance for "for" stuff as before and the same performance (or a tiny bit beter) for concat stuff
18:26 TimToady so it's not my fixes?
18:26 timotimo no, it is your fixes
18:26 TimToady okay
18:26 timotimo "as before" == "as in 2014.02"
18:27 colomon last thursday, right?
18:27 timotimo er, eqv or eq i guess :P
18:27 timotimo yes
18:27 TimToady I just figured it's still 2014.02 :)
18:27 dmol joined #perl6
18:27 timotimo ;)
18:30 * timotimo does a spectest run with fastpath'd moarvm to determine if a merge to master would be wise
18:32 vendethiel smls: sorry, I'm back. wrt to `foo 1, 2` vs ..., I actually never used P5, so I can't vouch for that. It just seems like I can't tell what'd happen
18:33 timotimo TimToady: need any more specific infos to figure out where the performance regression came from?
18:34 isBEKaml joined #perl6
18:35 TimToady well, cacheing ^$!height X ^$!width speeds it up considerably
18:37 timotimo at some point, the optimizer ought to cheat massively if it sees something like that
18:38 TimToady yeah, but just using state @coords = ^$!height X ^$!width speeds it up about 2.5 times
18:38 TimToady so either X itself, or the reification of X wrt map
18:38 timotimo t/spec/integration/advent2009-day06.rakudo.moar  -  this one either infiniloops or became very, very slow
18:40 [Coke] (unicode versioning) I would prefer we allow the ability to respect certain versions of unicode lexically. 'use unicode v6.2;' - and have a docs on how that can impact the compiler.
18:41 TimToady hypers are probably using zips inside
18:42 timotimo i don't think so
18:42 timotimo let me check
18:43 dalek perl6-roast-data: e1fcd5e | coke++ | / (6 files):
18:43 dalek perl6-roast-data: today (automated commit)
18:43 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/e1fcd5e87f
18:43 timotimo it does use Z
18:44 xinming_ joined #perl6
18:44 [Coke] all distributions failing spec tests as of yesterday.
18:44 TimToady now testing to see if defining X in terms of X, is the problem
18:45 TimToady and whether the [] fix is what's hanging that test
18:45 timotimo thank you kindly
18:45 Rotwang joined #perl6
18:50 timotimo that test file is slowly, slowly growing
18:50 TimToady it's the X/Z to X,/Z, mapping that is causing both the slowdown and the test hang, seemingly
18:50 timotimo ah
18:50 TimToady so there may be some []-bug dependencies in hypers
18:51 timotimo i'm not sure why that follows, but okay
18:52 * TimToady will revert the bare X/Z changes for now till I understand it better
18:52 timotimo i'm glad i accidentally ran the benchmarks with the most current rakudo changes :)
18:53 mavcunha joined #perl6
18:53 TimToady it's also possible there are dependencies on the [] bug for Xop/Zop, but just the bare X/Y revert fixes the test hang
18:55 nwc10 timotimo: interesting results. the fast path stuff looks to be very useful. Interesting to confirm that JVM wins (mostly) for lots of iterations
18:55 nwc10 but very curious that parrot string handling wins, even against the JVM
18:55 timotimo that's jvm for you :)
18:56 TimToady crum, I mixed up some patches, will revert the old fashioned way
18:56 timotimo yes, they're doing something better than us and we should totally steal whatever that is ;)
18:56 timotimo and then improve upon that
18:56 [Coke] jvm string handling is for Java Strings, not Perl 6 Strings, IIRC.
18:56 [Coke] (so, still some work to be done optimizing strings on jvm)
18:56 nwc10 yes, embrace and extend
18:56 timotimo i wonder what caused the caps.t breakage
18:57 nwc10 [Coke]: Moar beat parrot in your report!
18:57 nwc10 yes, failures suck, and "inexcusable" (in that fudge exists)
18:57 dalek rakudo/nom: 5366ae9 | larry++ | src/core/LoL.pm:
18:58 dalek rakudo/nom: hand revert def of X/Z in terms of X,/Z,
18:58 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5366ae9570
18:58 timotimo huh, how did that happen
18:59 TimToady caps depends on unicode props, no?
18:59 timotimo aye, but this is about :alpha
18:59 timotimo <.alpha>, even
18:59 timotimo and <.punct> and <ident>
19:00 TimToady anyway, for now, use X and Z for speed, and X, and Z, for correctness if you have [] args
19:01 timotimo i hope we can get the correctness soon, otherwise that seems like a pretty big WAT
19:04 TimToady yes, I'm hoping the slowdown is not related to correctness, but merely de-fastpathing
19:05 TimToady but I also suspect that if I fix the speed, the hyper test will hang even faster :)
19:05 TimToady s/speed/correctness/
19:06 TimToady I already fixed the speed once :)
19:09 TimToady .oO(SPEED ENFORCED BY RADAR)  "But officer, the sign said speed was enforced here, not lack of speed."
19:10 dmol joined #perl6
19:11 ajr joined #perl6
19:18 dmol joined #perl6
19:30 timotimo speed enforced by toad
19:32 TimToady Mr Toady's Wild Ride
19:33 dmol joined #perl6
19:34 FROGGS Are we there yet?
19:37 TimToady in gaol, you mean?
19:38 pippo joined #perl6
19:39 * FROGGS does not even know what/where gaol is
19:41 nwc10 FROGGS: this: http://en.wiktionary.org/wiki/gaol
19:41 nwc10 and where Mr Toad ends up, IIRC, after committing some or other motoring offence
19:41 nwc10 http://en.wikipedia.org/wiki/The_Wind_in_the_Willows
19:41 FROGGS ahh
19:42 FROGGS see, I learned something today :o)
19:44 telex joined #perl6
19:46 rurban joined #perl6
19:54 lue timotimo: sure, I'll go ahead and recompile MVM/NQP/Rakudo for you, see if it offers improvement :) .
19:56 [Coke] .tell diakopter I need a password reset on host06, as my keys stopped working today (and I promptly forgot the password once I had the keys setup)
19:56 yoleaux [Coke]: I'll pass your message to diakopter.
20:00 timotimo lue: did you see the benchmarks i posted?
20:00 timotimo if the string stuff is at all your bottleneck, it ought to be better now.
20:00 grondilu rn: subset Vector of Array where -> @c { [&&] map {$_ ~~ Numeric}, @c }; multi infix:<*>(Numer
20:00 timotimo except join. join seems completely untouched.
20:01 grondilu ic $x, Vector $v) {}; say 4 * [1, 1]
20:01 camelia niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0m��This macro cannot be used as a function at /tmp/tmpfile line 1:�------> [32mre -> @c { [&&] map {$_ ~~ Numeric}, @c [33m�[31m}; multi infix:<*>(Numer[0m��In parameter declaration, typename 'Numer' must b…»
20:01 camelia ..rakudo-parrot 5366ae, rakudo-jvm 5366ae, rakudo-moar 5366ae: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Invalid typename 'Numer' in parameter declaration.�at /tmp/tmpfile:1�------> [32m~~ Numeric}, @c }; multi infix:<*>(Numer[33m�[31m<EOL>[0…»
20:01 grondilu rn: subset Vector of Array where -> @c { [&&] map {$_ ~~ Numeric}, @c }; multi infix:<*>(Numeric $x, Vector $v) {}; say 4 * [1, 1]
20:01 camelia rakudo-jvm 5366ae: OUTPUT«Circularity detected in multi sub types␤  in any  at gen/jvm/BOOTSTRAP.nqp:901␤  in any  at gen/jvm/BOOTSTRAP.nqp:885␤  in any  at gen/jvm/BOOTSTRAP.nqp:956␤  in sub infix:<*> at gen/jvm/CORE.setting:4019␤  in block  at /tmp/tmpfile:1␤␤»
20:01 camelia ..niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤This macro cannot be used as a function at /tmp/tmpfile line 1:â�¤------> [32mre -> @c { [&&] map {$_ ~~ Numeric}, @c [33mâ��[31m}; multi infix:<*>(Numeric $x, Vector $v[0mâ�¤â�¤Potential difficulties:â�¤  $x is…»
20:01 camelia ..rakudo-moar 5366ae: OUTPUT«Circularity detected in multi sub types␤  in sub infix:<*> at src/gen/m-CORE.setting:4019␤  in block  at /tmp/tmpfile:1␤␤»
20:01 camelia ..rakudo-parrot 5366ae: OUTPUT«Circularity detected in multi sub types␤  in any  at gen/parrot/BOOTSTRAP.nqp:914␤  in any  at gen/parrot/BOOTSTRAP.nqp:884␤  in any  at gen/parrot/BOOTSTRAP.nqp:970␤  in sub infix:<*> at gen/parrot/CORE.setting:4023␤  in block  at /tmp/tmpfile…»
20:01 * [Coke] arglebargles.
20:02 * grondilu is not sure why there should be a circularity here :/
20:03 lue timotimo: what's the difference between with_flatten_fastpath and vanilla_flat_fastpath ?
20:06 timotimo the first of the two has TimToady++'s not quite optimal Z and X changes
20:07 timotimo vanilla_ is based on rakudo/2014.02 directly
20:09 lue I just pulled latest moar, nqp, and rakudo, sooo... :)
20:15 timotimo the very much latest rakudo has the performance-critical parts of the Z and X changes reverted
20:32 Mouq joined #perl6
20:34 Mouq Has anyone else looked at the failures in S05-capture/caps.t?
20:34 treehug88 joined #perl6
20:40 berekuk joined #perl6
20:42 Gothmog_ joined #perl6
20:42 Vlavv joined #perl6
20:42 Mouq r: List ~~ Positional
20:42 Mouq p6: say List ~~ Positional
20:42 Mouq Is camelia out sick?
20:42 camelia rakudo-parrot 5366ae, rakudo-jvm 5366ae, rakudo-moar 5366ae: ( no output )
20:42 camelia rakudo-parrot 5366ae, rakudo-jvm 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«True␤»
20:43 xfix joined #perl6
20:53 xfix joined #perl6
20:54 masak p6: say "is camelia out sick?"
20:54 camelia rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«is camelia out sick?␤»
20:54 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
20:54 colomon :\
20:54 masak guess that answers it.
20:56 Mouq p6: say "a b c d" ~~ /[(\w) \s*]+/
20:56 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
20:56 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«「a b c d」␤ 0 => 「a」␤ 1 => 「b」␤ 2 => 「c」␤ 3 => 「d」␤␤»
20:56 camelia ..niecza v24-109-g48a8de3: OUTPUT«「a b c d」␤ 0 => 「a」␤ 0 => 「b」␤ 0 => 「c」␤ 0 => 「d」␤␤»
20:57 Mouq ^^ something got borked here
20:57 Guest23735 joined #perl6
20:57 Mouq I'm kinda surprised that we only have one failing test file because of this, actually
21:00 timotimo oh my
21:00 timotimo p6: "a b c d" ~~ /[(\w) \s*]+/; say $0; say $1; say $2;
21:00 camelia rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«「a」␤ 「b」␤ 「c」␤ 「d」␤␤(Any)␤(Any)␤»
21:00 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:00 * Mouq is more confused now
21:00 timotimo it seems to only be the string output?
21:01 masak Mouq: there's only $0.
21:01 timotimo like, the stringification of the match object?
21:01 timotimo oh, huh.
21:01 Mouq timotimo: No, this has to do with how it .lists...
21:01 timotimo hm, maybe
21:01 Mouq Or the output of that
21:01 Mouq anyway
21:02 masak p6: "a b c d" ~~ /[(\w) \s*]+/; say $0.perl
21:02 camelia rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«(Match.new(orig => "a b c d", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new()), Match.new(orig => "a b c d", from => 2, to => 3, ast => Any, list => ().list, hash => EnumMap.new()), Match.new(orig => "a b c d", …»
21:02 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:02 camelia ..niecza v24-109-g48a8de3: OUTPUT«(#<match from(0) to(1) text(a) pos([].list) named({}.hash)>, #<match from(2) to(3) text(b) pos([].list) named({}.hash)>, #<match from(4) to(5) text(c) pos([].list) named({}.hash)>, #<match from(6) to(7) text(d) pos([].list) named({}.hash)>).list.item␤»
21:03 Mouq p6: "a b c d" ~~ /[(\w) \s*]+/; say $/.list.perl
21:03 camelia niecza v24-109-g48a8de3: OUTPUT«((#<match from(0) to(1) text(a) pos([].list) named({}.hash)>, #<match from(2) to(3) text(b) pos([].list) named({}.hash)>, #<match from(4) to(5) text(c) pos([].list) named({}.hash)>, #<match from(6) to(7) text(d) pos([].list) named({}.hash)>).list.item…»
21:03 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:03 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«((Match.new(orig => "a b c d", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new()), Match.new(orig => "a b c d", from => 2, to => 3, ast => Any, list => ().list, hash => EnumMap.new()), Match.new(orig => "a b c d",…»
21:04 masak p6: "a b c d" ~~ /[(\w) \s*]+/; say $/.elems
21:04 camelia rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«1␤»
21:04 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:04 Mouq p6: "a b c d" ~~ /[(\w) \s*]+/; say $/.pairs
21:05 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:05 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0 => Match.new(orig => "a b c d", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new()) 1 => Match.new(orig => "a b c d", from => 2, to => 3, ast => Any, list => ().list, hash => EnumMap.new()) 2 => Match.new(orig =>…»
21:05 camelia ..niecza v24-109-g48a8de3: OUTPUT«0 => (#<match from(0) to(1) text(a) pos([].list) named({}.hash)>, #<match from(2) to(3) text(b) pos([].list) named({}.hash)>, #<match from(4) to(5) text(c) pos([].list) named({}.hash)>, #<match from(6) to(7) text(d) pos([].list) named({}.hash)>).list.…»
21:07 masak r: my %h = foo => [1, 2, 3]; for %h<foo> { .say }
21:07 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:07 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«1 2 3␤»
21:07 masak r: my %h = foo => [1, 2, 3]; for %h<foo>[] { .say }
21:07 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:07 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«1␤2␤3␤»
21:07 masak fary nuff.
21:07 zakharyas joined #perl6
21:08 Mouq p6: "a b c d" ~~ /[(\w) \s*]+/; for $/.pairs { .key.say }
21:08 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:08 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0␤1␤2␤3␤»
21:08 camelia ..niecza v24-109-g48a8de3: OUTPUT«0␤»
21:09 rurban joined #perl6
21:09 Mouq Ok, the problem is TimToady++'s change to List.pairs
21:10 Mouq Or. Maybe. I often feel I speak too soon
21:10 Mouq But it's a possibility
21:12 lue timotimo: this may be just me perceiving wrong, but so far the backlink generation step feels more constant (progress indicator ticking at a constant rate), and also slower.
21:12 Mouq p6: "a b c d" ~~ /[(\w) \s*]+/; for $/.values { .say }
21:12 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:12 camelia ..niecza v24-109-g48a8de3: OUTPUT«「a」␤ 「b」␤ 「c」␤ 「d」␤␤»
21:12 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«「a」␤␤「b」␤␤「c」␤␤「d」␤␤»
21:13 Mouq p6: "a b c d" ~~ /[(\w) \s*]+/; for $/.list.values { .say }
21:13 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:13 camelia ..niecza v24-109-g48a8de3: OUTPUT«「a」␤ 「b」␤ 「c」␤ 「d」␤␤»
21:13 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«「a」␤␤「b」␤␤「c」␤␤「d」␤␤»
21:13 * lue suspects running on the JVM would be a good comparator, as opposed to compiling an un-branched moar
21:13 timotimo lue: slower? :(
21:14 timotimo perhaps it'd be better to use rakudo-2014.02 instead of master?
21:14 timotimo but i don't want to use up so much moar of your time
21:14 timotimo especially since i won't have perl6 tuits for most of tomorrow anywa
21:14 timotimo anyway
21:14 lue timotimo: I suspect, if my perception is right, that stuff that would've blazed by isn't, and stuff that would've taken a while is faster. (constant, but at a seemingly slower rate than the fast stuff)
21:15 timotimo ho-hum.
21:15 timotimo anyway, i would be glad if someone could review, spectest and perhaps merge my fastpath branch for moarvm tomorrow
21:15 timotimo i'm off to bed
21:15 timotimo gnite!
21:15 Mouq night timotimo
21:15 Mouq *!
21:15 Mouq :P
21:17 lue timotimo: it's fine, the only big thing left is to use the fragments in backlinks, and speediness of various steps is just as important at this point :) .
21:18 timotimo i'm ... not sure how to interpret that?
21:19 Rotwang joined #perl6
21:27 lue I get the feeling it's about time I switched to panda/eleven : "This type cannot unbox to a native integer" :(
21:32 masak 'night, #perl6
21:32 lue Or not, guess that's fine.
21:32 TimToady o/
21:32 lue ♞ masak o/
21:33 colomon \o
21:33 lue "Could not find Shell::Command in any of:" from panda/eleven :/
21:37 virtualsue joined #perl6
21:38 Mouq r: ((1,2),).pairs
21:38 camelia rakudo-parrot 5366ae, rakudo-moar 5366ae: ( no output )
21:38 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:40 lue any way I can install either panda or panda/eleven ? I'm getting issues with the latest of everything.
21:40 rurban joined #perl6
21:42 Mouq Here's the problem:
21:42 Mouq r: ((1,2),).pairs.say
21:42 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:42 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0 => 1 1 => 2␤»
21:42 Mouq Used to be 0 => $(1, 2)
21:43 Mouq Dunno which is correct, but the way things are breaks things
21:43 erkan joined #perl6
21:43 erkan joined #perl6
21:43 xfix joined #perl6
21:44 lue depends on if parcel-in-parcel is supposed to flatten there.
21:44 Mouq p6: : ((1,2),).pairs.say
21:44 camelia niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0m��Bogus statement at /tmp/tmpfile line 1:�------> [32m<BOL>[33m�[31m: ((1,2),).pairs.say[0m��Parse failed��»
21:44 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:44 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Bogus statementâ�¤at /tmp/tmpfile:1â�¤------> [32m<BOL>[33mâ��[31m: ((1,2),).pairs.say[0mâ�¤    expecting any of:â�¤        statement listâ�¤        prefix or ter…»
21:44 Mouq p6: ((1,2),).pairs.say
21:44 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:44 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«0 => 1 1 => 2␤»
21:45 Mouq Huh.
21:46 xinming joined #perl6
21:46 Mouq p6: [(1,2),].pairs.say
21:46 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:46 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«0 => 1 1 => 2␤»
21:46 Mouq p6: ([1,2],).pairs.say
21:46 camelia rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«0 => [1, 2]␤»
21:46 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
21:48 dalek rakudo/nom: 0de140a | larry++ | src/core/metaops.pm:
21:48 dalek rakudo/nom: Xop and Zop could clobber input array
21:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0de140a54e
21:49 TimToady (also fixed tabbing)
21:50 lue Mouq: S07: "A Parcel is also Positional, and uses flattening context for list operations such as .[] and .elems."
21:50 lue Don't know if .pairs is one such method though.
21:50 lue TimToady: is .pairs supposed to flatten a parcel? (Or rather, is .pairs considered a "list operation" ?)
21:51 Mouq lue: I think the problem lies within Capture.pm
21:51 Mouq lue: Because I think current behavior wrt .pairs is correct
21:52 [Coke] moritz: ping.
21:53 tgt joined #perl6
21:57 _thou joined #perl6
21:59 rurban joined #perl6
22:02 rurban1 joined #perl6
22:04 bjz joined #perl6
22:05 bjz joined #perl6
22:06 Mouq r: ((5,4,3),(1,2,(6,3),6),(9,2),1).list.lol.list.perl.say # bug?
22:06 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:06 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«LoL.new(ListIter.new())␤»
22:11 lue Hm, I kinda feel like writing a thing for the docs about parameters (introducing you to gradually more complex things with them); should I improve "Signature Literals" in the signature doc, make a separate doc, or pull out the "Signature Literals" section and improve that?
22:11 * Mouq fixed it!
22:11 lue \o/
22:11 Mouq Oh.
22:12 Mouq Nope -_- sorry
22:14 hoverboard joined #perl6
22:14 Mouq I was pretty sure s/List/Array/ here would do it https://github.com/rakudo/rakudo/blob/nom/src/core/Cursor.pm#L26
22:18 Mouq r: say nqp::islist((1,))
22:18 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:18 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0␤»
22:18 Mouq r: say nqp::islist([1,])
22:18 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:18 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0␤»
22:19 Mouq r: say [1,].WHAT
22:19 camelia rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«(Array)␤»
22:19 camelia ..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:19 jnthn Mouq: nqp::islist means "does it have VMArray REPR", really
22:19 Mouq r: say nqp::islist([1,].list)
22:19 jnthn Or "is it an RPA" on Parrot
22:20 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:20 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0␤»
22:20 mavcunha joined #perl6
22:20 jnthn You're never going to get it to say yes to a Perl 6 Array or List, as those are P6opaques.
22:20 Mouq jnthn: Ok, thank you
22:21 Mouq r: (1,2).Array.perl.say
22:21 camelia rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:21 camelia ..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«Array.new(1, 2)␤»
22:21 * lue suspects the "lib" directory of perl6/doc will before long need more subdirs :)
22:29 TimToady spectesting a fix for [] bug in bare X and Z now
22:30 TimToady sure seems like .flat should be testing for Scalar wrappers and listifying instead of flattening
22:32 TimToady also, **@lol is useless, have to use |lol instead
22:34 * TimToady is thinking that **@lol ought to (optionally?) have the .flat method (including a Scalar test) built in at the second level
22:35 TimToady also, we're doing a lot of list cloning
22:36 TimToady **@lol is copy, maybe
22:42 TimToady p6: say rand
22:42 camelia rakudo-moar 0de140: OUTPUT«0.537522225703911␤»
22:42 camelia ..rakudo-jvm 0de140: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:42 camelia ..niecza v24-109-g48a8de3: OUTPUT«0.79203566200660336␤»
22:42 camelia ..rakudo-parrot 0de140: OUTPUT«0.349981961396651␤»
22:42 TimToady r-j bug?
22:42 TimToady j: say defined rand
22:42 camelia rakudo-jvm 0de140: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:42 TimToady j: say 42
22:42 camelia rakudo-jvm 0de140: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
22:42 TimToady just in a bad state, i guess
22:43 lue yeah, r-j is busted for camelia :(
22:44 stevan_ joined #perl6
22:45 lizmat joined #perl6
22:46 xinming_ joined #perl6
22:49 lue What the \foo type of variable called again? "sigilless" ?
22:50 TimToady that's one name for 'em
22:50 TimToady or it's a parcel binding
22:50 TimToady my \foo = is a form of SSA
22:51 TimToady insofar as it allows only one alias
22:51 jnthn That's the thing r-j tends to give when the evalserver fails
22:51 TimToady so "alias" is another term for it
22:54 ashleydev SSA?
22:54 ashleydev (it's not in the glossary)
22:55 lue "Static single assignment", I believe.
23:03 dalek roast: 20f286c | larry++ | S03-metaops/reduce.t:
23:03 dalek roast: test assumes [] bug, change to <>
23:03 dalek roast: review: https://github.com/perl6/roast/commit/20f286cc91
23:05 dalek rakudo/nom: 76f1e0d | larry++ | src/core/LoL.pm:
23:05 dalek rakudo/nom: do the Don't Flatten Scalars jig for bare X and Z
23:05 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/76f1e0d8af
23:10 jnthn TimToady: Instead of:
23:10 jnthn if lol[0].VAR.WHAT === Scalar {
23:10 jnthn You may want
23:10 jnthn if nqp::iscont(lol[0]) {
23:10 jnthn This has the benefit of being a bunch faster, but also will cope with the case where we have, say, a Proxy.
23:11 jnthn Or a mixed-in-to Scalar.
23:13 TimToady as I was saying, I wish we could build some of this into .flat or **@lol
23:13 TimToady so I don't have to plate the boiler all over
23:14 jnthn Ah, sorry. I'm barely following; bogged down with material writing.
23:14 TimToady as it is, **@lol is relatively useless
23:14 jnthn Then it probably wants to change somehow :)
23:14 TimToady but I can try your boilerplate instead :)
23:15 TimToady (for now)
23:15 TimToady thanks
23:15 jnthn np :)
23:15 jnthn Figured I'd read a commit in a spare moment. :)
23:23 lue r: sub foo(:v(:$verbose)) { say $verbose.perl }; foo(:verbose(1), :v(2));
23:23 camelia rakudo-jvm 0de140: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
23:23 camelia ..rakudo-parrot 0de140: OUTPUT«Unexpected named parameter 'v' passed␤  in sub foo at /tmp/tmpfile:1␤  in block  at /tmp/tmpfile:1␤␤»
23:23 camelia ..rakudo-moar 0de140: OUTPUT«␤  in sub foo at /tmp/tmpfile:1␤  in block  at /tmp/tmpfile:1␤␤»
23:23 lue ^ moar has a blank message for some reason.
23:31 dalek rakudo/nom: 974d00b | larry++ | src/core/ (2 files):
23:31 dalek rakudo/nom: simplify using nqp::iscont as suggested by jnthn++
23:31 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/974d00b03a
23:38 tgt joined #perl6
23:50 virtualsue joined #perl6
23:51 rurban joined #perl6

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

Perl 6 | Reference Documentation | Rakudo