»ö« 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.
timotimo you can make m-spectest/p-spectest/j-spectest 00:01
TimToady btw, I'm still getting a looping test on JVM, S02-lexical-conventions/comments.rakudo.jvm 00:03
00:03 immortal joined
TimToady that one might be worth a fudge 00:03
00:04 erkan left
TimToady no other hangs in the entire suite for moar or parrot 00:04
timotimo hm. 00:06
00:06 ajr_ left
timotimo has anybody investigated patterns that supply a candidate for the "new" method with a defined invocant and do stuff based on that? 00:07
00:13 eternaleye joined
[Coke] timotimo: yes, that takes hours. I want to run -one- test. :) 00:14
I will just swap out the ./perl6 for the one with the vm I want.
timotimo oh, right ... 00:18
dalek ast: b1f2b22 | TimToady++ | S02-lexical-conventions/comments.t:
skip a test that hangs on jvm
00:20
TimToady there also something going wrong with todo annotions on throws_like, it's slipping an extra todo() call into the middle of the statement for some reason 00:21
*tations
but that wasn't causing the hang, just noticed it en passant
when I want to run an individual test, I just do something like make m-spectest, wait for it to fudge everything, the ^C it and perl6 t/spec/roast/whatever 00:24
or I don't bother with the make part if I just want to run the .t
though with jvm I had to run it with install/bin/perl6-j 00:25
the runner in the nom directory didn't work
00:30 chenryn joined 00:31 Akagi201_ left, eternaleye left
[Coke] ff 00:35
.
Offs. 00:36
00:42 chenryn left
carlin you can `make t/spec/S0X/whatever/foo.t` 00:42
00:45 BenGoldberg joined 00:48 eternaleye joined 00:57 thou joined 00:58 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg 01:00 eternaleye left 01:01 thou left
dalek ast: 9a86cfb | TimToady++ | S02-lexical-conventions/comments.t:
avoid a todo bug in fudge

for some non-obvious reason fudge puts an extra todo() on the X::Comp::Adhoc line
01:06
TimToady carlin: that's just so wrong... :)
01:08 eternaleye joined 01:15 Akagi201 joined
[Coke] ... why the hell do we do releases off master? :P 01:17
dalek kudo/nom: 5392029 | coke++ | t/spectest.data:
failing on rakudo.parrot, remove for release
01:18
01:19 dayangkun joined 01:25 telex left 01:26 FROGGS_ joined, telex joined 01:29 FROGGS left 01:33 Possum joined 01:39 klapperl joined 01:42 klapperl_ left
dalek ast: 5a33f7d | coke++ | S (8 files):
fudge for rakudo.parrot release
01:42
japhb Reading the changelog ... why was postcirmcumfix:<( )> changed to .invoke? (I don't have much of an opinion on this, I'm just curious.) 01:46
02:12 pyrimidine joined 02:17 cognome left, chenryn joined 02:18 cognome joined 02:22 cognome left
dalek kudo/nom: 5dd10bb | coke++ | t/spectest.data:
This test is very fiddly, disable for release.

