»ö« 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:04
pippo left,
pippo joined
|
|||
pippo | p: say "Test"; | 00:05 | |
camelia | rakudo-parrot 299d70: OUTPUT«Test» | ||
00:05
raiph joined,
pippo left
00:08
treehug88 left
00:28
treehug88 joined
00:31
Mouq left
00:36
pdcawley_ joined
00:37
pdcawley left
00:49
raiph left
00:57
hoverboard left
01:00
benabik joined
01:04
panchiniak left
01:06
hoverboard joined
01:10
pmurias left
|
|||
BenGoldberg | rn: say "\c[PILE OF POO]".ord.fmt('%x') | 01:11 | |
camelia | rakudo-jvm 299d70: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnrecognized character name PILE OF POOat /tmp/tmpfile:1------> say "\c[PILE OF POO⏏]".ord.fmt('%x')» | ||
..rakudo-moar 299d70: OUTPUT«10176b» | |||
..rakudo-parrot 299d70, niecza v24-109-g48a8de3: OUTPUT«1f4a9» | |||
lue | hang on, why does canonpath put an s:g in a while loop conditional? Shouldn't the :g part have that covered? | 01:15 | |
01:21
ph1ur3 joined
|
|||
TimToady | rn: say "\c[PILE OF POO]".ord.base(16) | 01:23 | |
camelia | rakudo-moar 299d70: OUTPUT«10176B» | ||
..rakudo-jvm 299d70: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnrecognized character name PILE OF POOat /tmp/tmpfile:1------> say "\c[PILE OF POO⏏]".ord.base(16)» | |||
..rakudo-parrot 299d70, niecza v24-109-g48a8de3: OUTPUT«1F4A9» | |||
TimToady | rn: say "\x1F4A9" | 01:24 | |
camelia | rakudo-parrot 299d70, rakudo-jvm 299d70, rakudo-moar 299d70, niecza v24-109-g48a8de3: OUTPUT«💩» | ||
TimToady | m: say "\x10176b" | 01:25 | |
camelia | rakudo-moar 299d70: OUTPUT«» | ||
BenGoldberg | rn: say "\c[PILE OF POO]" | 01:26 | |
camelia | rakudo-jvm 299d70: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnrecognized character name PILE OF POOat /tmp/tmpfile:1------> say "\c[PILE OF POO⏏]"» | ||
..rakudo-parrot 299d70, niecza v24-109-g48a8de3: OUTPUT«💩» | |||
..rakudo-moar 299d70: OUTPUT«» | |||
01:26
lostguy joined
|
|||
lostguy | hello | 01:26 | |
BenGoldberg | hi | ||
lue | .u U+10176B | 01:27 | |
yoleaux | No characters found | ||
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? | ||
TimToady | did you configure with the jvm backend? | 01:28 | |
perl Configure.pl --backends=ALL --gen-nqp --gen-parrot --gen-moar | 01:29 | ||
that's what I use | |||
but then it makes all three bakends | |||
lostguy | what is j-all from? | 01:30 | |
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 | |
but it sounds like your Makefile is borked | |||
did you just say "make" | |||
to invoke it? | 01:32 | ||
lostguy | yea | ||
TimToady | are you using HEAD from github? | ||
lostguy | pretty sure4 | ||
TimToady | are you trying to make all the backends? | ||
what did you use for a Configure command? | 01:33 | ||
01:33
denis_boyun__ left
|
|||
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 | ||
lostguy | i pretty do it the linux way :P command prompt | 01:35 | |
TimToady | are you on Linux? | ||
01:35
mavcunha_ left
|
|||
lostguy | no :P | 01:35 | |
windows | |||
01:36
kaare_ left
|
|||
TimToady | well, we certainly have people making it on windows, including jnthn++ | 01:36 | |
lostguy | i think i gotta add more PATH variables :P | ||
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 | ||
TimToady | maybe Configure is stupid about some o fthe semantic corners | ||
you can probably get a gmake from somewhere | |||
but yeah, maybe pathness is the issue | 01:38 | ||
lostguy | i have a make | ||
i have cgywin pathed with gnu make | |||
01:38
treehug88 left
|
|||
TimToady | is your cygwin somehow changing the path on you? | 01:38 | |
I don't think anyone here is actually building under cygwin | 01:39 | ||
if that's what you're attempting | |||
are you using a cygwin shell? | |||
TimToady feels like he's playing 20 questions here... | 01:40 | ||
01:40
mavcunha joined,
telex left
|
|||
lostguy | lol :P | 01:40 | |
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 | ||
lostguy | just missing a few key thinfs | ||
01:42
telex joined
|
|||
lostguy | i have an idea how to get it working tho | 01:42 | |
im making a PATH variable to nmake.exe and see if that helps | 01:43 | ||
01:57
kbaker joined
02:06
_thou left
02:07
FROGGS_ joined
02:10
FROGGS left
02:22
gfldex joined
|
|||
dalek | ast: 26ca4e3 | larry++ | S03-metaops/cross.t: cross test for [] was slightly wrong stringizing a list puts an extra space in the middle |
02:28 | |
02:31
gfldex left
02:32
gfldex joined
02:41
klapperl_ joined
02:42
treehug88 joined
02:44
treehug88 left
02:45
klapperl left
02:47
btyler joined
02:50
kaleem joined
03:07
kbaker left
03:13
dayangkun joined
|
|||
dalek | kudo/nom: e6c7baf | larry++ | src/core/metaops.pm: [1,2] Xop <a b> now treats [] as item |
03:21 | |
ast: 4658683 | larry++ | S03-metaops/cross.t: [1,2] Xop <a b> no longer todo |
03:22 | ||
TimToady | someone with an rt login can close RT74072 now | 03:25 | |
03:27
lostguy left
03:35
hoverboard left,
water joined,
water is now known as hoverboard
03:45
daniel-s_ left
03:46
daniel-s_ joined
03:51
vendethiel left
03:52
vendethiel joined
04:09
ph1ur3 left
04:10
jnap left
|
|||
lue | Looking at File::Find::find, I *think* the culprit for its slowness is one of the reify methods. | 04:24 | |
04:31
rurban joined
04:34
kaleem left
04:35
BenGoldberg left
04:41
jnap joined
04:45
jnap left
04:48
bjz left
|
|||
dalek | kudo/nom: dbbfc65 | larry++ | src/core/ (2 files): define X in terms of X, |
04:53 | |
TimToady | X now has the correct semantics with [1,2] as well | 04:54 | |
04:55
bjz joined
|
|||
TimToady | next, fix Z which has the same problems | 04:55 | |
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» | ||
dalek | kudo/nom: 97d6149 | larry++ | src/core/LoL.pm: define Z in terms of Z, |
05:15 | |
05:18
btyler left
05:33
araujo left
05:34
araujo joined
05:41
jnap joined
05:45
kaleem joined
05:46
jnap left,
rurban left
06:17
Mouq joined
06:20
xinming_ left
|
|||
raydiak | if I attach files to an e-mail bug report, will they be added to the ticket it creates? | 06:23 | |
FROGGS_ | RT #74072 | 06:32 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=74072 | ||
FROGGS_ | TimToady: done (closed it) | 06:34 | |
raydiak: I think so | |||
raydiak: just test it :o) | |||
06:35
bjz left
|
|||
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) | ||
yoleaux | FROGGS_: I'll pass your message to lostguy. | ||
FROGGS_ | raydiak++ | ||
I already wanted to ask hoelzro if he can golf it down some more | |||
raydiak: then it might be the same bug as RT #121298 ? | 06:37 | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=121298 | ||
raydiak | nope, something different | ||
a multi sub isn't being imported under certain circumstances | 06:38 | ||
FROGGS_ | raydiak: ohh | ||
on all backends? | |||
raydiak | I'll try it on moar...what's the --target= | ||
FROGGS_ | mbc | 06:39 | |
raydiak | k, hold on | ||
FROGGS_ | it is likely that I am able to fix you sub-export/import bug :o) | ||
raydiak | oh that'd be much nicer than leaving the tests commented out :) | 06:41 | |
06:42
avuserow3 is now known as avuserow
|
|||
raydiak | it's either taking a waaaay long time, or the process is hung | 06:43 | |
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 | ||
raydiak | good morning | ||
grondilu | a very basic Linear Algebra module using subtypes: github.com/grondilu/linalg | 06:45 | |
06:45
bjz joined
|
|||
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 | |
06:47
denisboyun joined
|
|||
raydiak | grondilu++ | 06:49 | |
06:59
Mouq left
|
|||
raydiak | FROGGS_: RT #121319 | 07:02 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=121319 | ||
07:05
ph1ur3 joined
07:06
hoverboard left
07:07
scottp joined
07:09
ph1ur3 left
07:12
skids left
07:17
xinming joined,
sftp left
07:26
xinming left
07:27
xinming joined
07:28
FROGGS_ left
07:29
denisboyun left
|
|||
masak | morning, #perl6 | 07:49 | |
mathw | morning masak | 07:52 | |
timotimo | morning, morning | 07:55 | |
07:55
FROGGS joined
|
|||
mathw | lo | 07:55 | |
masak | hi | ||
TimToady | ho | 07:58 | |
FROGGS | fa | 08:03 | |
08:04
denis_boyun joined
08:06
sftp joined
|
|||
moritz | hey | 08:08 | |
timotimo | lue: did the callgrind show that MVM_string_flatten takes up a lot of time? | 08:19 | |
or MVM_get_codepoint_at_nocheck? | |||
dalek | ast: 13d65fe | larry++ | S03-metaops/zip.t: list infix reductions no longer flatten So that, for instance, [Z~] (1,2,3), <a b c> produces 1a 2b 3c. This is necessary now that X and Z ops no longer violate [1,2,3] itemness. |
08:22 | |
timotimo | do these tests pass already on rakudo? | 08:23 | |
FROGGS | yes, according to the clogs | ||
timotimo | yays | 08:24 | |
praise the toad! | |||
FROGGS | *g* | ||
TimToady | well, the fix for that particular thing is not in yet | 08:25 | |
FROGGS | O.o | ||
masak | TimToady: it's very nice to see you on the implementor part of the fence. | ||
TimToady | I have the fix for [Z~] already, but am trying to coax [\Z~] into working with non-flattened input | 08:26 | |
08:28
mavcunha left
08:33
tgt joined
08:34
[Sno] joined
08:36
dmol joined
|
|||
dalek | kudo/nom: da8c1c2 | larry++ | src/ (2 files): list infix reductions no longer flatten Since we fixed X and Z metaops to not violate Scalar containers, we have to be able to pass a list of parcels to [Xop] and [Zop] and have each parcel treated as a separate list. The triangle forms also work (slowly, since they have to recalculate each stage from the start), but there is an unbox warning I don't understand yet. |
08:36 | |
masak | TimToady++ | 08:37 | |
timotimo | i haven't ever seen an "unbox warning" o_O | 08:39 | |
dalek | ecs: ea21cb2 | larry++ | S03-operators.pod: doc that [Xop] now does not flatten |
08:41 | |
TimToady | > say [\X+] (1,2), (3,4), (5,6) | 08:44 | |
This type cannot unbox to a native integer | |||
1 3 6 10 15 21 | |||
timotimo | huh | ||
... why is that not fatal? | 08:45 | ||
08:45
skids joined
|
|||
timotimo | i can't wait until that timo person finally completes "parameterized builds" for perl6-bench | 08:45 | |
then i won't have to hack around the components.json to get the latest moar to test on :| | |||
TimToady | but I think the cross and zip metaops are doing some weird error trapping somewhere | 08:47 | |
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 | |||
moritz | TimToady: on all backends? | ||
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 | ||
TimToady | anyway, I think I'm done for the night now | 08:50 | |
probably done enough damage for one day | |||
timotimo | thanks for stopping by, TimToady | ||
TimToady | strange, I thought I lived here... | 08:51 | |
anyhoo, g'nite & | |||
08:55
SamuraiJack_ joined
|
|||
FROGGS | gnight TimToady | 08:55 | |
08:57
sqirrel joined,
tgt left
08:58
denis_boyun left
09:07
SamuraiJack_ left
|
|||
masak | g'nait, TimToady | 09:10 | |
09:10
SamuraiJack_ joined
09:23
smls joined
09:25
dakkar joined
09:38
xinming_ joined
|
|||
jnthn | o/ | 09:41 | |
09:41
xinming left
|
|||
timotimo | ohai jnthn | 09:41 | |
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:42 | ||
jnthn | timotimo: Givne that's all we likely end up with these days, probably makes sense. | 09:44 | |
timotimo | mhm | ||
that should make a good dent into the whole performance situation | 09:45 | ||
hopefully lue will hit that fast path with the pod work | |||
09:53
zakharyas joined
09:56
xinming_ left
09:57
xinming joined
10:00
mavcunha joined
10:02
xinming_ joined
10:04
xinming left
10:08
Ven joined
10:11
xinming joined
10:14
xinming left,
xinming_ left
|
|||
nwc10 | timotimo: rakudo/nqp/MoarVM HEAD pass all (own) tests on 32 bit linux for me. | 10:17 | |
timotimo | \o/ | ||
FROGGS | cool! | ||
timotimo | i saw a few valgrind messages pop up the other day, btw | ||
nwc10 | based on the commit message on MoarVM HEAD, I suspect that this is useful | ||
timotimo | didn't look deeply into it, but ... | ||
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" | ||
so i had to multiply by 4 in the right places | |||
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
|
|||
timotimo | okay, afk for about 4 hours now | 10:22 | |
tadzik | linux is funny: github.com/torvalds/linux/blob/mas...ize.c#L698 | 10:23 | |
10:26
smls left,
smls joined
|
|||
masak | tadzik: perfectly good explanations in the HN discussion. | 10:26 | |
tadzik: still a pretty badly named variable. | 10:27 | ||
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:33 | ||
10:35
zaydon joined
10:37
zaydon left
|
|||
tadzik | python's ecosystem made me appreciate how awesome CPAN is | 10:38 | |
moritz | there's more than one way to install modules? :-) | ||
tadzik | to name them, too :) | ||
ImportError: module MysqlDB not found. What's the name of the module to install? Of course! It's python-mysql! | 10:39 | ||
10:39
berekuk joined
|
|||
tadzik | and duckduckgoogle is the only way I know to map one to the other | 10:39 | |
10:39
xinming joined
|
|||
tadzik | compare that to Perl, where you can almost pipe the error message to cpanm | 10:39 | |
10:40
fhelmberger joined
|
|||
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 | ||
jnthn | "Would you like me to install that for you?" :) | ||
tadzik | or you could write a module that catches exceptions and installs modules | 10:42 | |
perl6 -MAutoInstall foo.pl | |||
10:43
salv0 joined
|
|||
jnthn | ooh :) | 10:43 | |
tadzik | seems perfectly doable too | ||
jnthn | So long as the user asks for it, it's a nice thing. | ||
tadzik | as long as a module can setup a global exception handler somehow | ||
10:45
alc joined
|
|||
jnthn | The debugger does it, though it's a hack. :) | 10:45 | |
10:45
jnap joined
|
|||
tadzik | nothing wrong with a good hack :) | 10:45 | |
10:47
xinming left
10:49
mavcunha left,
jnap left
10:51
mavcunha joined
10:53
donaldh left
10:54
xinming joined
10:55
donaldh joined
11:01
xinming_ joined
|
|||
tadzik | yay, TPF is in GSoC | 11:01 | |
11:04
[Sno]_ joined,
xinming left
11:05
denisboyun joined
11:06
klapperl_ left,
klapperl joined,
[Sno] left,
[Sno]_ is now known as [Sno]
11:07
xinming_ left
|
|||
FROGGS | tadzik: that would just be a CompUnitRepo with a low priority | 11:09 | |
11:16
xinming joined,
kaleem left
11:21
xinming left
11:22
xinming joined
11:26
kaleem joined,
kaleem_ joined
11:27
sqirrel left
11:28
kaleem left
11:33
xinming left,
xinming joined
11:36
salv0 left
11:38
salv0 joined
11:39
salv0 left
11:45
salv0 joined
11:52
daniel-s__ joined
11:53
daniel-s_ left
11:55
[particle] joined
12:00
alc left
12:03
salv0 left
12:05
virtualsue joined
12:06
SamuraiJack_ left
|
|||
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,
SamuraiJack_ joined,
salv0 joined
12:27
SamuraiJack__ joined,
SamuraiJack_ left
12:28
klapperl left
12:30
klapperl joined
12:53
treehug88 joined
12:55
spider-mario joined
12:56
aindilis left,
aindilis joined
13:01
rindolf joined
13:09
mavcunha left
13:15
SamuraiJack__ left,
SamuraiJack__ joined
13:17
ph1ur3 joined
13:25
rindolf left
13:31
treehug88 left
13:32
JimmyZ left
13:33
JimmyZ joined
13:38
dayangkun left
13:40
kbaker joined,
ph2ur3 joined
13:43
ph1ur3 left
13:46
ajr joined,
ajr is now known as Guest52517,
Guest52517 is now known as ajr_
13:48
jnap joined
13:52
jnap left
13:53
FROGGS left,
jnap joined
14:00
isBEKaml joined
|
|||
isBEKaml | Oh, TimToady++ on the implementers' side of the garden since the days of STD.pm6 :-) | 14:04 | |
14:04
virtualsue left
|
|||
timotimo reached his destination | 14:09 | ||
nwc10 | rah! | 14:10 | |
did the car reach it too? | |||
14:10
hoverboard joined
|
|||
isBEKaml | timotimo: Nice work on the p6weekly. Keep going! | 14:11 | |
timotimo | i'll try :) | ||
14:12
xragnar_ joined,
xragnar is now known as Guest58926,
Guest58926 left,
xragnar_ is now known as xragnar
|
|||
isBEKaml | timotimo++ | 14:13 | |
14:19
_daniel-s__ joined
14:20
daniel-s__ left
14:23
aindilis left
14:30
rindolf joined
14:34
ph2ur3 left
14:36
SamuraiJack__ left,
araujo left,
araujo joined
14:37
virtualsue joined
14:40
btyler joined
|
|||
TimToady | r: say [X~] <1 2 3>, <a b c> | 14:45 | |
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 | |
..rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«1a 1b 1c 2a 2b 2c 3a 3b 3c» | |||
rindolf | Hmmm.... | ||
Ah, works in the JVM - does not in parrot. | 14:47 | ||
TimToady | r: say [\X~] <1 2 3>, <a b c> | ||
camelia | rakudo-moar da8c1c: OUTPUT«===SORRY!===This type cannot unbox to a native integer» | ||
..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…» | |||
..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…» | |||
[Coke] | TimToady: do you care to be able to close RTs? | 14:48 | |
TimToady | ooh, a backtrace | ||
[Coke]: seems like a reasonable thing | |||
TimToady has no idea whether he has an account there | 14:49 | ||
r: say [10,20] Z* 1,2 | 14:50 | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2» | ||
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
|
|||
TimToady | god | 14:51 | |
*oo | |||
14:52
hoverboard left
14:53
SamuraiJack__ joined,
araujo left
|
|||
[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:53
water is now known as hoverboard
|
|||
TimToady | [Coke]: no idea | 14:54 | |
[Coke] sees his shipment is coming from fort worth, and wonders if pmichaud is back home. | |||
TimToady: eh. you have a horde of people willing to close tickets, NBD. | |||
TimToady++ | |||
smls | ++TimToady: rosettacode.org/wiki/Brace_expansion#Perl_6 appears to be ironclad now :) | 14:55 | |
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) | |||
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 | ||
timotimo: I'm using the rakudo-moarvm 2014.01-2 AUR package | 14:57 | ||
jnthn++ # releasing Moar | |||
spider-mario # making Arch Linux packages for Rakudo and Moar available | |||
timotimo | oh?! | ||
smls | spider-mario++ I meant | 14:58 | |
spider-mario | thanks :p | ||
14:59
FROGGS joined
15:00
stevan_ joined
15:01
_thou joined
15:02
stevan__ left
15:04
dalek left,
dalek joined,
ChanServ sets mode: +v dalek
15:06
kst`` is now known as kst
15:07
rurban joined
|
|||
timotimo now has an opportunity to do reverse debugging | 15:09 | ||
moritz | what's "reverse debugging"? | 15:13 | |
"I know this piece of code is wrong; what harm does it do"? | |||
timotimo | the ability to run the program backwards and forwards :) | ||
moritz | oh | 15:14 | |
I know that as "time-travelling debugging" | |||
timotimo | ah, aye. | ||
hm | |||
rurban | be sure you a SSD on /tmp. it can get superslow | ||
timotimo | i wonder why nqp still does the "copy these files over ten times" thing | ||
rurban: i'm doing it on nqp, not rakudo. it was fine :) | 15:15 | ||
and i was able to get very close to the position of the bug | |||
benabik generally expects a RAMFS on /tmp these days. | |||
smls | yeah, on Arch Linux it's in RAM | 15:16 | |
(by default) | |||
benabik | Although apparently not on OS X. Hm. Boo, Apple, boo. | ||
rurban | nqp-p -j or -m? | ||
15:16
ajr_ left
|
|||
timotimo | -m in this case | 15:19 | |
my flatten_string fastpath seems to have successfully built rakudo-moar now | 15:21 | ||
lue: could you be so kind as to test it? the branch is called "flatten_fastpath" | 15:22 | ||
15:23
d4l3k_ joined
15:24
dalek left
15:25
d4l3k_ is now known as dalek
15:29
treehug88 joined
15:30
sqirrel joined
|
|||
Ven | so, perl 6 got in GSoC :D ? | 15:32 | |
moritz | well, Perl got :-) | 15:33 | |
nwc10 | lucky Perl 3! You have friends at least | ||
or at last | |||
naughty fingers | |||
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«===SORRY!===Slice parameters NYI at /tmp/tmpfile line 1:------> sub infix:<Y> (**@args⏏) is equiv(&infix:<X>) { [Z~] @args }; sUnhandled exception: Check failed at /home/p6eval/niecza/boot/l…» | ||
..rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileRoutine given to equiv does not appear to be an operatorat /tmp/tmpfile:1------> » | |||
isBEKaml | Did we have GSoC last year? I thought we did some under the TPF umbrella. | ||
TimToady | under Parrot, iirc | ||
isBEKaml | macros and p6doc is all I remember. | ||
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» | ||
TimToady | I think the JS backend to nqp by pmurias++ was GSoC under Parrot Foundation | ||
isBEKaml | Ah. So we didn't do any GSoC programmes last year? | ||
TimToady | we did, just not through TPF | ||
Ven | r: sub foo($_) { .say; }; "a".&foo; | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«a» | ||
Ven | rosettacode++ | ||
TimToady | we snuck pmurias in under parrot instead | ||
isBEKaml | pmurias++ work, brrt++ (mod_parrot) work. | ||
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 :) | ||
Ven | true enough. | ||
r: say [10,20] Z* 1 | |||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2» | ||
Ven | r: say [10,20] Z* 1, 2 | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2» | ||
Ven | r: say [10,20] Z 1, 2 | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«10 20 1» | ||
Ven | r: say [10,20] Z [1, 2] | 15:38 | |
TimToady | had the same bug as X | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«10 20 1 2» | ||
TimToady | r: say 10,20 Z 1,2 | ||
Ven | TimToady: it had precedence issue ? | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«10 1 20 2» | ||
TimToady | no, it was violating the item-ness of [] | ||
now it doesn't | |||
Ven | err, okay. Either both sides are itemized, either none | ||
TimToady | ordinarily a list with [] in it is supposed to keep the [] as a single thing | 15:39 | |
but X and Z were unpacking it | |||
Ven | oh, okay | ||
TimToady | list infixes are infixes between lists, so they should play by the same rules as other lists | ||
moritz | does anybody know if there's an IRC channel for perl GSoC stuff? | ||
Ven | that looked expected to me, though. How do you use X with a [] now ? | ||
moritz | with .list on the [] | ||
15:40
virtualsue left
|
|||
Ven | I guess. moritz++ # obvious answer | 15:40 | |
TimToady | r: say [+] [10,20] | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2» | ||
TimToady | see, same rules now as list prefix | 15:41 | |
moritz | r: say [+] [10,20].list | ||
Ven | oh yeah, an array in numeric context is just its length | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30» | ||
moritz | TimToady++ # sanity | ||
isBEKaml | moritz: probably, #soc-help on irc.perl.org | ||
moritz | isBEKaml: thanks | ||
TimToady | r: say [+] [10,20][] | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30» | ||
isBEKaml | moritz: YW - sure enough - news.perlfoundation.org/2014/02/goo...-2014.html | 15:42 | |
TimToady | that works too | ||
r: say [+] @([10,20]) | |||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30» | ||
TimToady | or that | ||
r: my @foo := [10,20]; say [+] @foo | |||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30» | ||
TimToady | r: my $foo := [10,20]; say [+] $foo | 15:43 | |
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2» | ||
TimToady | r: my $foo := [10,20]; say [+] @$foo | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«30» | ||
smls | perl6: .say for <a b c d>.combinations; # from rosettacode.org/wiki/Power_set#Perl_6 | ||
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 @…» | ||
..rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«abcda ba ca db cb dc da b ca b da c db c da b c d» | 15:44 | ||
smls | I get "Method 'combinations' not found for invocant of class 'Parcel'" locally | ||
TimToady | old rakudo | ||
smls | ok | ||
TimToady | was fixed within the last month, and getting () on the front a couple days ago | ||
15:45
isBEKaml left
|
|||
TimToady | should probably have a "works with" on the RC entry | 15:46 | |
15:47
araujo joined
15:48
zakharyas left
|
|||
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:54 | |
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:55 | |
r: say &infix:<Z+> | 15:56 | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUndeclared name: &infix:<Z+> used at line 1» | ||
TimToady | and so that things like that can work | ||
n: say &infix:<Z+> | 15:57 | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«===SORRY!===Undeclared routine: 'infix:<Z+>' used at line 1Unhandled 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…» | ||
TimToady | I guess not even niecza is quite there | 15:58 | |
Ven | r: my @foo = (10, 20); say [+] $@foo; | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2» | ||
TimToady | but it ought to just be function composition of some sort | ||
Ven | it all makes sense. ... Kinda | 15:59 | |
TimToady | superstitious parens there | ||
Ven | I'd rather be explicit | ||
PerlJam | .oO( this is a family channel! ;) |
||
TimToady | they're a bit misleading, insofar as the no-ops | ||
*they're | |||
Ven | TimToady: you wrote it correctly the first time ;o) | 16:00 | |
TimToady | indeed | ||
Ven | r: my @foo = 10, 20; say [+] $@foo; | 16:01 | |
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«2» | 16:02 | |
16:02
kurahaupo_mobile joined
|
|||
Ven | What I don't like is `foo 1, 2` vs `foo (1, 2)` vs `foo(1, 2)` | 16:02 | |
PerlJam | Ven: wait ... what exactly don't you like? | 16:03 | |
TimToady | it isn't like P5 :) | ||
smls | seem much more sane to me, than in Perl 5 | ||
TimToady | but P6 is very consistent on the subject of postfixes, so the middle parens cannot be a postfix | 16:04 | |
and the reason for the postfix policy is language extensibility | |||
and leads to the general best practice of putting spaces around infixes | 16:05 | ||
you can write 1*2, but then what if someone adds a postfix:<*> operator? | |||
r: sub postfix:<*>($x) { $x + 42 }; say 1 + 2; say 1* | 16:06 | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«343» | ||
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«===SORRY!=== Error while compiling /tmp/tmpfileTwo terms in a rowat /tmp/tmpfile:1------> x:<*>($x) { $x + 42 }; say 1 * 2; say 1*⏏2 expecting any of: …» | ||
TimToady | r: sub postfix:<*>($x) { $x + 42 }; say 1 * 2; say 1* | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«243» | ||
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!» | ||
jnthn | The disclaimer postfix :P | ||
TimToady looks ‡ at jnthn++ | 16:09 | ||
ashleydev | is ',' an infix? | ||
TimToady | yes | ||
ashleydev | but doesn't get surrounded with spaces? | ||
TimToady | and, in fact, Z is now defined (as of yesterday) as Z, | ||
nobody in their right mind is going to write postfix:<,> :) | 16:10 | ||
ashleydev | go on finish your sentence | ||
TimToady | :P | ||
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? :) | ||
s/think/thing/ | |||
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 | |||
TimToady | PerlJam: you right mind is really on your left :) | ||
smls | glad that the P5 function call ambiguity is gone | ||
print " Hello"; # original code | 16:13 | ||
PerlJam | smls: amen! | ||
smls | print (" " x $indent)."Hello"; # adding a little feature... looks harmless enough, right? | ||
--> BUG | |||
benabik | circumfix:<*> so you can *$emphasize* things? | ||
16:13
denisboyun left
|
|||
TimToady | would have to be circumfix:<* *> | 16:13 | |
benabik | D'oh | ||
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? | ||
TimToady | yes | ||
benabik | Hm. Circumfix and prefix have to worry about collisions with term. | 16:15 | |
TimToady | and most infixes are more readable with spaces anyway | ||
yes, we only really have three syntactic slots there | |||
term, postfix, and infix | |||
prefix and circumfix are in with term | |||
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
SamuraiJack__ left
|
|||
TimToady | benabik: I wouldn't say it that way, since that's outside the technical meaning of "postfix" in P6 culture, but yeah | 16:16 | |
prefixes just recursivel expect another term, until you really find a term | 16:17 | ||
*ly | |||
much like regex assertions have internal prefixes like <?foo> that just reparse as if you'd written <foo> | 16:18 | ||
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:19 | ||
so we opt for a few ironclad rules instead | 16:20 | ||
one-pass, self-clocking terms, no ws before postfix | |||
very limited backtracking | |||
P6 only backtracks in two spots, that I recall | 16:22 | ||
distinguishing [+] from [1] | |||
and finding the final brackets in interpolating a string like "$foo.bar().baz" | 16:23 | ||
ashleydev | what's [1] for? | ||
TimToady | it's an array with a 1 in it | ||
both of those occur in term position | |||
but reduction operators are pretty easy to recognize | 16:24 | ||
first, they don't allow space, so [ 1 ] is always an array | |||
second, the namespace of infix operators is pretty easy to recognize, and fairly distinct from array literals | |||
kurahaupo_mobile | TimToady: so [+] is matched by the parser rather than the lexer? | 16:25 | |
TimToady | yes, in fact | ||
since the lexer is limited to DFA semantics, the recursive nature of metaops would explode a lexer that tried to do the whole thing | |||
believe me, I tried | 16:26 | ||
so the LTM is really just [ | |||
and then it backtracks if it can't get an infix followed by a ] | |||
it's one of those massive DWIMs that almost never triggers a WAT | 16:27 | ||
16:27
Ven left
|
|||
TimToady | because visually reduce ops are so distinct from array literals | 16:27 | |
in P6 we try to avoid most of the low-luminosity dwims from P5, and instead choose a few high-luminosity dwims | 16:29 | ||
16:29
[Sno] left
|
|||
TimToady | reduce ops is one, so is smartmatching | 16:29 | |
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:30
salv0 left
|
|||
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 | ||
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 | ||
see S99:911 re WAT | 16:33 | ||
synopsebot | Link: perlcabal.org/syn/S99.html#line_911 | ||
16:34
araujo left
16:35
araujo joined,
skids left
|
|||
TimToady | funny how that's line 911 | 16:36 | |
16:39
ph1ur3 joined
|
|||
kurahaupo_mobile | thanks but can't view the video on this device | 16:44 | |
smls | kurahaupo_mobile: In a nutshell, it's the safe-for-work version of WTF | 16:46 | |
:P | |||
TimToady | What Are That!?! | ||
16:47
sqirrel left
|
|||
kurahaupo_mobile | ah, thanks | 16:49 | |
TimToady | Woe And Tragedy! | ||
16:57
kaleem_ left,
kaleem joined
|
|||
masak | Warts Are Typical | 16:57 | |
16:57
kaleem left
|
|||
vendethiel | TimToady: how do you distinguish array with constants in them then ? | 16:57 | |
r: constant Z = 1; | |||
camelia | ( no output ) | ||
masak | WAT Ain't TLA | ||
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
|
|||
TimToady | it tries for a reduce first, so say [ Z ] if you mean the other thing | 17:04 | |
or [Z,] | |||
wait, that won | |||
't work | |||
:) | |||
17:04
SamuraiJack__ joined
17:05
treehug88 left
|
|||
TimToady | r: say [Z,]((1,2,3),<a b c>)).perl | 17:05 | |
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnexpected closing bracketat /tmp/tmpfile:1------> say [Z,]((1,2,3),<a b c>)⏏).perl» | ||
17:05
dmol left
|
|||
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» | ||
TimToady | r: say [Z, ]((1,2,3),<a b c>).perl | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUndeclared name: Z used at line 1» | ||
TimToady | that "works" :) | ||
but is no shorter than [ Z ] | |||
or use a better Z | 17:07 | ||
17:08
frusen joined
|
|||
TimToady | r: constant 𝐙 = 1; say [𝐙].perl | 17:09 | |
camelia | rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileMissing initializer on constant declarationat /tmp/tmpfile:1------> constant ⏏𝐙 = 1; say [𝐙].perl expecting any of: stat…» | ||
..rakudo-parrot da8c1c: OUTPUT«[1]» | |||
TimToady | m: say '𝐙'.ord.base(16) | 17:10 | |
camelia | rakudo-moar da8c1c: OUTPUT«1D419» | ||
TimToady | m: say so '𝐙' ~~ /\w/ | 17:11 | |
camelia | rakudo-moar da8c1c: OUTPUT«False» | ||
TimToady | p: say so '𝐙' ~~ /\w/ | ||
camelia | rakudo-parrot da8c1c: OUTPUT«True» | ||
TimToady | interesting | ||
r: constant term:<𝐙> = 1; say [𝐙].perl | |||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[1]» | ||
TimToady | n: say so '𝐙' ~~ /<:Alpha>/ | 17:12 | |
camelia | niecza v24-109-g48a8de3: OUTPUT«True» | ||
TimToady | r: say so '𝐙' ~~ /<:Alpha>/ | ||
camelia | rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«False» | ||
..rakudo-parrot da8c1c: OUTPUT«True» | |||
TimToady | hmm | ||
did the UC change their mind on those? | 17:13 | ||
r: constant Z = 1; say [Z].perl | 17:15 | ||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«[1]» | ||
17:18
fhelmberger left
|
|||
TimToady | maybe we should allow the mathematical symbols as terms anyway | 17:19 | |
or we could go as far as to make constant accept anything as a term that is surrounded by whitespace | |||
then we'd get all the math symbols for free | 17:20 | ||
whether they're alpha or not | |||
can anyone think of the WAT of that? | 17:22 | ||
masak is fine with that | |||
the WAT will probably only affect people who don't put in their whitespace. | |||
which feels like an OK corner to sweep a WAT into. | |||
PerlJam | constant + = 5; # ? | ||
17:23
frusen left
|
|||
TimToady | well, plenty of skyhook to nuke yourself in the bedrock | 17:23 | |
masak | PerlJam: technically not worse than * being a term. | 17:24 | |
TimToady | .oO(higher order snowclones) |
||
PerlJam | true | ||
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? | ||
TimToady | r: constant term:<➕> = 5; say +➕ | 17:26 | |
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«5» | ||
TimToady | ashleydev: you can use it for whatever you like | ||
r: say (1..*)[^10] | 17:27 | ||
ashleydev | ah as in whatever? | ||
yes | |||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«1 2 3 4 5 6 7 8 9 10» | ||
PerlJam | .oO( not having prefix:<*> is clearly an oversight by our esteemed language designer ;) |
17:28 | |
ashleydev | r say 2*2 | ||
r: say 2*2 | |||
camelia | rakudo-parrot da8c1c, rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«4» | ||
masak | TimToady: thinking about it an extra time, I think 'constant term:<+>' is rather nicely huffmanized for that. | 17:29 | |
PerlJam: at one point, we had prefix:<=> :P | 17:30 | ||
17:32
myfree joined
|
|||
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:32 | |
17:33
hoverboard is now known as NSAman,
denisboyun joined
|
|||
TimToady | r: say so '𒉑' ~~ /\w/ | 17:34 | |
camelia | rakudo-jvm da8c1c, rakudo-moar da8c1c: OUTPUT«False» | ||
..rakudo-parrot da8c1c: OUTPUT«True» | |||
TimToady | or maybe those implmentations are just buggy | ||
17:35
[Sno] joined
|
|||
TimToady | that's a great cuneiform character | 17:36 | |
somehow, most of them end up looking biological | |||
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. | ||
TimToady | r: say "\c[CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU]" | 17:38 | |
camelia | rakudo-moar da8c1c: OUTPUT«xF0xAFxA6xB4xE2x90xA4» | ||
..rakudo-jvm da8c1c: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnrecognized character name CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENUat /tmp/tmpfile:1------> EIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU⏏]"» | |||
..rakudo-parrot da8c1c: OUTPUT«𒉑» | |||
PerlJam | buggy it is! | ||
TimToady | r: say "\c[CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU]".ord.base(16) | ||
camelia | rakudo-moar da8c1c: OUTPUT«2F9B4» | ||
..rakudo-jvm da8c1c: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnrecognized character name CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENUat /tmp/tmpfile:1------> EIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU⏏]".ord.base(16)» | |||
..rakudo-parrot da8c1c: OUTPUT«12251» | |||
17:39
NSAman is now known as hoverboard
|
|||
jnthn | Moar's char lookup is known busted :/ | 17:39 | |
TimToady | JVM's anything unicode is known busted :/ | ||
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 | ||
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 | t.h8.lv/p6bench/2014-02-25-flatten_fastpath.html - i made a thing | ||
wow, holy crap | 17:43 | ||
the performance is rc-forest-fire tanked *massively* since the release | |||
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 | ||
timotimo: I suspect your tests are not on the same Rakudo revision... | |||
But yeah, we should figure out what hurt forrest fire so badly. | 17:45 | ||
That can't just be "for got a bit slower" | |||
'cus it's a huge change rather than a minor one. | |||
TimToady | well, I wouldn't be surprised if it's a laziness vs reify issue | 17:49 | |
having removed the faulty batching logic from mapiter, it falls to other reifys to decide batching policies | |||
and doubtless some of those could use more context to decide right | 17:50 | ||
range's reify was easy because it has no side effects | |||
I'm guess array's reify might need tweaking here | 17:51 | ||
timotimo | jnthn: aye, different rakudo revision | 17:52 | |
didn't wo make fors better? | |||
hmm. | |||
TimToady | it's also possible that the X and Z fixes had some unanticipated impact here | ||
timotimo | rc-forest-fire does use X | 17:53 | |
i'll re-run it with a 2014.02 rakudo but with a flatten_fastpath moar. | |||
17:54
kurahaupo_mobile left
17:55
myfree left
|
|||
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? | ||
PerlJam: which dip exactly do you mean? | 17:57 | ||
17:57
dakkar left
|
|||
timotimo | PerlJam: that moar gets progressively slower than the other backends? | 17:57 | |
PerlJam | aye | ||
timotimo | yes, that's the exact cause | 17:58 | |
the fastpath helps mitigate the slowness, but it doesn't improve the algorithmical complexity problem | |||
colomon | This type cannot unbox to a native integer | 17:59 | |
in block at bin/panda:44 | |||
timotimo | i'm glad the performance improvement via the fastpath is so noticable | ||
18:05
[particle]1 joined
18:07
sftp left,
[particle] left,
scottp left
18:08
sftp joined,
skids joined
18:10
awwaiid_ joined
18:17
SamuraiJack__ left
18:20
awwaiid left,
btyler left
18:21
_sri left,
btyler joined
18:22
rurban left
|
|||
timotimo | t.h8.lv/p6bench/2014-02-25-flatten_fastpath.html - refresh for new data | 18:23 | |
18:23
_sri joined
18:24
scottp joined
|
|||
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:24 | |
TimToady | so it's not my fixes? | 18:26 | |
timotimo | no, it is your fixes | ||
TimToady | okay | ||
timotimo | "as before" == "as in 2014.02" | ||
colomon | last thursday, right? | 18:27 | |
timotimo | er, eqv or eq i guess :P | ||
yes | |||
TimToady | I just figured it's still 2014.02 :) | ||
18:27
dmol joined
|
|||
timotimo | ;) | 18:27 | |
timotimo does a spectest run with fastpath'd moarvm to determine if a merge to master would be wise | 18:30 | ||
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:32 | |
timotimo | TimToady: need any more specific infos to figure out where the performance regression came from? | 18:33 | |
18:34
isBEKaml joined
|
|||
TimToady | well, cacheing ^$!height X ^$!width speeds it up considerably | 18:35 | |
timotimo | at some point, the optimizer ought to cheat massively if it sees something like that | 18:37 | |
TimToady | yeah, but just using state @coords = ^$!height X ^$!width speeds it up about 2.5 times | 18:38 | |
so either X itself, or the reification of X wrt map | |||
timotimo | t/spec/integration/advent2009-day06.rakudo.moar - this one either infiniloops or became very, very slow | ||
[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:40 | |
TimToady | hypers are probably using zips inside | 18:41 | |
timotimo | i don't think so | 18:42 | |
let me check | |||
dalek | rl6-roast-data: e1fcd5e | coke++ | / (6 files): today (automated commit) |
18:43 | |
timotimo | it does use Z | ||
18:44
xinming_ joined
|
|||
[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 | ||
and whether the [] fix is what's hanging that test | 18:45 | ||
18:45
jnap left
|
|||
timotimo | thank you kindly | 18:45 | |
18:45
Rotwang joined
18:47
xinming left
|
|||
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 | ||
timotimo | ah | ||
TimToady | so there may be some []-bug dependencies in hypers | 18:51 | |
timotimo | i'm not sure why that follows, but okay | ||
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
|
|||
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:53 | |
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 | |
but very curious that parrot string handling wins, even against the JVM | |||
timotimo | that's jvm for you :) | ||
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 ;) | ||
and then improve upon that | |||
[Coke] | jvm string handling is for Java Strings, not Perl 6 Strings, IIRC. | ||
(so, still some work to be done optimizing strings on jvm) | |||
nwc10 | yes, embrace and extend | ||
timotimo | i wonder what caused the caps.t breakage | 18:57 | |
18:57
isBEKaml left
|
|||
nwc10 | [Coke]: Moar beat parrot in your report! | 18:57 | |
yes, failures suck, and "inexcusable" (in that fudge exists) | |||
dalek | kudo/nom: 5366ae9 | larry++ | src/core/LoL.pm: hand revert def of X/Z in terms of X,/Z, |
18:58 | |
timotimo | huh, how did that happen | ||
TimToady | caps depends on unicode props, no? | 18:59 | |
timotimo | aye, but this is about :alpha | ||
<.alpha>, even | |||
and <.punct> and <ident> | |||
TimToady | anyway, for now, use X and Z for speed, and X, and Z, for correctness if you have [] args | 19:00 | |
timotimo | i hope we can get the correctness soon, otherwise that seems like a pretty big WAT | 19:01 | |
TimToady | yes, I'm hoping the slowdown is not related to correctness, but merely de-fastpathing | 19:04 | |
but I also suspect that if I fix the speed, the hyper test will hang even faster :) | 19:05 | ||
s/speed/correctness/ | |||
I already fixed the speed once :) | 19:06 | ||
19:07
dmol left
|
|||
TimToady | .oO(SPEED ENFORCED BY RADAR) "But officer, the sign said speed was enforced here, not lack of speed." |
19:10 | |
19:11
dmol joined,
ajr joined
19:12
ajr is now known as Guest88241,
Guest88241 is now known as ajr_
19:15
dmol left
19:18
dmol joined
19:27
dmol left
|
|||
timotimo | speed enforced by toad | 19:30 | |
TimToady | Mr Toady's Wild Ride | 19:32 | |
19:33
dmol joined
|
|||
FROGGS | Are we there yet? | 19:34 | |
TimToady | in gaol, you mean? | 19:37 | |
19:38
pippo joined
|
|||
FROGGS does not even know what/where gaol is | 19:39 | ||
19:40
treehug8_ left
|
|||
nwc10 | FROGGS: this: en.wiktionary.org/wiki/gaol | 19:41 | |
and where Mr Toad ends up, IIRC, after committing some or other motoring offence | |||
en.wikipedia.org/wiki/The_Wind_in_the_Willows | |||
FROGGS | ahh | 19:42 | |
19:42
telex left
|
|||
FROGGS | see, I learned something today :o) | 19:42 | |
19:44
telex joined
19:46
rurban joined
|
|||
lue | timotimo: sure, I'll go ahead and recompile MVM/NQP/Rakudo for you, see if it offers improvement :) . | 19:54 | |
[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. | ||
timotimo | lue: did you see the benchmarks i posted? | 20:00 | |
if the string stuff is at all your bottleneck, it ought to be better now. | |||
grondilu | rn: subset Vector of Array where -> @c { [&&] map {$_ ~~ Numeric}, @c }; multi infix:<*>(Numer | ||
timotimo | except join. join seems completely untouched. | 20:01 | |
grondilu | ic $x, Vector $v) {}; say 4 * [1, 1] | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«===SORRY!===This macro cannot be used as a function at /tmp/tmpfile line 1:------> re -> @c { [&&] map {$_ ~~ Numeric}, @c ⏏}; multi infix:<*>(NumerIn parameter declaration, typename 'Numer' must b…» | ||
..rakudo-parrot 5366ae, rakudo-jvm 5366ae, rakudo-moar 5366ae: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileInvalid typename 'Numer' in parameter declaration.at /tmp/tmpfile:1------> ~~ Numeric}, @c }; multi infix:<*>(Numer⏏<EOL>[0…» | |||
grondilu | rn: subset Vector of Array where -> @c { [&&] map {$_ ~~ Numeric}, @c }; multi infix:<*>(Numeric $x, Vector $v) {}; say 4 * [1, 1] | ||
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» | ||
..niecza v24-109-g48a8de3: OUTPUT«===SORRY!===This macro cannot be used as a function at /tmp/tmpfile line 1:------> re -> @c { [&&] map {$_ ~~ Numeric}, @c ⏏}; multi infix:<*>(Numeric $x, Vector $vPotential difficulties: $x is…» | |||
..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» | |||
..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…» | |||
[Coke] arglebargles. | |||
grondilu is not sure why there should be a circularity here :/ | 20:02 | ||
lue | timotimo: what's the difference between with_flatten_fastpath and vanilla_flat_fastpath ? | 20:03 | |
timotimo | the first of the two has TimToady++'s not quite optimal Z and X changes | 20:06 | |
vanilla_ is based on rakudo/2014.02 directly | 20:07 | ||
lue | I just pulled latest moar, nqp, and rakudo, sooo... :) | 20:09 | |
timotimo | the very much latest rakudo has the performance-critical parts of the Z and X changes reverted | 20:15 | |
20:29
Vlavv left
20:32
Mouq joined
20:33
vendethiel left
|
|||
Mouq | Has anyone else looked at the failures in S05-capture/caps.t? | 20:34 | |
20:34
treehug88 joined
20:39
berekuk left
20:40
berekuk joined
20:42
Gothmog_ joined,
Vlavv joined
|
|||
Mouq | r: List ~~ Positional | 20:42 | |
p6: say List ~~ Positional | |||
Is camelia out sick? | |||
20:42
xfix left
|
|||
camelia | ( no output ) | 20:42 | |
rakudo-parrot 5366ae, rakudo-jvm 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«True» | |||
20:43
xfix joined
20:47
xfix left
20:53
xfix joined
|
|||
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?» | ||
..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
colomon | :\ | ||
masak | guess that answers it. | ||
20:54
rurban left
|
|||
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.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«「a b c d」 0 => 「a」 1 => 「b」 2 => 「c」 3 => 「d」» | |||
..niecza v24-109-g48a8de3: OUTPUT«「a b c d」 0 => 「a」 0 => 「b」 0 => 「c」 0 => 「d」» | |||
Mouq | ^^ something got borked here | 20:57 | |
20:57
Guest23735 joined,
Guest23735 left
|
|||
Mouq | I'm kinda surprised that we only have one failing test file because of this, actually | 20:57 | |
timotimo | oh my | 21:00 | |
p6: "a b c d" ~~ /[(\w) \s*]+/; say $0; say $1; say $2; | |||
camelia | rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«「a」 「b」 「c」 「d」(Any)(Any)» | ||
..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
bjz left
|
|||
Mouq is more confused now | 21:00 | ||
timotimo | it seems to only be the string output? | ||
21:00
erkan left
|
|||
masak | Mouq: there's only $0. | 21:01 | |
timotimo | like, the stringification of the match object? | ||
oh, huh. | |||
Mouq | timotimo: No, this has to do with how it .lists... | ||
timotimo | hm, maybe | ||
Mouq | Or the output of that | ||
anyway | |||
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", …» | ||
..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
..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:02
rindolf left
|
|||
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…» | ||
..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
..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",…» | |||
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» | ||
..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
Rotwang left
|
|||
Mouq | p6: "a b c d" ~~ /[(\w) \s*]+/; say $/.pairs | 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:05 | |
..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 =>…» | |||
..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.…» | |||
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.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«1 2 3» | |||
masak | r: my %h = foo => [1, 2, 3]; for %h<foo>[] { .say } | ||
camelia | rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«123» | |||
masak | fary nuff. | ||
21:07
zakharyas joined
|
|||
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.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0123» | |||
..niecza v24-109-g48a8de3: OUTPUT«0» | |||
21:09
rurban joined
|
|||
Mouq | Ok, the problem is TimToady++'s change to List.pairs | 21:10 | |
Or. Maybe. I often feel I speak too soon | |||
But it's a possibility | |||
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 } | ||
camelia | rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..niecza v24-109-g48a8de3: OUTPUT«「a」 「b」 「c」 「d」» | |||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«「a」「b」「c」「d」» | |||
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.» | ||
..niecza v24-109-g48a8de3: OUTPUT«「a」 「b」 「c」 「d」» | |||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«「a」「b」「c」「d」» | |||
lue suspects running on the JVM would be a good comparator, as opposed to compiling an un-branched moar | |||
timotimo | lue: slower? :( | ||
perhaps it'd be better to use rakudo-2014.02 instead of master? | 21:14 | ||
but i don't want to use up so much moar of your time | |||
especially since i won't have perl6 tuits for most of tomorrow anywa | |||
anyway | |||
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) | ||
timotimo | ho-hum. | 21:15 | |
anyway, i would be glad if someone could review, spectest and perhaps merge my fastpath branch for moarvm tomorrow | |||
i'm off to bed | |||
gnite! | |||
Mouq | night timotimo | ||
*! | |||
:P | |||
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:17 | |
timotimo | i'm ... not sure how to interpret that? | 21:18 | |
21:19
Rotwang joined
21:22
rurban left
|
|||
lue | I get the feeling it's about time I switched to panda/eleven : "This type cannot unbox to a native integer" :( | 21:27 | |
masak | 'night, #perl6 | 21:32 | |
lue | Or not, guess that's fine. | ||
TimToady | o/ | ||
lue | ♞ masak o/ | ||
colomon | \o | 21:33 | |
lue | "Could not find Shell::Command in any of:" from panda/eleven :/ | ||
21:37
virtualsue joined
|
|||
Mouq | r: ((1,2),).pairs | 21:38 | |
camelia | ( no output ) | ||
..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
21:39
mavcunha left
|
|||
lue | any way I can install either panda or panda/eleven ? I'm getting issues with the latest of everything. | 21:40 | |
21:40
rurban joined
21:41
xfix left
21:42
hoverboard left
|
|||
Mouq | Here's the problem: | 21:42 | |
r: ((1,2),).pairs.say | |||
camelia | rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0 => 1 1 => 2» | |||
Mouq | Used to be 0 => $(1, 2) | ||
Dunno which is correct, but the way things are breaks things | 21:43 | ||
21:43
erkan joined,
erkan left,
erkan joined,
xfix joined
|
|||
lue | depends on if parcel-in-parcel is supposed to flatten there. | 21:44 | |
Mouq | p6: : ((1,2),).pairs.say | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«===SORRY!===Bogus statement at /tmp/tmpfile line 1:------> <BOL>⏏: ((1,2),).pairs.sayParse failed» | ||
..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileBogus statementat /tmp/tmpfile:1------> <BOL>⏏: ((1,2),).pairs.say expecting any of: statement list prefix or ter…» | |||
Mouq | p6: ((1,2),).pairs.say | ||
camelia | rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«0 => 1 1 => 2» | |||
Mouq | Huh. | 21:45 | |
21:46
xinming joined
|
|||
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.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«0 => 1 1 => 2» | |||
Mouq | p6: ([1,2],).pairs.say | ||
camelia | rakudo-parrot 5366ae, rakudo-moar 5366ae, niecza v24-109-g48a8de3: OUTPUT«0 => [1, 2]» | ||
..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
smls left
21:48
virtualsue left
|
|||
dalek | kudo/nom: 0de140a | larry++ | src/core/metaops.pm: Xop and Zop could clobber input array |
21:48 | |
TimToady | (also fixed tabbing) | 21:49 | |
21:49
zakharyas left,
xinming_ left
|
|||
lue | Mouq: S07: "A Parcel is also Positional, and uses flattening context for list operations such as .[] and .elems." | 21:50 | |
Don't know if .pairs is one such method though. | |||
TimToady: is .pairs supposed to flatten a parcel? (Or rather, is .pairs considered a "list operation" ?) | |||
Mouq | lue: I think the problem lies within Capture.pm | 21:51 | |
lue: Because I think current behavior wrt .pairs is correct | |||
[Coke] | moritz: ping. | 21:52 | |
21:53
tgt joined
21:57
_thou left,
_thou joined
21:58
rurban left
21:59
cxreg2 is now known as cxreg,
rurban joined
22:02
rurban1 joined
22:04
bjz joined,
rurban left,
bjz left
22:05
bjz joined
|
|||
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.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«LoL.new(ListIter.new())» | |||
22:08
kbaker left,
ph1ur3 left
|
|||
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! | |||
lue | \o/ | ||
Mouq | Oh. | ||
Nope -_- sorry | 22:12 | ||
22:14
hoverboard joined
|
|||
Mouq | I was pretty sure s/List/Array/ here would do it github.com/rakudo/rakudo/blob/nom/...sor.pm#L26 | 22:14 | |
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.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0» | |||
Mouq | r: say nqp::islist([1,]) | ||
camelia | rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0» | |||
Mouq | r: say [1,].WHAT | 22:19 | |
camelia | rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«(Array)» | ||
..rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
jnthn | Mouq: nqp::islist means "does it have VMArray REPR", really | ||
Mouq | r: say nqp::islist([1,].list) | 22:20 | |
jnthn | Or "is it an RPA" on Parrot | ||
camelia | rakudo-jvm 5366ae: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«0» | |||
22:20
mavcunha joined,
btyler left
|
|||
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 | ||
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.» | ||
..rakudo-parrot 5366ae, rakudo-moar 5366ae: OUTPUT«Array.new(1, 2)» | |||
lue suspects the "lib" directory of perl6/doc will before long need more subdirs :) | |||
22:28
lizmat left
|
|||
TimToady | spectesting a fix for [] bug in bare X and Z now | 22:30 | |
sure seems like .flat should be testing for Scalar wrappers and listifying instead of flattening | |||
22:30
kst left
|
|||
TimToady | also, **@lol is useless, have to use |lol instead | 22:32 | |
TimToady is thinking that **@lol ought to (optionally?) have the .flat method (including a Scalar test) built in at the second level | 22:34 | ||
also, we're doing a lot of list cloning | 22:35 | ||
**@lol is copy, maybe | 22:36 | ||
22:41
Mouq left,
stevan_ left
|
|||
TimToady | p6: say rand | 22:42 | |
camelia | rakudo-moar 0de140: OUTPUT«0.537522225703911» | ||
..rakudo-jvm 0de140: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
..niecza v24-109-g48a8de3: OUTPUT«0.79203566200660336» | |||
..rakudo-parrot 0de140: OUTPUT«0.349981961396651» | |||
TimToady | r-j bug? | ||
j: say defined rand | |||
camelia | rakudo-jvm 0de140: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
TimToady | j: say 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.» | ||
TimToady | just in a bad state, i guess | ||
lue | yeah, r-j is busted for camelia :( | 22:43 | |
22:44
stevan_ joined
22:45
lizmat joined
22:46
xinming_ joined
|
|||
lue | What the \foo type of variable called again? "sigilless" ? | 22:49 | |
22:49
Rotwang left
|
|||
TimToady | that's one name for 'em | 22:50 | |
22:50
xinming left
|
|||
TimToady | or it's a parcel binding | 22:50 | |
my \foo = is a form of SSA | |||
insofar as it allows only one alias | 22:51 | ||
jnthn | That's the thing r-j tends to give when the evalserver fails | ||
TimToady | so "alias" is another term for it | ||
ashleydev | SSA? | 22:54 | |
(it's not in the glossary) | |||
lue | "Static single assignment", I believe. | 22:55 | |
22:59
treehug88 left
23:01
dmol left
|
|||
dalek | ast: 20f286c | larry++ | S03-metaops/reduce.t: test assumes [] bug, change to <> |
23:03 | |
kudo/nom: 76f1e0d | larry++ | src/core/LoL.pm: do the Don't Flatten Scalars jig for bare X and Z |
23:05 | ||
jnthn | TimToady: Instead of: | 23:10 | |
if lol[0].VAR.WHAT === Scalar { | |||
You may want | |||
if nqp::iscont(lol[0]) { | |||
This has the benefit of being a bunch faster, but also will cope with the case where we have, say, a Proxy. | |||
Or a mixed-in-to Scalar. | 23:11 | ||
23:11
tgt left
|
|||
TimToady | as I was saying, I wish we could build some of this into .flat or **@lol | 23:13 | |
so I don't have to plate the boiler all over | |||
jnthn | Ah, sorry. I'm barely following; bogged down with material writing. | 23:14 | |
23:14
berekuk left
|
|||
TimToady | as it is, **@lol is relatively useless | 23:14 | |
jnthn | Then it probably wants to change somehow :) | ||
TimToady | but I can try your boilerplate instead :) | ||
(for now) | 23:15 | ||
thanks | |||
jnthn | np :) | ||
Figured I'd read a commit in a spare moment. :) | |||
23:19
rurban1 left
23:23
ajr_ left
|
|||
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.» | ||
..rakudo-parrot 0de140: OUTPUT«Unexpected named parameter 'v' passed in sub foo at /tmp/tmpfile:1 in block at /tmp/tmpfile:1» | |||
..rakudo-moar 0de140: OUTPUT« in sub foo at /tmp/tmpfile:1 in block at /tmp/tmpfile:1» | |||
lue | ^ moar has a blank message for some reason. | ||
dalek | kudo/nom: 974d00b | larry++ | src/core/ (2 files): simplify using nqp::iscont as suggested by jnthn++ |
23:31 | |
23:38
hoverboard is now known as wtf-honey-bbq,
tgt joined,
wtf-honey-bbq is now known as hoverboard
23:42
denisboyun left,
tgt left
23:50
virtualsue joined
23:51
rurban joined
23:56
rurban left
|