On moar/linux, it only runs 5 of the 6 tests, making it oddly difficult to fudge.
02:24
ast: 1268aba | coke++ | S32-list/uniq.t:
fudge for rakudo.moar release
02:25
02:44 noganex_ joined 02:45 thou joined 02:46 noganex left 02:50 thou left
pyrimidine TimToady: re: the “pointer being freed was not allocated” malloc problem, it works if I run ‘make LOLLY=1’ 03:00
(also, the make error now seems to be gone, I suppose that got whacked today) 03:01
03:05 dayangkun left
[Coke] (still running java tests. :P) 03:10
03:15 xenoterracide left 03:18 dayangkun joined
TimToady yeah, those take a while, and aren't pretty, last I looked 03:22
which was earlier today
03:31 raiph joined 03:46 raiph left 03:51 SamuraiJack joined
hoelzro m: subset EvenNum of Num where { $_ %% 2 }; EvenNum === EvenNum 03:58
camelia rakudo-moar 5dd10b: OUTPUT«Invocant requires an instance, but a type object was passed␤ in method isNaN at src/gen/m-CORE.setting:4988␤ in method ACCEPTS at src/gen/m-CORE.setting:4134␤ in sub infix:<===> at src/gen/m-CORE.setting:5241␤ in block at /tmp/9Bajy14gBm:1␤␤»
hoelzro I rebased S26-WHY onto nom earlier today, and some of the tests fail with this error
git bisect points to a82c4076057fb543ec5bd56b06be1ffd67796f26 03:59
03:59 raiph joined
hoelzro but I'm trying to think of the best way to solve this 03:59
03:59 raiph left
hoelzro Num === Num has the same issue 03:59
[Coke] no spec tests failed on nom with that change. 04:00
hoelzro I guess we have a new test to add then = 04:01
=)
it's kind of screwy that the multi resolver would even consider that new multi for the call 04:02
but I don't necessarily understand it fully myself
it seems we have some spam in RT: rt.perl.org/Ticket/Display.html?id=122592 04:05
04:05 [Sno] left
[Coke] hoelzro: gone. 04:06
hoelzro thanks [Coke]
reported my bug to RT: rt.perl.org/Ticket/Display.html?id...f92b4bb35c 04:08
we can deal with it in the morning =)
just wanted to let others know
bed &
04:19 chenryn left
[Coke] (still running java tests. :P) 04:20
TimToady are you running them one at a time? 04:21
[Coke] make j-stresstest. 04:23
TimToady though, to be sure, you can't run as many jvm jobs in parallel because TEST_JOBS=2 uses almost 400% of a cpu
ah
[Coke] made the mistake of setting test jobs too high, I think. 04:24
really wish I could have done this release on my mac. (16Gig/8core) as opposed to the daily test box, a linux box with 4mb/2core 04:25
04:30 xinming joined, kaleem joined 04:32 xinming_ left 04:34 thou joined 04:35 SamuraiJack left 04:36 kaare_ joined 04:38 thou left 04:39 thou joined 04:45 pyrimidine left 04:50 chenryn joined 04:57 chenryn left 05:01 kaare_ left
TimToady running it at TEST_JOBS=3 puts my load average on my 6-core to over 5 05:04
05:08 gfldex joined
TimToady I'm up to S17 and so far it's failed about 20 tests 05:13
05:15 BenGoldberg left
TimToady and it's hung 05:15
no, suddenly made progress again
one forgest how slow S17 is
t/spec/S06-other/main-usage.rakudo.jvm came out way late, must've hung and timed out, I'm guessin' 05:16
[Coke] yay, done, now I can fudge... 05:22
TimToady I'm on S32 now 05:23
05:24 kaare_ joined, [Sno] joined
TimToady though load avg now about 7.5 on my 6 cores... 05:27
so 3 jobs is about the limit for 6 cores 05:28
(and 8 gig)
main java process is 7 gig, half of it resident 05:29
good thing this'll be done before I start streaming Sophia...
[Coke] .tell lizmat - had to fudge some of the new throws_like tests for parrot & jvm. 05:36
yoleaux [Coke]: I'll pass your message to lizmat.
TimToady lemme know when you're done fudging, and I can run another "quick" stresstest 05:40
05:43 gfldex left 05:44 chenryn joined 05:57 Khisanth left 05:58 Khisanth joined 06:13 denis_boyun joined 06:15 gmunoz_ left 06:16 thou left
[Coke] j: my $hash = { '1' => { '2' => 3, '4' => 5 }, }; 06:17
camelia rakudo-jvm 5dd10b: OUTPUT«(timeout)»
[Coke] j: say "OIU@#P$OU#@KJSDF:LKDJSF";
camelia rakudo-jvm 5dd10b: OUTPUT«===SORRY!=== Error while compiling /tmp/88SqaM8twK␤Variable '$OU' is not declared␤at /tmp/88SqaM8twK:1␤------> say "OIU@#P$OU⏏#@KJSDF:LKDJSF";␤ expecting any of:␤ postfix␤»
TimToady your first snippet works fine here 06:20
[Coke] if you could try to fudge t/spec/S06-other/anon-hashes-vs-blocks.t 06:21
for rakudo.jvm, I would appreciate it.
TimToady okay 06:23
[Coke] It barfs all over me here, and a naive #?rakudo.jvm emit skip_rest() doesn't cut it. 06:24
TimToady it barfs on my laptop, recompiling on my 6-core at the moment 06:25
ooh, there's a lollipop in it 06:31
but setting LOLLY doesn't fix it
oh, it's not a lollipop, it's a block {;} 06:32
hmm
[Coke] lot of S17 failures under load that work fine one at a time. :( 06:33
dalek ast: db19c85 | TimToady++ | S06-other/anon-hashes-vs-blocks.t:
jvm chokes on compiling a {;}
06:37
TimToady anything else?
[Coke] t/spec/S05-mass/properties-general.t 06:39
t/spec/S05-mass/rx.t
those both generate some JVM opcode dump.
nearly done with the other 20+ files 06:40
TimToady weird errors, we don't have postcircumfix {} anymore... 06:41
06:41 bjz left 06:50 anaeem1_ joined, darutoko joined
[Coke] thanks for db19c85! very helpful. 06:50
TimToady something about the Khmer chars at the end 06:54
[Coke] good find. 06:56
dalek ast: adc10fd | coke++ | / (23 files):
fudge for rakudo.jvm release
06:57
sergot hi o/
[Coke] hi, o
TimToady I'm starting to think it's just too many things, some of the locals #'s are approaching 65536 06:58
[Coke] ok. I fudged everything else (I think). I'm going forward with the release. 07:00
TimToady yeah, simply putting the 6 khmers in a block fixes it
dalek ast: 9a3ca7d | TimToady++ | S05-mass/properties-general.t:
put some tests in a block to cut # of locals

seems to be hitting a size limit on the jvm
07:02
ast: 94406c9 | TimToady++ | S05-mass/rx.t:
more blockification to avoid jvm overflow
07:08
TimToady okay, those two should be good to go for now
masak good #perl6, antenoon
TimToady must be about 10:00 am there.. 07:09
or are you in Sophia?
07:11 aindilis left
TimToady firing off a stresstest 07:11
[Coke] pulls the trigger on the release. 07:14
masak [Coke]++ # release 07:16
TimToady: I am in Sofia.
TimToady: and a lot of other eerily familiar people, too.
[Coke] TimToady++ thank you very much for helping with the fudging. 07:17
TimToady well, I was up anyway, waiting for the live-streaming to maybe work 07:19
TimToady plans to take a nap between lichtkind++ and jnthn++ 07:20
masak :)
[Coke] is the live streaming getting recorded? 07:21
07:21 chenryn left
TimToady I rather suspect they plan to--whether they succeed is another matter... 07:22
and then there's the small matter of recording the background cosmic radiation instead of jnthn... 07:23
*cosmic background 07:24
moritz where's the stream?
TimToady suggests that jnthn++ use the wireless mic, and then it doesn't much matter if the hardwired is on too
blogs.perl.org/users/yapceu/2014/08...aming.html 07:25
the other way around is...problematic
07:26 zakharyas joined
[Coke] goes to sleep. laters. 07:26
masak \o 07:27
TimToady o/ 07:28
masak thinkos s/comb/chars/, not for the first time 07:30
07:31 klaas-janstol joined
masak it seems especially easy to make that thinko after having written 'lines' :) 07:31
07:31 thou joined 07:36 thou left 07:42 woolfy joined 07:43 chenryn joined 07:44 pecastro left
sergot it has just started 07:50
streaming I mean
FROGGS_ ohh! 07:51
moritz it began with the forging of the great streams 07:53
three were given to the perl hackers, immortal, and fairest of all beings
wait, that doesn't sound quit right :-)
sergot jnthn and masak are there! 07:54
i can see them :0
TimToady what direction is teh camera facing?
and I dont mean "toward the audience" :P 07:55
FROGGS_ to the publikum :p
wee
err, eww
masak waves to sergot 07:56
FROGGS_ hehe
I saw it!
sergot once more masak !
FROGGS_ :D
/o/
sergot thanks masak++ !
:)
FROGGS_ yeah, praise our jnthn++ :o) 07:57
TimToady thanks for pointing out jnthn
FROGGS_ that man has stile (and a hat)
masak now jnthn realized that he can't show $sekkrit-project on his screen :)
TimToady are you guys facing north, south, east, or west? 07:58
masak good question. I have no sense of that.
TimToady no sound yet...
masak no, we're just all being very, very quiet :P 07:59
FROGGS_ souond \o/
masak FROGGS_: I shouted your name :) 08:00
TimToady FROGGS_: you have sound?
FROGGS_ TimToady: I had
masak wifi is slowing to a crawl now.
sergot I do bit 08:01
not*
FROGGS_ masak: sorry, can't hear you :o)
TimToady everyone smile
sergot masak: is tadzik somewhere there?
FROGGS_ I so not spot him... 08:02
sergot yeah
08:02 nine_ joined
TimToady you'd think it'd be easier to get sound than pix 08:03
sound!
tadzik sergot: I am
managed to breach the absurd ping barrer 08:04
TimToady the roar of the greasepaint, the smell of the crowd!
blonk
ow
tadzik frankly, I don't know where masak is :o
sergot tadzik: where are you? :))
jnthn tadzik: He's on row 2, next to me :)
TimToady masak is on the left side, about 2 rows back
sergot tadzik: in the third (?) row on you left side
your* 08:05
TimToady cute
TimToady didn't come... :( 08:06
[Coke]: they said everything will be recorded 08:07
08:15 klaas-janstol left
TimToady granada1 08:18
*!
jnthn Such palace... :)
jnthn likes Granada 08:19
08:21 klapperl left
masak lichtkind up next! 08:24
TimToady Yes, sir!
so, at least I have some proxy hecklers on the 2nd row...
08:25 chenryn left 08:26 chenryn joined
sergot tadzik is hiding somewhere 08:28
tadzik I hid upstairs :)
sergot ;) 08:29
tadzik checking out speakers I don't know yet :)
TimToady likes retinas 08:31
especially their plurality
08:32 thou joined
TimToady wants to keep both sides of his brane 08:36
08:36 thou left 08:39 Ven joined 08:42 zakharyas1 joined
TimToady you don't count! 08:46
jnthn oh noes, I don't count
TimToady wonders how much he's lagging realtime...
just got to Know More 08:47
jnthn yes, that's where it is here too :)
TimToady cool, it seems to be keeping up
jnthn I guess I should pick the same mic lichtkind is using, given it seems to work well with the streaming :) 08:48
TimToady if it's the wireless mic, it prevents tuning into the Universe At Large on the receiver
masak the xor slide looked wrong... 08:50
TimToady it did
doubling means "here be thunks", mostly 08:51
jnthn aye, I was gonna say, it's more short circuiting... 08:52
TimToady well, .succ and cmp are slightly related 08:53
FROGGS_ tadzik: is that you behind a guy with a white shirt "use perl or die" ? 08:54
08:54 FROGGS_ is now known as FROGGS
TimToady should be false 08:55
jnthn ...except x was split into x and xx... :) 08:56
08:57 anaeem___ joined, zakharyas1 left, zakharyas1 joined
TimToady this is a bit strange 08:58
(parcel is like siggie)
what?
this is kinda nonsensical 08:59
jnthn yes, the | and || prefix bit was...kinda huh.
08:59 klaas-janstol joined 09:00 anaeem1_ left
TimToady this about Range is nice 09:01
jnthn Yes, though I'm not quite sure I'd call it a scalar range; @a = 1..5 is not my $x = 1..5; @a = $x
TimToady @sum is wrongish 09:05
jnthn yeah; shoulda been a scalar...
masak m: say 2 S- 18 09:06
camelia rakudo-moar 5dd10b: OUTPUT«Cannot find method 'postcircumfix:<( )>'␤ in block at /tmp/KAbP5GiOlA:1␤␤»
TimToady NYI I believe
masak yeah.
jnthn That's an odd error.
09:07 pecastro joined
TimToady wow, already using lol composer 09:08
jnthn hah, wsa thinking NativeCall wsa busted with something, then found a post from somebody using the same API from C and getting the same issue. 09:09
jnthn should trust NativeCall a little more :)
09:09 chenryn left
TimToady shoulda used eqv there 09:10
FROGGS ilogger2++ # taking notes for lichtkind 09:11
TimToady that's hanging in my liiving room
masak :) 09:12
is it a gnu?
TimToady yes, Free Software Award
masak ooh
TimToady a real trophy :)
jnthn read "is it a gun" :P 09:13
TimToady a head, hanging on the wall
FROGGS [Coke]++ # release
nwc10 TimToady: pass (except t/spec/S32-list/uniq.rakudo.moar) 09:14
09:15 chenryn joined
Ven are we on? 09:16
TimToady are we on what? 09:17
masak .oO( this is your brain on Perl 6. any questions? )
Ven I was wondering which stream was it that you were looking at
TimToady will take a nap now
Ven oh, is it lunchtime now? 09:18
ha, missed it. 09:19
jnthn Ven: yes, lunch
Ven: You can catch my session this afternoon :)
Ven I'm afraid the beach is more appealing to me :P
jnthn
.oO( Well, that's a beach... )
09:20
Ven jnthn: which track is it? what hour :) ?
jnthn Room Vitosha
14:50
tadzik FROGGS: I dunno, I was in the security talk
I don't think there was a use perl or die in fromt of me 09:21
Ven it's 12h20 for you there? So that I don't fail again :P
jnthn yes
FROGGS tadzik: ahh, no, I was watching markov's talk
09:21 fhelmberger joined
Ven Are there others Perl6 talks to look for? 09:22
Ven goes on looking for a schedule
sergot Ven: jnthn will give a talk today 09:23
Ven sergot: you ought to backlog faster :P
sergot ohhh, sorry :)
TimToady jnthn++ talks in a little over two hours from now 09:24
jnthn TimToady: Talking in your nap? :) 09:25
TimToady yup
jnthn time to go find the lunch :)
masak sleep tight, TimToady
09:26 spider-mario joined
jnthn My talk might be a good sleeping aid :P 09:26
masak riiiiiight
FROGGS one Worthington, two Worthington, three.... ZZZzzzZZzzzz 09:27
09:27 kurahaupo joined
TimToady it's more about XXXxxxXXXxxx 09:27
Ven Well, did they get recorded? 09:30
.tell cognome any updates for the FPW2014 talk videos :P?
yoleaux Ven: I'll pass your message to cognome.
09:34 zakharyas1 left 09:35 cooper left 09:37 anaeem1_ joined, anaeem___ left, gmunoz joined 09:45 kurahaupo left 09:46 j4jackj left
timotimo jnthns talk is going to happen soon, right? 09:51
oh, it's in a few hours 09:53
09:58 chenryn left 10:00 chenryn joined, Ven left 10:02 pmurias joined
pmurias masak: when will be jnthn's sekkrit project unveiled? 10:03
10:04 Ven joined
pmurias jnthn: when do you plan to unveil $sekkrit-project? 10:10
Ven duh, doing common lisp ATM and I'd really like to have scheme-style templates. 10:17
10:20 thou joined
masak pmurias: there is no sekkrit project. what sekkrit project? I don't know what you're talking about. do not mention a sekkrit project again. 10:22
huf so the ufo _did_ land? and you guys are experimenting on it? 10:23
masak I am not at liberty to say!!!
I mean, no!
huf you pretty much just confirmed that _AND_ that you know who shot kennedy.
jnthn pmurias: What sekrit project? :P
masak told you :) 10:24
10:24 thou left
jnthn pmurias: In completely unrelated news, my talk is at 14:50 Bulgarian time (so 13:50 where you are,I guess) and will be live-streated :P 10:25
uh, streamed
nwc10 act.yapc.eu/ye2014/talk/5633
masak .oO( live-streaked ) 10:27
jnthn I'm not ingy :P 10:28
masak m: say "jnthn" === "ingy"
camelia rakudo-moar 5dd10b: OUTPUT«False␤»
masak no, you're not :)
10:29 chenryn left
nwc10 I assume that this channel will do live text commentary of anything interesting that may (or may not) happen in jnthn's talk 10:29
en Ooh. I like how perl6 is my 6th buffer... heheh. 10:31
s/perl/#perl/
masak this is a general notice, completely unrelated to any excitement about jnthn's talk: a sekkrit project does *not* officially exist, and either way, it's sekkrit. 10:32
nwc10 can I just ask the NSA?
masak sssssh!
jnthn
.oO( so long as he doesn't think of asking my SAN... )
masak .oO( jnthn-san ) 10:33
10:34 chenryn joined 10:48 Ven left 11:03 kurahaupo joined
pmurias jnthn: why do we have both nqp::atpos and QAST::Var with scope eq 11:06
'positional' 11:07
?
11:11 Ven joined
tadzik sergot: I think HTTP::UA doesn't work for me because chunking 11:11
pmurias masak: do you think polyfilling Math.imul from the nqp runtime would be culturally acceptable in js land? 11:12
tadzik sergot: gist.github.com/tadzik/0fe43ae557ab02ff56a0
Ven I'm kinda afraid my internet is so bad I won't even be able to look at the livestream :P 11:13
sergot hmm 11:14
timotimo o/
sergot tadzik: so, you dont get an empty response?
hi timotimo
Ven currently stuttering a lot ...
tadzik sergot: no, I just get headers only
like http-ua gave up on the rest of it
timotimo i'm seeing curtis poe on the stream now
lizmat Ven: FWIW, crystal clear reception here 11:15
yoleaux 05:36Z <[Coke]> lizmat: - had to fudge some of the new throws_like tests for parrot & jvm.
Ven lizmat: I'm def. blaming my internet connection -- nothing else :).
sergot we handle chunking outside the SSL module.
lizmat just saying you're probably right :-)
sergot tadzik: so it should fail on non-ssl connection too.
does it? 11:16
tadzik sergot: well, non-ssl don't call github, do they
sergot let's try something else
tadzik chunked transfers are supported, right?
sergot yes
FROGGS++ has done this in HTTP::UA 11:17
tadzik: github.com/sergot/http-useragent/b...t.pm6#L110
it is here
tadzik I'll debug it 11:18
colomon Oh, right, YAPC::EU must be well underway by now?
sergot tadzik++ 11:19
tadzik colomon: it is 11:20
it's actually my first time using perl6-debu
g
colomon tadzik: just found a schedule
11:21 prevost joined
colomon tadzik: jnthn's got a talk in 30 minutes? 11:22
tadzik colomon: yes
colomon \o/
lizmat yapc.getclouder.com/vitosha.html
colomon I was thinking I wouldn't be able to watch anything, but the timezone difference is very much to my advantage for afternoon talks.
lizmat should give you the stream
colomon tadzik++, lizmat++ 11:23
tadzik sergot: tada! gist.github.com/tadzik/a149ff234286f05fbba8
it says Nil
sergot ohh 11:24
tadzik $response.header doesn't seem to have the chunked thingy inside 11:25
so it's like it read some of the headers, didn't see the chunked marker, so it fetched the rest of the headers and thought it's content 11:26
I'm half-guessing, but you get the idea
sergot I get it 11:27
trying to fix this
tadzik awesome
++sergot
11:28 telex left
tadzik "# Find the header/body separator in the chunk, which means we can parse the header seperately" 11:28
this doesn't seem to be doing what it claims to be doing :)
11:30 telex joined
sergot tadzik: seems like I have just fixed it... but... give me a sec 11:33
timotimo i looked a tiny bit at colomon's nativecall weirdness and couldn't figure out WTH happens yet.
sergot I think there should be if ~$response..... 'chunked' {
tadzik: ~ is missing there
colomon timotimo++
sergot tadzik: watch out, it hangs now.
FROGGS tadzik: can you put the data you already received in that gist too? 11:34
tadzik FROGGS: I think so 11:36
sergot say $response.header.field('Transfer-Encoding').values[0]; returns "chunked" 11:37
tadzik FROGGS: gist.github.com/tadzik/ce0bcc1d4bc6c7036b46 I think that's what you're after
$header is what's passed to .parse in that code
FROGGS sergot: how can that be true? do you also receive the snippet like tadzik that does not include the transfer-encoding header? 11:38
sergot tadzik: your gist is about the first test 11:39
not the second oone
tadzik uh oh 11:40
FROGGS ahh
tadzik I must've set a breakpoint too soon
wow, debugging stuff is slooow 11:41
FROGGS m: say ['chunked'] eq 'chunked'; say ~['chunked'] eq 'chunked' # sergot: I don't think we need to stringify the lhs
camelia rakudo-moar 5dd10b: OUTPUT«True␤True␤»
tadzik ah, got it
FROGGS tadzik: don't get nostalgic :o)
tadzik :P 11:42
ok, now it knows it's chunked
FROGGS :(
dalek p-js: b896123 | (Pawel Murias)++ | src/vm/js/ (2 files):
Implement nqp::x and nqp::isnull
p-js: b84189f | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp:
Implement nqp::atpos, nqp::push, nqp::pop, nqp::shift.

Add add_sideffect_op helper so that we can define ops with sideffects easily.
timotimo yay, jnthn talk coming up in ~10 minutes
FROGGS T-8
tadzik hmm
timotimo vitosha is the right stream, yes? 11:43
seems like
TimToady yes
FROGGS ohh, that was a short nap
TimToady yes 11:44
TimToady blames jnthn
sergot FROGGS++: yeah. we dont have to stringify this, thanks
TimToady he should've considered that when he decided to become a good speaker
FROGGS what I am wondering about... if this is going to be a 50 minutes talk, will he be able to improve it so that it will take 30 minutes next time?
TimToady we'll have added enough content by then to pad it out again 11:45
timotimo good point: repeat questions into the microphone
FROGGS ahh, moar features, yeah :o)
timotimo but jnthn has heard that hint a billion times before i bet
11:51 \00 joined
TimToady hey, where's my jnthn talk? I'm just getting the blue-ish screens 11:52
FROGGS me too
Ven go :-)
itz there is the first slide visible but not yet started
colomon I'm getting pre-talk info on jnhtn and the talk? 11:53
TimToady hopefully it's pre-talk...
and not someone just forgetting to turn it on
Ven considering the background noise, it has to :)
lizmat is seeing the same thing
masak talk ain't started yet. 11:54
TimToady we need some performance enhancement here... 11:55
FROGGS yeah, let him perform!
TimToady yes, okay 11:56
FROGGS I could 'ear something
colomon I hear him?
timotimo how long ago was the "A Rakudo Performance" talk?
TimToady that's jnthn
FROGGS ahh, better
itz starting
sergot yay!
FROGGS go jnthn++
Ven yay :)
tadzik TimToady: it's starting now 11:57
sergot polish perl workshop jnthn++
:)
woolfy Hey!!! jnthn++
TimToady yes, I know
tadzik err
tabfail
I meant timotimo
Ven Aaaand I can't watch it because it's incredibly stuttering
TimToady You feel old!?!
FROGGS TimToady: he's even younger than me >.<
timotimo oh? 11:58
i'm already watching :)
tadzik timotimo | how long ago was the "A Rakudo Performance" talk? 11:59
this confused me
colomon go jnthn++!
psch hi #perl6 o/
sergot is this a t-shirt from 2014 or 2013?
hi psch!
psch jnthn++ talk
timotimo there was a talk called that
psch hey sergot \o 12:00
12:00 chenryn left
tadzik sergot: 2013 I think, it looked embroidered 12:00
psch hm, the "who talks about what"-bar at the bottom doesn't go away for me?
Ven same here. 12:01
colomon surprise coming! \]o/
FROGGS \o/
colomon …. errr, third arm on me?
psch colomon: maybe it's an ear? :) 12:02
FROGGS or a huge mobile...
timotimo noooo why buffering! :(
colomon psch: my ears are pretty big, but they are also roughly symmetrical. ;) 12:03
masak \]o[/
timotimo hah
psch colomon: clearly your head was turned sideways a bit :)
12:04 gmunoz is now known as zoosha
timotimo jnthns slides are really pretty to look at 12:07
12:07 cognome joined
masak I was thinking the same thing. 12:07
jnthn++
timotimo actually, let me rephrase that 12:08
12:08 thou joined
timotimo they are structured very clearly, but also very pretty to look at for purely aesthetic reasons 12:09
masak aye. 12:10
12:10 biff_ joined
biff_ hello, I'm a Perl 5.x programmer who wants to learn about Perl 6 but who is confused about where to start 12:12
tadzik hello biff_
sergot tadzik: yeah, this is the 2013 one
12:12 thou left
sergot :) 12:12
tadzik oh, he showed his back? :P
biff_ hello tadzik 12:13
sergot almost :)
tadzik biff_: we have a set of articles aimed at p5 programmers
biff_: it's a bit aged, but they're a very good resource nonetheless
biff_: perlgeek.de/en/article/5-to-6
biff_ Thanks tadzik! 12:14
tadzik you're welcome :)
psch biff_: learnxinyminutes.com/docs/perl6/ is another great overview, without reference to perl5
tadzik hmm, we don't have that on perl6.org/documentation/ 12:15
timotimo why does this damn stream keep buffering, then jumping a tiny bit ahead? :(
Ven timotimo: feel you :(
lizmat doesn't see buffering...
TimToady mine is fine
biff_ I still know lots of companies using Perl 5.x but none moving to Perl 6
TimToady had some buffering for lichtkind's talk though
biff_ Does anyone have examples of companies using Perl 6? 12:16
tadzik someone should kick the projector
masak biff_: you might also be interested in github.com/perl6/mu/blob/master/do...ting_howto
moritz suffering from buffering, the good old favorite
Ven biff_: I use some perl6 in prod :)
sergot Ven++ 12:17
Ven lots of little CLI snippets here and there that do one thing, deploying, installing, copying, whatever
biff_ thanks Ven and sergot
timotimo my almost earliest optimization i made is again used as an example \o/ 12:18
biff_ Any IDE
lizmat TheDamian converted his "rename" script to Perl 6 and uses it daily
sergot biff_: you meant tadzik I gues :)
colomon timotimo++
sergot s
Ven lizmat: link :p ?
colomon lizmat: his rename script?
biff_ any ide's support Perl 6? 12:19
lizmat will look up after jnthn's talk, ok?
sergot biff_: I know about vim plugins
biff_: github.com/vim-perl/vim-perl
biff_ sergot yes :)
sergot padre highlights p6 iirc
itz and vim
biff_ ahh vim
Ven padre does?? 12:20
sergot Ven: I think so, checking
masak the slide that is up at the moment is awesome.
notice how highlighting is working both in the left and top frames. 12:21
colomon masak: bytecode deep dive?
flussence arrives late and frantically looks for stream links in the backlog :)
12:21 dwarring left
colomon flussence: yapc.getclouder.com/vitosha.html 12:21
masak colomon: yes.
flussence found it anyway, but thanks colomon++ 12:22
masak heat-seeking optimizer! 12:23
tadzik now write a module to warm code up so optimizer catches it :D
Class::Heater 12:24
lizmat realizes there's at least a 20 second delay on the video stream
masak tadzik: for ^1000_000 { module() }
biff_ I just saw that P6 is supposed to run in the JVM as well as Parrot, any opinions about which is better or does it seem to matter?
masak lizmat: no, I'm just slow ;)
tadzik biff_: MoarVM is the best :)
Ven biff_: moarvm ;)
masak biff_: moarvm! 12:25
lizmat biff_: YMV, JVM is not really usable for CLI script
Ven .o( take care of your variations ) # YMV
biff_ sweet thanks all
flussence biff_: they all have their useful points; JVM has the most stable threading (because it's... java), but it also takes forever to start up 12:26
psch luckily it comes with an eval-server, if you need it all the time anway
*anyway
masak biff_: let us know if you run into any kind of trouble! we're happy to assist.
biff_ oh I will I will :)
flussence (does r-p do threads yet?) 12:27
Ven erm, the very basic thread, it should. 12:28
I think I read something from the advent of 2y ago
lizmat r-p is not doing S17
masak why not?
lizmat bcause it's threads are incompatible 12:29
*its
masak curious.
lizmat no, not really 12:30
Ven hey people in the room
not that many people there :-)
timotimo BRRT! 12:31
\o/
Ven \o/
timotimo oh god 12:32
colomon ooo ooo ooo!
timotimo will this be the reveal
OH YES
colomon sounds like
tadzik *drum roll*
FROGGS now!
colomon YES!!!!!
timotimo HOLY YES
Ven YES
TimToady wowee
timotimo i wanted to do something like this, too
nwc10 oh, that was good luck, I just rstarted the stream
timotimo but it wouldn't have ended up as good at all :D
moritz what did jnthn++ reveal?
colomon moritz: profiler 12:33
Ven the truth]
nwc10 no, "Statistics"
colomon moritz: that knows about everything down to JIT
nwc10 the one after lies and damn lies
moritz \o/
timotimo I LOVE THIS. 12:34
Ven .o( I hope it uses rakudo-js )
tadzik :D
I wonder if we can build a nytprof-like view in this
where it shows you the code in green and red
moritz OMG please yes
and a flamegraph
tadzik and a vim plugin that does that :D
nwc10 and a pony? 12:35
tadzik yes please
timotimo this does everything i wished for and more 12:36
colomon had hoped this would be the surprise, but this is even better than I had imagined
tadzik literally a pony
Ven "figuratively literally" 12:37
\o/
tadzik I'm warming up the CPU for the git pull
colomon "I will push this right after the session." !!!!!
tadzik++
timotimo why is the talk almost over already? ;( 12:38
tadzik happy time passes fast
colomon timotimo: so I can get on with my day? :)
12:38 kaare_ left
masak I've never seen #perl6 this happy about a talk ever :D 12:38
tadzik since the debugger? :P
TimToady it's all the smileys
flussence the talk got profiled and optimized down to 40% as long
masak tadzik: no, ever.
lizmat :-) 12:39
Ven 355x o/
colomon !!!!!
moritz masak: the first R* release comes to mind 12:43
Ven any ETA for the recording? I see the camera now :-0 12:45
timotimo perl6-becnh, is that something jnthn built in secret, too? :)
lizmat :-)
sergot jnthn++ that was really awesome 12:46
lizmat jnthn++ indeed... 12:47
FROGGS jnthn++ # --profile++ is awesome
cognome jnthn++ # great presentation
yoleaux 09:30Z <Ven> cognome: any updates for the FPW2014 talk videos :P?
lizmat no I need to rewrite my talk :-)
cognome sofia people, thx for the feed.
timotimo kinda sad only so few people were actually attending that session
12:47 RandalSchwartz left
lizmat timotimo: I don't think there are as many people at YACP::EU in total 12:48
timotimo oh 12:49
lizmat and there's at least one less at jnthn++ 's talk than planned :p(
timotimo OK
lizmat :-(
timotimo yes :(
TimToady two
and my cat died the day after my 2nd retinal surgery... :(
lizmat hugs TimToady
TimToady hugs lizmat 12:50
Ven hugs hugs
lizmat good seeing jnthn wearing his hat :-)
TimToady hugme: hug all the hugs!
hugme hugs all the hugs!
Ven timtoadies hugme
12:51 donaldh joined
masak hugme: hug hugging! 12:51
hugme hugs hugging!
TimToady wanders off to hug his pillow smoar
masak 'night, TimToady
moritz hugme: hug going meta
hugme hugs going
flussence and a *++ to whoever's operating the streams this time; I appreciate having an easy-to-find rtmp url inside a plain <video> tag 12:53
timotimo is also happy the sound quality was pretty much perfect 12:54
12:54 xenoterracide joined
sergot tadzik: have you tried to do some more debugging? 12:54
12:54 guru joined 12:55 guru is now known as Guest50994, Guest50994 is now known as ajr_
flussence
.oO( methinks someone's font is missing a U+2615 HOT BEVERAGE glyph... )
12:57
timotimo awaits the push notification eagerly
donaldh darn, Sofia is two hours ahead of me. Missed jnthn++'s talk 12:58
cognome Ven: you should ask elbeho
FROGGS timotimo: you have something new to play with? :D 12:59
timotimo FROGGS: yes! :)
13:00 ajr_ left
cognome Ven: here, www.dailymotion.com/user/journeesperl/1 13:00
FROGGS I have v5 one liners that takes 1.1s where the P6 equivalent takes .3s or so... I'm eager to --profile that
timotimo oooh, Ven did a talk
13:01 ajr joined
timotimo oh no, it's completely in french 13:01
13:01 ajr is now known as Guest13217 13:02 Guest13217 is now known as ajr_, Ven left
flussence a few years ago in here I said one day I was going to port frozen-bubble to perl6... and I'm running out of excuses to put it off /o\ 13:02
timotimo :D
cognome timotimo: According to him, he did it almost at gunpoint.
FROGGS flussence: I have some frozen-bubble knowledge fwiw :o)
timotimo oh my
flussence (that game was one of the first times I'd seen perl5 code... and it scared me away from it for a good few years :) 13:04
moritz wow, I even understand those talk titles 13:05
sergot masak's screen
oh, it's gone now
FROGGS flussence: yeah, I helped rewriting it... use that as a base: github.com/kthakore/frozen-bubble 13:07
13:13 ggoebel11111116 joined
timotimo can't wait to look at the implementation of the profiler 13:14
13:14 fhelmberger left 13:15 ggoebel11111115 left
timotimo oooh, masak has a lightning talk in this upcoming session 13:16
tadzik sergot: no, I got overexcited with other things :) 13:17
sergot hope I will be able to see masak's lighting talk, I have a train in an hour. 13:19
tadzik: I think I know what made you overexcited. :)
Ulti 7/win 2 13:23
erk
:'(
13:24 Ven joined
Ven cognome: thanks! 13:24
timotimo: yep, sorry :P
[Coke] jnthn++, and I've only seen people jnthn++, not the original jnthn++ thing . :) 13:25
13:26 xenoterracide left
dalek Heuristic branch merge: pushed 22 commits to nqp by jnthn 13:27
Ven jnthn++
sergot jnthn++
flussence jnthn++
ooh, that moosex thing was neat 13:29
sergot sjn++
woolfy hugz TimToady because of cat AND retina AND not being in Sofia 13:31
colomon oooooo 13:33
woolfy cognome: it was me plus 1 other person (you? maddingue?) who convinced Ven to do a talk... It was fun.
Ven woolfy: elbeho, iirc. 13:34
masak Ven++ # giving a talk
Ven well, now I can get laughed at on video, yay :P
it was a fun day !
woolfy Ven: no no, not laughed at, applauded at and hugged and ++
Ven I only talked with Maddingue at the post-conf (he was talking about how js is terrible =P) 13:35
13:36 jnap joined, jnap left
jnthn Note that perl6-bench was started by japhb++, and wasn't one of my secret projects. :) 13:38
timotimo .tell japhb it'll now be very interesting to be able to run benchmarks with nqp-m --profile (and perl6 --profile later when it works) with a given (or default (big)) work load
yoleaux timotimo: I'll pass your message to japhb.
masak japhb++ # perl6-bench 13:39
jnthn++ # profiler
13:43 jnap joined, [Sno] left
sergot masak! :) 13:47
flussence :D
Maddingue me? badmouthing JS? I can't believe that :3 13:49
lizmat moarving the pictures?
13:50 kaare_ joined
timotimo why does the stream hang _< 13:51
i missed it! 13:52
damn ti!
timo is now sadface
FROGGS me too :o(
woolfy masak++
colomon masak++
woolfy I liked the caml _> coccoon morph! 13:53
jnthn cute :)
masak++
donaldh masak++ # that was really nice :-)
lizmat and another part of my talk that I can throw away :-)
woolfy coccoon? Well, I've seen an important somebody spell it that way...
masak I think I spelled it right...
oh, woolfy didn't above, I see :) 13:54
woolfy masak: lizmat and I have a nice piece of paper where TimToady wrote "coccoon"!!! 13:55
Ven link? What's happening
masak woolfy: yes, I remember now :)
lizmat: talked about it on PLPW.
13:55 molaf joined 13:57 thou joined, molaf left 14:01 thou left
timotimo btw: rc-forest-fire *still* doesn't burn trees properly 14:02
masak timotimo: probably for environmental reasons. :P 14:04
timotimo of course 14:05
gtodd errm reviewing notes to self don't trust my terminology so dumb question ... if I do perl6 -e 'say $*ARGFILES.lines.elems' file.txt ... I'm calling lines as a 'method' on the input file(s) ?? but if I do: perl6 -e 'say lines().elems' file.txt it's a function
timotimo aye, lines exists both as a method on IO objects as well as a global subroutine
gtodd actually not concerned about the ontological status :-) just want to know what words to use
timotimo ah, ok 14:06
gtodd yay!
masak gtodd: correct.
gtodd: ontological status is also correct :)
gtodd heh
timotimo: masak: thanks .... I wrote that note almost a year ago so it stuck :-) 14:07
timotimo :)
14:07 thou joined
masak gtodd: at some point in the distant past, the idea was that if you "exported" a method, it would be available as a global sub. that idea didn't work so well, so subs and methods are ontologically distinct. (although they get more identicat again the deeper you dig.) 14:08
lizmat otoh, "is export" on methods still work
which I found out the other day :-)
gtodd perl6 ideas, syntax, etc. seems more "sticky" (there must be a language design concept that describes this) even if you don't use it too often ... 14:09
masak that's news to me. :)
lizmat $ ack 'is export' | grep method | wc -l 14:11
113
gtodd maybe it's just that when learning perl5 you get a internal psychic reward every time you master an idiom ... whereas perl6 has less of a jolt but is longer lasting
donaldh what do double square brackets do? e.g. [[ &with ]] 14:12
14:16 biff_ left
gtodd masak: presumably separating them that way doesn't make perl6 messier/harder to maintain ... :-) 14:17
tadzik > perl6 --profile SpaceInvaders 14:18
No profiling support
:(
I recompiled rakudo and all the things, even redownloaded
does it need a commandline switch to compile it with profiling support?
carlin HEAD nqp and HEAD moar?
tadzik oh, HEAD moar 14:19
timotimo tadzik: also, you need to be in the nqp folder for it to find the html template it'll use to create the profile
(or put the template in the same relative directory)
tadzik hhuh
oh well, I'll listen to the keynote for now 14:20
lizmat
.oO( Viva La Revolution! )
dalek p: c830eaf | jonathan++ | / (2 files):
Install profiler template; use it.
14:24
kudo/nom: b61700d | jonathan++ | tools/build/NQP_REVISION:
Bump NQP_REVISION to get MoarVM profiler support.
14:28
kudo/nom: ce71b85 | jonathan++ | src/Perl6/Actions.nqp:
Some frame names for better profiler output.
jnthn That should make it rather easier. :) 14:29
donaldh was thinking about adding profiling to the JVM backend. Will look at this and see if I can port it. 14:31
timotimo without a bytecode specializing phase ... no, you won't be able to :( 14:32
14:32 Ven left
donaldh ? 14:32
timotimo well, the trick for the profiler on moarvm is that it just uses our existing "spesh" framework 14:33
the first time it encounters a frame, it adds instrumentation bytecodes throughout that frame
donaldh ah. in-frame profiling? 14:34
14:34 Mouq joined
timotimo something like that 14:34
i don't know if that refers to something that ... is a thing
donaldh Well you can do method profiling but that gives no visibility of loops or expensive instructions within a method. 14:35
jnthn donaldh: Really, the profiler is providing a lot of insight into what Moar's dynamic optimizer is doing.
timotimo ah
Mouq japhb: re: irclog.perlgeek.de/perl6/2014-08-22#i_9225656 because "method postcircumfix:<[ ]>" and "…:<{ }>" no longer mean anthing special, so it's inconsistent to have "method postcircumfix:<( )>" be special 14:36
donaldh used to use quantify for C/C++ code that gave statement level profiling.
jnthn: as opposed to profiling perl 6 code? or both?
[Coke] anyone has a URL for jnthn's talk, please let me know. 14:37
jnthn donaldh: It does that too
timotimo jnthn: it just doesn't show up in the profile output yet? 14:38
jnthn timotimo: huh?
timotimo statement-level profiling?
jnthn Oh
No, we don't do that.
timotimo all i see is callees summed up
jnthn That's not immediately interesting for now.
14:39 anaeem1_ left
jnthn Though you could insert statement recording things too 14:39
Probably wants to be an option.
timotimo right; but it'd be easy to put into the profiler itself, right? just add a little profiler slot for each line annotation that shows up in the frame and put "i'm spending time on this line now" bytecodes where the line number annotations are
jnthn Yeah, it's do-able without too much effort. But I think we want a --profiler-option=... or so to turn such things on. 14:40
timotimo aye
jnthn Since it'd be more coslty.
But yeah, not hard to add overall
timotimo wow, there's only 4 ops the jit has to know about for profiling to work properly? 14:41
gtodd donaldh: re: [[ &with ]] it is hard to find a canonical syntax reference for perl6 ... hopefully there will be an even a better than perldoc documentation system for perl6 preinstalled and easy to use (maybe it will be a "killer app"and people will install perl6 just to use it!) ... BTW if your question gets answered in here it will be logged on the interweb :)
jnthn sure
less is more :) 14:42
timotimo there used to be this WITCH thing
it could mention "[[&" as "a thing"
hoelzro morning #perl6 14:43
where do regression tests go for Rakudo? I would like to write one for rt.perl.org/Ticket/Display.html?id=122593 14:44
timotimo ... didn't we put a rc-forest-fire implementation in that uses a "warming" state?
it seems like we don't have the correct rc-forest-fire for perl6 in perl6-bench
.tell TimToady do you know something about the status of perl6/rc-forest-fire in perl6-bench? i thought it was supposed to have a "warming" state 14:45
yoleaux timotimo: I'll pass your message to TimToady.
dalek kudo/nom: 60cd9da | (Rob Hoelz)++ | src/core/Numeric.pm:
Check for definedness before invoking isNaN

Otherwise, things like Num === Num fail
14:46
timotimo interesting, the nqp version of rc-forest-fire goes through all the neighbours to check for a burning tree, but doesn't short-circuit
Mouq hoelzro: Maybe after NaN === NaN in S02-types/nan.t ?
hoelzro: Since it's related to that
hoelzro: Though S02-types/num.t looks like a better fit 14:47
hoelzro Mouq: yeah, I think num.t would be better
dalek ast: f59d8d8 | (Rob Hoelz)++ | S02-types/num.t:
Add regression test for RT 122593
14:48
14:50 Mouq left
masak lizmat: how can I run an 'is export'ed method as a sub? 14:50
m: class C { method foo is export { say "OH HAI" } }; foo 14:51
camelia rakudo-moar 5dd10b: OUTPUT«===SORRY!=== Error while compiling /tmp/ddZCwd3Byj␤Undeclared routine:␤ foo used at line 1␤␤»
gtodd donaldh: something like ack '\[\[' docs/* might give a hint
jnthn masak: You didn't import 14:52
m: class C { method foo is export { say "OH HAI" } }; import C; foo(C)
camelia rakudo-moar 5dd10b: OUTPUT«OH HAI␤»
masak I suspected it was something like that.
wow, you can import a class like that? cool.
lizmat++ jnthn++
TIL.
jnthn Module too
masak *nod* 14:53
[Coke] can't build nom-moar . 14:54
Stage parse : Cannot invoke this object (REPR: P6opaque, cs = 0) 14:55
[Coke] tries a super dooper clean.
masak bus &
colomon PROFILE!
jnthn bus & 14:56
[Coke] does that make a bus number of 2?
14:57 kaleem left 14:58 ajr_ left
colomon 5% of ABC's time is going to prefix:<+> ?!?! 14:59
moritz probably Str->Num conversion? 15:00
colomon is going to need to try again with jit
moritz: I hope so.
but even so, that's pretty extreme
afk # off to store
donaldh no, that's two bus numbers of 1. 15:01
timotimo parse-json spends 7.77% of its time in CAPHASH (all jitted), 7.28% in MATCH (also all jitted) and 6.73% in parse-json's "str" (all spesh'd), which is there to match ""-delimited strings
15:01 guru joined 15:02 guru is now known as Guest66747, Guest66747 is now known as ajr_
timotimo jnthn: the number of deoptimizations on the "front page" doesn't seem to correspond with the number of local deoptimizations in the deopt panel; is that because it's "times run into deopt" vs "frames that ended up being deopt'd"? 15:03
Ulti benchmark of one of my bioinfo tests :3 mattoates.co.uk/files/profile-14087...79293.html jnthn++ ! 15:05
timotimo listiter's reify takes up a quarter of your run time exclusively ... :S 15:08
the GC is very happy about your program, though 15:09
dalek ast: 2cc1341 | (Rob Hoelz)++ | S02-types/num.t:
Bump test count in num.t
Ulti yeah I endlessly split apart strings and put them back together again
well put new ones back together again
gtodd donaldh: I'm just letting you know some of my strategies for dealing with documentation while being a mere user of perl6 :-) ... anyway [[ &with ]] has something to do with infix functions of which I know nothing :-P 15:10
Ulti guess I should implement it with substr or something instead
dalek Heuristic branch merge: pushed 96 commits to rakudo/S26-WHY by hoelzro
15:10 denis_boyun left
donaldh gtodd: yeah, I know [+] is a reduce operator. I think [&with] is a reduce operator that uses a supplied function, but don't get the [[&with]] syntax. 15:13
gtodd
.oO( maybe it's an array of infixes! errm ... )
15:15
;)
15:16 Mouq joined
psch m: sub sum($a, $b) { $a + $b }; say 3 [&sum] 4; #`[[ infixify ]]; say [[&sum]] 6, 7 # and meta op 15:16
camelia rakudo-moar 5dd10b: OUTPUT«7␤13␤»
psch array of infixes doesn't sound so wrong in my understanding
gtodd :-D 15:17
psch m: sub sum($a, $b) { $a + $b }; say [&sum] 6, 7 # and meta op
camelia rakudo-moar 5dd10b: OUTPUT«===SORRY!=== Error while compiling /tmp/I41buWCkNf␤Two terms in a row␤at /tmp/I41buWCkNf:1␤------> sub sum($a, $b) { $a + $b }; say [&sum] ⏏6, 7 # and meta op␤ expecting any of:␤ postfix␤ …»
psch so [[&func]] is [&func] as a list meta op, and [&func] is &func as infix
Mouq enjoys that if one translates rosettacode.org/wiki/Mandelbrot_set#Perl to Perl 6, it's many times faster, especially as the accuracy ("1 .. 20") is increased
psch that's what i was trying to show with these examples; i'm not sure it's 100% correct, but it seems pretty close 15:18
Mouq psch: That's right :)
donaldh I guess I'd have guessed<&func> as an infixy.
gtodd copy/pastes psch's explanation into ~/Perl6-notes-to-self.txt 15:19
donaldh: yes but I think that <&foo> was ambiguous syntax in someway 15:20
donaldh So it ended up reusing [ ]
psch <&foo> is qw[ &foo ] 15:21
donaldh It's seems to be a special case which is a shame, but now I get it.
here's the context for the question: github.com/rakudo/rakudo/pull/304/files 15:22
15:23 anaeem1 joined 15:24 Mouq left, biff_512 joined 15:25 Ven joined
gtodd Perl6 syntax [[&functiion]] In perl6 custom functions can operates as an infix so ... [&func] as a list meta op, and [&func] is &func as infix. 15:26
EXAMPLE: sub sum($a, $b) { $a + $b }; say 3 [&sum] 4 ; say [[&sum]] 6, 7 # and meta op
oops ..
oh well now it is documented on the interweb :) 15:27
15:27 anaeem1 left
Ven were there other talks to look for ? 15:29
or in the incoming days?
timotimo oh, interesting
reify takes a :$sink; named arguments make spesh bail out iirc ... so we get the benefit of passing ":$sink" on to other reify's, but we won't be speshing that frame 15:30
actually, i do see spesh'd frames in there 15:31
oh, of course, if :$sink is *not* passed, it'll be interned and spesh'd
15:32 [Sno] joined
donaldh what's the runtime overhead of the moar profiler? 15:33
Ulti yeah so going through all the bits of my call graph ListIter.reify is the super painful bit in all of my tests
donaldh: I'm just checking that :) 15:34
donaldh 13 seconds ontop of 32 seconds it takes for my test to run without profiling 15:35
~40% of runtime 15:36
timotimo Ulti: that also includes the time it takes to dump the json data into the template, though 15:37
Ulti yeah
timotimo can you run something that takes more like a minute, perhaps?
donaldh that's quite good. JVM profilers often cause a bigger slowdown.
[Coke] verified, nom is broken on osx on moar. 15:39
Ulti ... I built it on OSX like 5 minutes ago
donaldh [Coke]: what's broken. I might have some time to take a look.
[Coke] is there a missing version bump post release?
Ulti I have the profiler output to prove it 15:40
I get the same old make error I always get though
[Coke] gist.github.com/coke/6e2bf325f6af232394bb #donaldh
^^ new make error, followed by the old one.
15:41 zakharyas left
Ulti [Coke] what OSX/XCode version are you on? 15:41
[Coke] that was with a rm -rf install, and perl Configure.pl --gen-nqp --gen-moar --backends=moar
os x 10.9.4
Ulti ah I was using rakudobrew so might have been a lot of cached stuff
[Coke] xcode 5.1.1
Ulti same as me 15:42
[Coke] crap. one local change... one moment...
Ulti but yeah I haven't done a completely clean build
btyler building master/master/nom r-m on 10.9.4, results in a bit
Ven while I think about it... jnthn++'s done some web, now :P
[Coke] crappity. "that couldn't possible be..." "oh, yes, it is" 15:43
my bad.
Ulti fancy web too jnthn++
where bootstrap is always fancy enough
timotimo %)
[Coke] m: multi infix:<===>(NaN:D, NaN:D) { True } ; say Num === Num 15:44
camelia rakudo-moar 5dd10b: OUTPUT«===SORRY!===␤Cannot invoke this object (REPR: P6opaque, cs = 0)␤»
donaldh yeah, jnthn++ didn't just write a profiler. He polished its UI too.
[Coke] masak, rakudobug?
Ulti im tempted to have a play and see if I can do something for the call graph in d3
gtodd re: <&foo> is qw[ &foo ] so we use [[&foo]] ... I wonder if it is it a workaround or spec'ed in stone ... :) anyway thanks for the examples and explanation 15:45
psch: ^^
donaldh Ulti: that's what I was thinking too. I've wanted to write a d3 call profile graph for a while but just not made the time.
gtodd Ulti: !! nice :) 15:46
Ven [Coke]: didn't that just got fixed?
Ulti hmm maybe some form of sequence plot would be good 15:47
donaldh wow, moar is getting fast. I've not done moar nqp / rakudo build for a while.
timotimo that's been kind of a focus recently :) 15:48
donaldh :D
psch gtodd: the [] for qw can be anything brackety except parens 15:49
timotimo better build times and spectest times would increase developer satisfaction and turn-around times, was the thought (speculation on my part)
psch gtodd: it's just that < > is q:words{ }
Ulti donaldh: something like this might work if it folded out and zoomed greencracker.net/?p=1685
donaldh Well that's why I'm desperate to improve JVM backend in that regard.
psch i'm fairly sure that < > doing word quoting is not really up for debate, but i'm not that involved in writing the spec, only a bit in implementing it 15:50
gtodd: perlcabal.org/syn/S02.html#Angle_qu...e_words%29 15:52
special casing <&func> as infix and keeping < > as qw// seems really headache-y, in any case, so the latter would likely have to go 15:53
gtodd right 15:54
15:55 biff_512 left
timotimo donaldh: and your contributions are definitely appreciated! by me at least :) 15:56
donaldh with a bit of guidance from jnthn I might have another go at removing priorInvocation. It's fairly futile looking for performance improvements while that's still there. 15:57
timotimo donaldh: if you're looking for something else that'd be less of a "hide and seek", you can look into what i haven't yet implemented for the BootInterop
i'm pretty sure having some amazing code example that starts with "use Blah::Blubb:from<Java>" would be something that'll raise a few eyebrows 15:58
donaldh yes, indeed.
timotimo currently we don't have sugary invocation for overloaded methods where we'd have to inspect types
donaldh Do we need some type inspection nqp primitives? 15:59
psch we also have broken outers on precompiled modules that use a module below their own namespace
i've looked at it but i don't understand why...
15:59 denis_boyun joined
psch that seems like a bit of R* show stopper; URI e.g. breaks in that way 16:00
gist.github.com/peschwa/e5aee72dcce9d4b60ec1 the symptoms 16:01
i'll better check if that's still happening though... :)
timotimo donaldh: we do have istype/isint/islist/isstr/isnum/ishash 16:03
gtodd donaldh: I know nothing about Java development tools and techniques but I guess in the enterprise java world there are lots of cool ways for speeding up builds etc. .?
donaldh what about JVM type inspection? 16:04
gtodd .. it would be really cool if hardcore Java developers started looking to perl6 as a go to quick scripting language :-)
donaldh gtodd: It's too slow for that just now.
gtodd: That is where I'd like to get to. 16:05
gtodd donaldh: yeah
it depends on your esthetics but I think it's nicer to look at than scala :) 16:06
timotimo i know of at least one person who says java people would look to jython to write test code ...
but that was said like 3 or 4 years ago
Ulti yeah if the whole of the Java API was easily available from Perl 6 that would make it attractive to Java types desperate to write equally verbose code in Perl :/
donaldh $dayjob is quite a conservative java house. i.e. no scala or clojure or anything.
I can envisage using Perl 6 to compose new things out of existing Java libraries. 16:07
gtodd donaldh: scala sure starts up fast compared to perl6-j but it doesn't seem to build must faster
donaldh: cool
donaldh And using Perl 6 for things that Java sucks at like writing parsers. 16:08
gtodd donaldh: Grammars, tests, ... ?
donaldh yeah
gtodd hmm could one use NativeCall ? 16:09
I guess if you're inside the JVM the Java API is what people want to be able to access ... 16:10
I guess scala clojure do that nicely 16:11
donaldh That's what timotimo's BootInterop does.
It's just that we don't have nice method signature sugar. You need to use JVM name mangling to form the function signatures.
timotimo it's not "timotimo's bootinterop" :) 16:13
donaldh oh, apologies.
timotimo sorear started it, jnthn continued working on it and i added a bit more stuff 16:14
gtodd nicely volunteered ?
Ven clojure's JNI lib is still a bit better, btw :P 16:15
donaldh I think we're using JNA for C native calling. 16:16
colomon Huh. Just looked at the allocations for ABC. 16:17
donaldh lots?
timotimo loads and loads of BootArray?
colomon ABC::Grammar is being allocated 97,544 times reading a 7335 byte file. That seems very, very wrong.
parsing, not reading. 16:18
timotimo one instance gets allocated for every cursor we build
if the number appears too high, it may be due to too much backtracking perhaps?
colomon that still seems very high, doesn't it?
could be, I doubt the grammar is optimized
timotimo possibly
well, we do have a grammar optimizer :P
but it doesn't do terribly much yet 16:19
16:21 FROGGS[mobile] joined
psch alright, apparently that was one of those rare cases of "ignore it and it goes away" 16:22
16:22 klaas-janstol left
psch (whoever fixed the precompiled-modules-on-jvm breakage)++ 16:22
16:22 hoelzro left 16:23 hoelzro joined
donaldh decommute& 16:28
16:28 donaldh left 16:31 PotatoGim_Home joined
[Coke] ven: that one bug was fixed, but this regressed: 16:36
r: say Num===Num
camelia rakudo-jvm 60cd9d: OUTPUT«(timeout)»
..rakudo-{parrot,moar} 60cd9d: OUTPUT«True␤»
[Coke] ... dafuq?
moritz anythin' wrong with it? 16:37
16:37 PotatoGim_Home left
[Coke] ah, missed that hoelzro++ already fixed the bug he reported. 16:37
dalek kudo/nom: 5bd2d48 | coke++ | docs/release_guide.pod:
minor relguide updates
16:38
16:41 Akagi201 left
dalek kudo-star-daily: 9c78db0 | coke++ | log/ (14 files):
today (automated commit)
16:41
rl6-roast-data: a072123 | coke++ | / (6 files):
today (automated commit)
16:41 dayangkun left, Akagi201 joined
[Coke] moar, parrot, moar-jit have clean spectest runs. jvm failing 1 test. 16:41
fudged a lot of stuff yesterday; LHF - pick a file with a rakudo fudge that doesn't mention a ticket, and open a ticket pointing back at the test explaning what the symptom is. 16:43
(then update the fudge marker to refer to RT #whatever)
16:43 Rotwang joined 16:46 Akagi201 left
[Coke] r: perl6: sub foo { my $s; for 1..3 { $s += $_ } } ; say foo() 16:50
perl6: sub foo { my $s; for 1..3 { $s += $_ } } ; say foo()
camelia rakudo-{parrot,jvm,moar} 60cd9d: OUTPUT«Nil␤»
..niecza v24-109-g48a8de3: OUTPUT«Use of uninitialized value in numeric context␤ at /home/p6eval/niecza/lib/CORE.setting line 1389 (warn @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 301 (Any.Numeric @ 8) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /tmp/tmpfile line…»
[Coke] m: say 16:53
camelia rakudo-moar 60cd9d: OUTPUT«␤»
[Coke] m: ord
camelia rakudo-moar 60cd9d: OUTPUT«===SORRY!=== Error while compiling /tmp/kOMsz9M_DX␤Calling 'ord' requires arguments (if you meant to operate on $_, please use .ord or use an explicit invocant or argument)␤ Expected: :(Cool $s)␤at /tmp/kOMsz9M_DX:1␤------> [3…»
16:54 Ven left 16:56 treehug88 joined
TimToady enteres a Warming state 16:56
yoleaux 14:45Z <timotimo> TimToady: do you know something about the status of perl6/rc-forest-fire in perl6-bench? i thought it was supposed to have a "warming" state
16:56 kaleem joined
[Coke] tries to figure out how ord does that. 16:56
TimToady timotimo: perl6-bench still has the old one because it exercises the optimizer so hard :) 16:57
or doesn't yet, as the case may be
[Coke] m: say ( { 1 + 1 }, { 2 + 2 } ).>>.() 17:00
camelia rakudo-moar 60cd9d: OUTPUT«2 4␤»
17:02 kaare_ left 17:03 Ven joined 17:04 ajr_ left
Ven [Coke]: I was indeed talking about hoelzro++'s fix ;) 17:04
17:04 pecastro left 17:11 denis_boyun left 17:13 kaleem left, telex left 17:14 telex joined 17:20 grettis joined 17:25 hoelzro_phone joined 17:27 hoelzro_phone left, hoelzro_phone joined 17:28 hoelzro_phone left
Ven looks at his slide saying "rakudo-js (sadly abandoned)" thinking he's wrong now o/ 17:28
(being wrong)++
17:28 hoelzro_phone joined
TimToady Progress depends on being wrong frequently, but not always. :) 17:34
This is why most managers hate progress, though there are two different failure modes here. 17:35
...named "never" and "always"... 17:36
timotimo TimToady: do you want to figure out why the version perl6-bench has doesn't spread fires? 17:37
TimToady oh, that's a bug I fixed at some point; something to do with losing the identity of the neighbors through an assignment rather than a binding, I think 17:40
since it precalculates all the neighbors by reference, it has to make sure the main array continues to refer to those same containers 17:41
otherwise you're always checking your original unburning neighbors, not the currently burning ones
17:42 Ven left
TimToady is trying to remember how to fix it 17:42
unfortunately the current RC entry is the Warming algorithm 17:43
and I don't really see offhand where the problem is; it copies the state back into @!grid[$i][$j], so it should retain the identity of the container in the step function 17:51
maybe that's why I changed the algo, because I couldn't figure out why this one didn't work anymore... 17:58
the problem seems to be that all the neighborhoods end up with the same list, so something is getting reused that shouldn't 18:12
18:16 Ven joined
TimToady but if I fix that, it still doesn't work :( 18:21
18:30 Akagi201 joined
TimToady I suspect the problem is take-rw being busted 18:30
I know how to work around that now, so maybe I'll just do that for now 18:31
18:32 BizarreCake joined 18:35 Akagi201 left
dalek rl6-bench: c5a7716 | TimToady++ | perl6/rc-forest-fire:
make forest fire propagate

work around an apparent bug in take-rw
18:37
timotimo do we test take-rw in spectests much? 18:38
TimToady dunno 18:39
timotimo hm.
TimToady m: my $x = 42; my $y := (gather take-rw $x)[0]; $y = 43; say $x; 18:40
camelia rakudo-moar 5bd2d4: OUTPUT«43␤»
TimToady well, that works
m: my $x = 42; my @y := gather take-rw $x; @y[0] = 43; say $x; 18:42
camelia rakudo-moar 5bd2d4: OUTPUT«43␤»
TimToady that works too, hmm
18:44 guru joined, guru is now known as Guest42167 18:45 Guest42167 is now known as ajr_
timotimo RT #77334 is probably due to "for" no longer returning values if it's the last statement in a function 18:49
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=77334
timotimo r: sub foo { my $s; do for 1..3 { $s += $_ } } ; say foo()
camelia rakudo-jvm 5bd2d4: OUTPUT«(timeout)»
..rakudo-{parrot,moar} 5bd2d4: OUTPUT«6 6 6␤»
TimToady that's just aliasing 18:50
r: sub foo { my $s; do for 1..3 { nqp::decont($s += $_) } } ; say foo() 18:51
camelia rakudo-{parrot,jvm,moar} 5bd2d4: OUTPUT«1 3 6␤»
TimToady r: sub foo { my $s; do for 1..3 { +($s += $_) } } ; say foo()
camelia rakudo-{parrot,jvm,moar} 5bd2d4: OUTPUT«1 3 6␤»
TimToady but yeah, needs the do there 18:52
maybe we should have a value() function or some such 18:54
nqp::decont is a bit unwieldy 18:55
now I'm wondering whether :kv should be called :kc if it returns the containers 18:56
and :kv if it deconts
it's always been kind of a pity that var and val start with the same letter... 18:58
FROGGS hehe 19:01
timotimo νal and var? :) 19:02
geekosaur sounds like an 80s primetime soap opera to me :p 19:03
FROGGS that --profile is so awesome! 19:06
TimToady .u ν
yoleaux U+03BD GREEK SMALL LETTER NU [Ll] (ν)
19:06 pecastro joined 19:17 klaas-janstol joined 19:25 hoelzro_phone left, hoelzro_phone joined 19:31 Ven left, Akagi201 joined, darutoko left 19:33 darutoko joined, hoelzro_phone left 19:34 Ven joined 19:35 Akagi201 left 19:36 darutoko left
lizmat m: say Num === Num 19:46
camelia rakudo-moar 5bd2d4: OUTPUT«True␤»
masak the way forward with macros got quite a bit clearer during the attendees' dinner. 19:48
lizmat m: say $*PERL.compiler.version
camelia rakudo-moar 5bd2d4: OUTPUT«v2014.8.4.g.5.bd.2.d.48␤»
masak the missing piece that has now fallen into place (and there will be a blog post about this at some point) is that no, we're not going with QAST as the syntax-builder API. 19:49
we're going with something that's a facade of that, and a good bit above that in abstraction.
as a first approximation, for every syntactic construct in the STD.pm6 grammar, there will be some type in this API. 19:50
(hi #perl6)
TimToady yeah, QAST actually starts cheating pretty early :)
masak the winning argument for me was that a macro author doesn't "think" in QAST. it's way too low-level. 19:52
a macro author thinks in the primitives of individual language constructs.
TimToady and new slangoids get new types somehow
masak yep. 19:53
yes, the whole API should be written with extensibility in mind.
TimToady so it's not a Quasi AST :)
FROGGS hmmm, I think I have to see it... can't imagine what you have in mind
TimToady it's an Offical AST, one before 'P' :)
masak and the actions need to be in on this too -- they'll probably end up generating more PST than QAST.
gtodd wonders if anyone has written lectured or blogged about macros 19:54
masak gtodd: blogged.
TimToady never
oooh, you mean Perl macros...
gtodd heh perl6advent.wordpress.com/2012/12/2...23-macros/ 19:55
masak gtodd: strangelyconsistent.org/blog/macros...-bit-of-d1 strangelyconsistent.org/blog/macros...ing-things strangelyconsistent.org/blog/macros...-d1-merged strangelyconsistent.org/blog/macros...ak-shaving strangelyconsistent.org/blog/macros...-d2-merged strangelyconsistent.org/blog/lexpad...eed-fixups
gtodd hehehe
Ven masak: it,s funny how you say that while I'm doing some Common Lisp trickery :) 19:56
sergot evening o/ 19:57
masak [Coke]: rt.perl.org/Ticket/Display.html?id=77334 is not valid any more, at least not with that kind of for loop.
sergot masak++: nice lighting talk :)
masak m: sub foo { my $s; ($s += $_ for 1..3) } ; say foo()
camelia rakudo-moar 5bd2d4: OUTPUT«6 6 6␤»
gtodd .. macros from the Lisp gods of yore ...
sergot the last one I could have seen
masak [Coke]: need to do it that way instead :) 19:58
sergot: thanks :)
sergot: "last one I could see", I think you mean.
Ven well, I definitely think scheme/racket templates are easier than CL macros.
masak Ven: I will need to have a look at those. I glanced at them when last we spoke about Racket.
sergot uh, yeah, this is it :)
Ven masak: I don't know if I still have my little examples... 19:59
the guide has a lot of template macros tho, look at them :)
even macro-generating macros using templates
Ven is probably going back to racket after this CL project... 20:00
timotimo masak: the stream stopped right when you were explaining the last bit and started the demonstration and i only got it f5'd when you were about done ;( 20:01
Ven oooh, I didn't know masak was talking :( 20:02
masak timotimo: well, what can I say. that was a once-in-a-lifetime opportunity.
20:02 BizarreCake left
timotimo ;_; 20:02
masak hugs timotimo
timotimo obviously the code has been pushed onto a memory-hole?
masak what, I should push it? that insignificant bit of code? 20:03
hokay.
timotimo i'd like to see it locally, too!
(and also feed it into the profiler
of course :) )
flussence profile all the things!
masak timotimo: github.com/masak/camel-butterfly
timotimo: two things: 20:04
timotimo: you should probably start by loading github.com/masak/camel-butterfly/b...anvas.html into a browser.
Ven masak: what was your talk about? any link?
I didn't see it somehow (on the schedule) :o)
masak timotimo: also, github.com/masak/camel-butterfly/b...r/minimize currently blows up spesh, but it runs under `export MVM_SPESH_OSR_DISABLE=1`
sergot how does the profiler work? it throws "no file/dir" here 20:05
masak Ven: act.yapc.eu/ye2014/talk/5678
Ven ooh, it's a lightning one, that's why 20:06
masak yeah, the real talk is on Sunday. 20:07
timotimo i may miss the live version of that! :o 20:08
japhb jnthn, masak: Slide links, pretty please? For those of us in a timezone where "live stream" is not quite so easy .... 20:09
yoleaux 13:38Z <timotimo> japhb: it'll now be very interesting to be able to run benchmarks with nqp-m --profile (and perl6 --profile later when it works) with a given (or default (big)) work load
timotimo maybe i can streamdump it
japhb Um ... methinks I can't wait to see those slides now. :-)
timotimo yep.
big parts were just showing something in a browser ... hint hint :) 20:10
sergot Oh, it doesn't work for perl6, rigth. so my previous question is expired :))
timotimo it does
masak japhb: no slides for my lightning talk. just pure Perl 6.
timotimo since nqp learnt how to install the template for the profiler
masak japhb: you really should get ahold of jnthn's slides, though.
japhb: I don't think they're online yet. 20:11
timotimo AFK
japhb When you see him, tell him I will be standing on the other side of the planet with arms akimbo tapping my foot impatiently until he uploads his slides. ;-) 20:13
masak well, I left him in a bar, and won't be seeing him until tomorrow. 20:14
japhb Awww
masak so, you'll have to tap away in the meantime...
japhb My ankle will get really tired. :-P 20:15
masak practice makes perfect. 20:18
TimToady his ankle will get perfectly tired
masak .oO( tapping corrupts. perfect tapping corrupts perfectly. ) 20:19
lizmat hmmm.... must be a double entendre in here, which involves supplies of beer 20:22
lizmat is clearly too tired to make funny jokes 20:24
sleep& 20:25
20:27 Ven left
dalek rl6-bench: 3b60830 | (Geoffrey Broadwell)++ | perl6/rc-forest-fire:
Untabify perl6/rc-forest-fire
20:30
japhb TimToady: Thanks for the rc-forest-fire fix! :-)
20:32 Akagi201 joined 20:33 Ven joined
masak trees burning properly now? 20:34
Ven masak: github.com/Nami-Doc/readlist.cl/bl...t.lisp#L39 this is what racket macros
*don't* look like.
I really, really, really like scheme/racket by-default hygiene...
masak Ven: got it. 20:35
Ven masak: (just linking it because I just finished it, and it kinda looks cool. First time I do some Common Lisp o/) 20:36
(though a bit unwiedly)
gtodd so inside a macro one may encounter ... "unquotes" {{{ say "dread me?" }}}
20:36 Akagi201 left, anaeem1 joined
Ven gtodd: everywhere. 20:37
gtodd which seems to make sense in that it looks like some kind of template syntax ...
Ven less with scheme's templates, though.
gtodd Ven: yeah the idea of macros seems pretty standard in "functional" langugage ... 20:38
Ven no, not really
only a few of them. Mostly because ... There aren't many homoiconic languages 20:39
(common lisp is far from being functional)
dalek kudo/nom: e950e75 | TimToady++ | / (2 files):
move LOLLY hack from parser down into harness

This causes our new version to default to LOLLY without having to set LOLLY=1, but the test harness now forces LOLLY=1 for fudging, so we're testing against the new semantics. At the same time, the latest tests can still be used by old versions for now if that is desired, since the harness is version specific and the old harness doesn't set LOLLY. In a month or so we can delete all mention of LOLLY from the harness and from roast. But no harm if we forget. :)
20:40
Ven haskell has template haskell, but that's string programming
gtodd I thought I read that the unquote part of perl6 macros was going to go away but aren't macros and some kind of unquoting tied together somehow?
oh
TimToady we just want to revise the {{{}}} syntax 20:42
it's ugly as a sinful coyote.
gtodd Ven: ahh so it can be done different ways under the hood ...
Ven and hard to type :D
TimToady well, I care more about hard to read 20:43
Ven gtodd: depends on the language. Common Lisp macros, for one, are really "only" quoting/unquoting. Full power, but full pain.
gtodd TimToady: OK :-D not sure why I thought {{{}}} looked normalish
masak 'night, #perl6
FROGGS gnight masak
TimToady o/
Ven Scheme offers an alternative, the templates, where you have patterns etc. Deals with repeating, replacing, and hygiene for you
gtodd sleep well
Ven kinda wishes he was at sofia right now... :)
TimToady was supposed to be there, but became a bubblehead. 20:44
20:44 BenGoldberg joined
gtodd Ven: but it is not like just running eval or perl5 code filtering 20:44
Ven no, those are c-like macros 20:45
20:45 SamuraiJack joined
Ven string programming, as I said :) 20:45
TimToady unclean!
gtodd ok good so perl6 is going to do the real best thing :-) in the tradition of excellence it has established :-) 20:46
Ven I sure hope so :P.
flussence maybe we should have 「...」 for unquotes the way we allow «...» for <<...>> :)
TimToady can't, that's a real thing already
flussence it is? oh nuts.
TimToady m: say 「...」
camelia rakudo-moar 5bd2d4: OUTPUT«...␤»
TimToady the short form of Q// 20:47
Ven please, least utf8 :(
gtodd are those katakana "quotes" ?
flussence (kinda neat that that's there, though)
Ven .u 「
yoleaux U+FF62 HALFWIDTH LEFT CORNER BRACKET [Ps] (「)
TimToady oh, by all means, we want to make it hard to write macros, because people *will* abuse them. :)
yes, the halfwidth ones
so very rarely used in real text :)
Ven don't make it hard, make it thoughtful :)
gtodd Ven: but there's some cool IPA Cherokee and Canadian Syllabics characters that would set perl6 appart :-) 20:48
TimToady well, I was thinking something in the latin-1 range
Ven It's just so hard for me to type... Not worth the trouble.
TimToady at the time I was considering ¤
which is just COMPOSE-ox
flussence along that line of thinking, those're a bad choice anyway since they're semi-easy-to-get-at (via «say 'a' ~~ /./»)
Ven I was doing some agda last time, and it was really painful having to type \lambda \r \all etc for all its utf8-ness
TimToady so get a real keyboard 20:49
Ven you mean an APL keyboard? That's not a real keyboard.
TimToady actually, just define yourself a compose key
or use an editor with those chars
gtodd haha or several
TimToady like in vi, « is just ^K<<
Ven don't want to. It's painful. I shouldn't have to do painful stuff
TimToady yes, you should!!!! 20:50
it's good for your immortal soul!
20:50 kuroseki is now known as Salai
Ven no it's not, it just makes me want to use better tools ;) 20:50
TimToady anyway, huffman coding says some things have to be hard
Ven perl6 doesn't want me to suffer because of how I think, that's why I like it.
TimToady thre are no better tools :)
Ven than perl6?
TimToady waterbed theory says if you huffmanize differently, you just make other things hard instead :) 20:51
anyway, if you want hard, invent a time machine and go install some more characters into ASCII :)
Ven "I don't want to argue about this" is another way of saying what you're saying 20:52
TimToady or just teach everyone to use a language that makes everything else hard instead, and like it :)
what, I'm arguing, or didn't you notice :)
gtodd as long as comes with a script or instructions to get those extra characters working in an xterm with vim or emacs on some old version of openbsd ... it'd be cool :-)
pmurias Ven: how is template haskell string programming? 20:53
TimToady basically, in another ten years you'll be dictating your program, and it won't matter
flussence (space cadet keyboards are obsolete these days anyway, since Xorg has the useful/Eldritch-horror ability to differentiate between altgr-shift and shift-altgr...)
Ven pmurias: the types are terrible
TimToady anyway, we always provide ugly ASCII workarounds anyway, like the set operators 20:54
so maybe if we use ¤ we also reserve XO or some such 20:55
Ven TimToady: well, it's your language anyway. You're free to pick any kind of symbol you like. I'm free to disagree with that pick ;). (I disagree with several other things in perl6 anyway)
TimToady oh noes!
pmurias TimToady: having a concise/good way to quasi quote languages other then perl6 would be greate 20:56
TimToady let me guess, « and », and ∪ and ∩ :)
pmurias: that's not the Perl 6 view; the Perl 6 view is that all these other languages are merely dialects of Perl 6, so no problem :) 20:57
geekosaur ␁␄ :p 20:58
20:58 zoosha left
Ven .u ␁ 20:58
yoleaux U+2401 SYMBOL FOR START OF HEADING [So] (␁)
FROGGS do we need different kinds of unquotes? if yes, then we could do it like the assertions in regexes and combine something...
TimToady suspect the APL dialect will use a few more Unicode characters :)
20:59 klaas-janstol left
TimToady we'll certainly make it as productive as it needs to be 20:59
at one point we were going to include the syntactic category, but that might come for free with the type of the object
depending on what masak++'s AST ends up looking like
pmurias quasi:lang(Ruby) {...} doesn't seem very concise
Ven pmurias: but macros will get you there :P 21:00
I don't even really mind these symbols now that I have this comp, but old-me-on-windows would be screaming inside :P
:P
wow, that's a lot of :P.
TimToady use ruby; ... quasi { ruby { } } 21:01
jsut as you might say ruby { } in normal code after you've pulled it in with use
BenGoldberg .u ␄ 21:02
yoleaux U+2404 SYMBOL FOR END OF TRANSMISSION [So] (␄)
TimToady or whatever you choose for the language shifter; it can be a single Unicode character if you like :)
pmurias quasi { ruby {...}} seems even worse than quasi:lang(Ruby) {...}
TimToady you're only writing this macro once, how hard to you have to try to golf it? 21:03
and if it's that hard, write your own macro to implement your own quasi-to-ruby and call it *anything* 21:04
there are no limits to what you can do
we intend to give you all the tools to nuke yourself in everyone's feet, if you so choose. 21:05
but...don't do that :)
Ven we shall (:
TimToady the aim is to give a perfectly extensible language, and then give sane people very little motivation for extending it by including everything already...but I reconize the joys of insanity as well 21:06
*cog
well, I had a short night last night for some reason, and *now* I don't want to argue about it :) 21:07
TimToady -> nap
21:16 gmunoz joined, SHODAN joined, SHODAN left, SHODAN joined 21:24 pecastro left 21:30 biff_512 joined 21:33 Akagi201 joined, SamuraiJack left 21:35 biff_512 left 21:37 Akagi201 left 21:38 avuserow left 21:39 Ven left, Alula_ left
timotimo japhb: all you need to do is --profile after perl6 or nqp and it'll tell you what you have to look out for 21:45
oh, i wasn't scrolled down
21:47 avuserow joined 21:48 prevost left 21:57 Alula_ joined 21:58 anaeem1 left 22:08 Alula_ left 22:20 gfldex joined 22:21 Alula_ joined 22:31 Psyche^_ joined 22:32 xenoterracide joined
TimToady m: say (1,2; 3,4).perl 22:33
camelia rakudo-moar e950e7: OUTPUT«lol($(1, 2), $(3, 4))␤»
22:33 Akagi201 joined
TimToady there we are 22:33
22:35 Psyche^ left
TimToady though now we should just teach that to output (1,2; 3,4) 22:35
22:38 Akagi201 left, ajr_ left
jnthn Slides from my talk now at jnthn.net/papers/2014-yapceu-performance.pdf 22:43
japhb: ^^
TimToady jnthn++ for 0..1000000 :) 22:45
m: say [1,2; 3,4].perl 22:47
camelia rakudo-moar e950e7: OUTPUT«[$(1, 2), $(3, 4)]␤»
22:57 xragnar_ joined, xragnar left, xragnar_ is now known as xragnar 23:03 kurahaupo left 23:11 Akagi201 joined 23:14 spider-mario left 23:16 Akagi201 left 23:19 biff_512 joined 23:24 biff_512 left 23:27 Mouq joined
dalek kudo/nom: c793d80 | TimToady++ | src/core/ (2 files):
use lollipop syntax for .perl where appropriate
23:38