»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
00:02 addison_ left 00:05 Laurent__ joined 00:06 Laurent__ is now known as Laurent_R 00:11 revhippie left 00:15 kivutar joined 00:16 lostinfog left 00:23 travis-ci joined
travis-ci Rakudo build failed. Elizabeth Mattijsen 'Streamline phaser handling 00:23
travis-ci.org/rakudo/rakudo/builds/107363200 github.com/rakudo/rakudo/compare/9...543e9d2cb5
00:23 travis-ci left 00:24 alpha123 left, autark left
AlexDaniel ouch 00:28
timotimo Stage parse : Label with no handler passed to newlexotic 00:29
huh
very strange 00:30
only on linux, only with moar master
00:37 vendethiel joined
MadcapJake thanks to skaji_++, evalbot on Slack can now handle multiline code blocks! 00:40
timotimo cool 00:41
AlexDaniel m: say 42;␤say 69 # by the way 00:42
camelia rakudo-moar ec543e: OUTPUT«42␤69␤»
MadcapJake timotimo, also skaji_ just pushed commit that allows camelia in any channel public/private! i'm building it right now 00:48
timotimo excellent
00:51 revhippie joined
Skarsnik MadcapJake, it use IRC for slack? 00:51
MadcapJake you can connect to slack via irc now 00:53
but no bridge yet
haven't had time to build it
00:55 addison_ joined
Skarsnik I mean camelia use the IRC bridge? 00:55
MadcapJake no, skaji_++ built this awesome docker container for camelia with some slack tweaks and i'm running that (currently on my machine) 00:56
01:00 vendethiel left
Skarsnik well docker does not make camelia connect to slack xD 01:00
01:06 yeahnoob joined
AlexDaniel jvm: (;) 01:06
01:06 spider-mario left
AlexDaniel j: (;) 01:06
camelia rakudo-jvm f99bdb: OUTPUT«===SORRY!===␤Method 'returns' not found for invocant of class 'BOOTInt'␤»
MadcapJake Skarsnik, right, custom code does :P the container is just an easy platform for deploying it 01:07
01:11 geraud left, Timbus left 01:14 vendethiel joined 01:19 lokien_ left 01:33 colomon left 01:34 colomon joined 01:35 captain-adequate left, vendethiel left
japhb *yawn* Another week of $dayjob complete ... and now to enjoy the weekend. :-) 01:35
AlexDaniel japhb: what's your plan? 01:36
japhb ... after, perhaps, a nap.
AlexDaniel: I'm hoping to spend a little time hacking on my RPG GM assistance code.
Been a while since I had a chance to work on that. 01:37
Hotkeys ooo
japhb You?
AlexDaniel japhb: oh well! I hoped that you have nothing to do so that you can fix hyper in rakudo :D
01:37 ely-se left, Timbus joined
japhb chuckles 01:38
AlexDaniel japhb: otherwise I'd have to write ugly workarounds that run the same code multiple times until it actually works… my plan is not to write these workarounds :)
japhb :-)
What's broken, btw?
(As in, what's the broken behavior?) 01:39
AlexDaniel japhb: mainly this: rt.perl.org/Public/Bug/Display.html?id=127452 01:40
m: dd @(^10 .hyper(:1batch).map: { sleep rand; $_ })
camelia rakudo-moar ec543e: OUTPUT«(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)␤»
AlexDaniel m: dd @(^10 .hyper(:1batch).map: { sleep rand; $_ })
camelia rakudo-moar ec543e: OUTPUT«(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)␤»
AlexDaniel m: dd @(^10 .hyper(:1batch).map: { sleep rand; $_ })
camelia rakudo-moar ec543e: OUTPUT«()␤» 01:41
japhb Woah, that's bad
AlexDaniel I also don't want to get rid of hyper in my code because someone smart will fix it tomorrow :) 01:42
… or maybe not…
japhb Is it broken in 2016.01.1 or head or both? 01:43
(I guess camelia confirms it's broken in head ...) 01:44
AlexDaniel japhb: before 2015.01 there was no such bug, but there was another one: rt.perl.org/Public/Bug/Display.html?id=127099
japhb I'm guessing by that being open, it's still a problem. :-( 01:45
AlexDaniel japhb: yes, except that behavior changed 01:46
01:46 addison_ left
AlexDaniel m: my @result = ^1000 .hyper.map: * + 10; say @result ~~ @result.sort 01:46
camelia rakudo-moar ec543e: OUTPUT«True␤»
AlexDaniel ↑ this kinda works 01:47
m: .say for (^10).hyper(:1batch).map: { sleep rand; $_ }
camelia rakudo-moar ec543e: OUTPUT«1␤»
AlexDaniel m: .say for (^10).hyper(:1batch).map: { sleep rand; $_ }
camelia rakudo-moar ec543e: OUTPUT«1␤»
AlexDaniel m: .say for (^10).hyper(:1batch).map: { sleep rand; $_ }
camelia rakudo-moar ec543e: OUTPUT«3␤»
AlexDaniel come on…
m: .say for (^10).hyper(:1batch).map: { sleep rand; $_ }
camelia rakudo-moar ec543e: OUTPUT«0␤2␤3␤4␤1␤6␤5␤8␤7␤9␤»
AlexDaniel japhb: ↑ here
japhb Hmph 01:48
AlexDaniel cries in the corner
01:48 TEttinger left
japhb Yeah, I don't blame you. Have you created spectests for these? 01:49
01:50 Skarsnik left
AlexDaniel japhb: oh, that's actually something I can do 01:50
japhb: maybe that's something I'll do during this weekend :) 01:54
japhb Good idea! 01:55
01:55 Timbus left 01:57 ChristopherBotto joined
ChristopherBotto .seen TimToady 01:57
yoleaux I saw TimToady 5 Feb 2016 20:56Z in #perl6: <TimToady> someone could point out that p6 behaves properly with stackoverflow.com/questions/116951...ntax-error
ChristopherBotto TimToady: I hope you are feeling better. I heard you were sick a while ago and the last several times I've checked the IRC logs you haven't been around 01:59
.tell TimToady: I hope you are feeling better. I heard you were sick a while ago and the last several times I've checked the IRC logs you haven't been around 02:00
yoleaux ChristopherBotto: What kind of a name is "TimToady:"?!
ChristopherBotto .tell TimToady I hope you are feeling better. I heard you were sick a while ago and the last several times I've checked the IRC logs you haven't been around 02:01
yoleaux ChristopherBotto: I'll pass your message to TimToady.
02:01 ChristopherBotto left 02:20 mscha left 02:22 kid51_ joined 02:24 Timbus joined 02:25 kid51 left, kid51_ is now known as kid51 02:29 sufrostico left 02:33 SCHAAP137 left 02:43 Timbus left 02:45 sevvie left 02:53 kaare_ joined 03:02 Timbus joined
ugexe i think a recent commit broke nom on windows 03:04
ci.appveyor.com/project/ugexe/zef/....0.66#L944
Label with no handler passed to newlexotic (during Stage parse) 03:05
previous working build is from 21 hours ago. so one of the commits from today 03:07
Hotkeys hmm 03:08
ugexe lizmat: ^
03:08 xpen joined 03:22 kivutar left 03:25 xpen left 03:29 noganex joined 03:31 noganex_ left 03:32 kid51 left 03:33 z8 joined
timotimo liz' most recent commit might have caused that, yeah 03:34
03:40 z8 left
timotimo m: Syntax error! 03:41
camelia rakudo-moar ec543e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Y4zLJWGgwX␤Bogus postfix␤at /tmp/Y4zLJWGgwX:1␤------> 3Syntax error7⏏5!␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end␤ statement …»
geekosaur perl 6 is so not into poetry mode >.> 03:44
timotimo m: say Perl, Cool with any Version
camelia rakudo-moar ec543e: OUTPUT«(Perl)(Cool)␤»
Hotkeys heh 03:54
timotimo: clever 03:55
timotimo i did not invent this 03:56
Hotkeys still clever 03:59
03:59 revhippie left
Hotkeys m: say Perl, Cool for any 1 04:00
camelia rakudo-moar ec543e: OUTPUT«(Perl)(Cool)␤»
04:01 kurahaupo left
Hotkeys m: Perl, Cool, any time with any 1 04:02
camelia ( no output )
Hotkeys m: say Perl, Cool, any time with any 1
camelia rakudo-moar ec543e: OUTPUT«(Perl)(Cool)any(1454731335)␤»
04:02 Herby_ joined
Herby_ Evening, everyone! 04:02
\o 04:03
m: say 1 .. 3
camelia rakudo-moar ec543e: OUTPUT«1..3␤»
Hotkeys hola
Herby_ How goes it? 04:04
Hotkeys m: say Perl, now with Hash 04:05
camelia ( no output )
Hotkeys kek
Herby_: playing with sentences in perl6
MadcapJake can you name subs with unicode? 04:06
Hotkeys I believe so
MadcapJake is there a special way to do it?
Hotkeys hmm
m: sub ❄ { say "$^a snowflakes }; ❄ 3; 04:08
camelia rakudo-moar ec543e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/iE_ZOzjKip␤Missing block␤at /tmp/iE_ZOzjKip:1␤------> 3sub7⏏5 ❄ { say "$^a snowflakes }; ❄ 3;␤ expecting any of:␤ new name to be defined␤»
MadcapJake yeah that's what i keep getting
Hotkeys m: sub term:<❄> { say "$^a snowflakes }; ❄ 3;
camelia rakudo-moar ec543e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oaz1zPF1TY␤Unable to parse expression in double quotes; couldn't find final '"' ␤at /tmp/oaz1zPF1TY:1␤------> 3b term:<❄> { say "$^a snowflakes }; ❄ 3;7⏏5<EOL>␤ expecting any of:␤ …»
Hotkeys m: sub term:<❄> { say "$^a snowflakes" }; ❄ 3;
camelia rakudo-moar ec543e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ifosWmY562␤Two terms in a row␤at /tmp/ifosWmY562:1␤------> 3sub term:<❄> { say "$^a snowflakes" }; ❄7⏏5 3;␤ expecting any of:␤ infix␤ infix stopper␤ statement end…»
Hotkeys m: sub term:<❄> { say "$^a snowflakes" }; ❄(3);
camelia rakudo-moar ec543e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/vbKKzOesOL␤Calling term:<❄>() will never work with declared signature ($a)␤at /tmp/vbKKzOesOL:1␤------> 3sub term:<❄> { say "$^a snowflakes" }; 7⏏5❄(3);␤»
Hotkeys m: sub term:<❄> ($a) { say "$a snowflakes" }; ❄(3);
camelia rakudo-moar ec543e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/KNSRFbKENJ␤Calling term:<❄>() will never work with declared signature ($a)␤at /tmp/KNSRFbKENJ:1␤------> 3 term:<❄> ($a) { say "$a snowflakes" }; 7⏏5❄(3);␤»
geekosaur m: sub prefix:<❄> ($a) { say "$a snowflakes" }; ❄(3); 04:10
camelia rakudo-moar ec543e: OUTPUT«3 snowflakes␤»
Hotkeys interesting
I guess that works
geekosaur I would expect term to be a binary operator
Hotkeys ah
MadcapJake i want one that could take multiple arguments though, not necessarily a prefix/infix
AlexDaniel m: my \term:<❄> = -> $a, $b, $c { say “$a, $b, $c snowflakes” }; ❄(4, 8, 15) 04:14
camelia rakudo-moar ec543e: OUTPUT«4, 8, 15 snowflakes␤»
AlexDaniel not exactly what you want, but…
04:15 BenGoldberg left
MadcapJake interesting! 04:15
geekosaur hmmm, so actually infix is supposed to be the binary op
MadcapJake this isn't really gonna work how i want it to 04:20
AlexDaniel MadcapJake: honestly I don't think that using unicode sub names is a good idea
geekosaur hm 04:21
AlexDaniel MadcapJake: just measure the startup time…
MadcapJake hehe, fiiiine :P
geekosaur think I found a lie in S02
MadcapJake oh rly? didn't know it impacted that
AlexDaniel MadcapJake: it does, because basically you are changing the grammar
geekosaur tried to use statement_prefix:<❄> and it said there isn't such
MadcapJake oh ok, good point!
MadcapJake thinks adulting is hard 04:22
geekosaur oh, do we still have that bug?
(unicode was making grammar parse time explode)
(I think there's still some hacks in the grammar to make various unicodey things not trigger it)
AlexDaniel no, the problem is not with unicode 04:23
you can use term:<ascii!> and it will be as slow
geekosaur oh, guess I just can't use those that way then. (I know statement_control is there...) 04:24
AlexDaniel MadcapJake: +2s startup time here just for doing that… I don't think that it's worth it
MadcapJake: perhaps this delay is not important if you're writing a module 04:25
I think that precompilation will make it go away, but still… 04:26
MadcapJake well technically this is a module, but it's about measuring performance so probably not a good place to go all unicode crazy 04:28
Hotkeys lol
what unicode were you going to use?
MadcapJake 🔬 04:29
AlexDaniel what is that
Hotkeys I don't have a font that shows that
it's a microscope
MadcapJake lol
timotimo i don't see it
AlexDaniel .u 🔬
yoleaux U+1F52C MICROSCOPE [So] (🔬)
Hotkeys .u 🔬
yoleaux U+1F52C MICROSCOPE [So] (🔬)
AlexDaniel oh, it's a microscope 04:30
Hotkeys lol
timotimo ah, a microscope
MadcapJake it's so tiny
AlexDaniel geez, who would have thought…
MadcapJake you need a microscope just to see what it is ;)
Hotkeys I think it's good to not use very uncommon symbols :p
MadcapJake looks better in my code editor, I use size 15 font though 04:31
Hotkeys atom doesn't show it for me
might be my lack of a good font though
MadcapJake hm strange, it's your font prolly
I use Fira Code
(I designed language-perl6fe to work really well with all the ligatures that Fira Code has) 04:32
04:33 raiph left
Hotkeys this font is nice 04:33
MadcapJake back to boring old text based subs ;)
04:33 vendethiel joined
AlexDaniel m: sub ᖱᖲ { say ‘Hello world…’ }; ᖱᖲ 04:37
camelia rakudo-moar ec543e: OUTPUT«Hello world…␤»
MadcapJake how'd that work? 04:38
AlexDaniel MadcapJake: not necessarily
MadcapJake: because these are letters
MadcapJake ahhh xD
AlexDaniel so any character with L* property should work
m: sub ᖱ́ᖲ̀ { say ‘Hello world…’ }; ᖱ́ᖲ̀ 04:43
camelia rakudo-moar ec543e: OUTPUT«Hello world…␤»
Hotkeys MadcapJake: thank you for this font
it is wonderful
MadcapJake Hotkeys, no prob! It's definitely my favorite programming font. 04:44
AlexDaniel MadcapJake: so you can even use a bunch of combining characters together with weird letters :) 04:45
MadcapJake AlexDaniel, haha wow!
04:58 vendethiel left
Hotkeys MadcapJake: Can you add support for the hex formatting of fira? 04:58
it's very minor but it would look nice
AlexDaniel m: my @x = start { sleep 1; 42 }; @x.push: start { sleep 1; 69 }; say @x».result
camelia rakudo-moar ec543e: OUTPUT«[42 69]␤»
AlexDaniel m: my @x = start { sleep 1; 42 }; @x.push: start { sleep 1; 69 }; say @x».result
camelia rakudo-moar ec543e: OUTPUT«[42 69]␤»
AlexDaniel m: my @x = start { sleep 1; 42 }; @x.push: start { sleep 1; 69 }; say @x».result
camelia rakudo-moar ec543e: OUTPUT«[42 69]␤»
Hotkeys eg for 0xF
AlexDaniel come on…
Hotkeys ? 04:59
AlexDaniel it should break… 05:00
ZoffixWin m: say (start { sleep 1; 69 }).result
camelia rakudo-moar ec543e: OUTPUT«69␤»
Hotkeys why?
result waits
don't see why it would break 05:01
ZoffixWin neither
AlexDaniel sure, but it does on my computer
Hotkeys oh
ZoffixWin Oh
AlexDaniel Cannot invoke this object (REPR: Null)
Hotkeys lol
ZoffixWin Works on my box
AlexDaniel with about 50% chance
Hotkeys works for me
AlexDaniel ZoffixWin: try it 10 times
Hotkeys AlexDaniel: i.imgur.com/YAS7pE1.png 05:02
AlexDaniel I can't reproduce it on camelia…
Hotkeys: files.progarm.org/2016-02-06-07024..._scrot.png
ZoffixWin AlexDaniel, worked 20 times: gist.github.com/zoffixznet/fce06ca21262d22924cb
05:03 vatzz61 joined
AlexDaniel geez, but there *is* a problem somewhere 05:03
Hotkeys Which version are you on AlexDaniel
ZoffixWin I'm on This is Rakudo version 2015.12-214-g775271d built on MoarVM version 2015.12-29-g8079ca5
AlexDaniel my rakudo is like 1 or 2 days old
This is Rakudo version 2015.12-232-ga5fe347 built on MoarVM version 2015.12-29-g8079ca5
Hotkeys myself: This is Rakudo version 2015.12-232-ga5fe347 built on MoarVM version 2015.12-35-g940850e
AlexDaniel ha, look, almost 05:04
Hotkeys lol
ZoffixWin builds a fresh one
Hotkeys I've heard the current version is breaking on windows
so I won
won't :p
AlexDaniel Hotkeys: not only…
Hotkeys breaking everywhere? 05:05
AlexDaniel yes, it's probably everywhere
Hotkeys ah
AlexDaniel ZoffixWin: I can't reproduce it on camelia… :/ 05:06
ZoffixWin Cool, then the bug is fixed! :p
05:07 khw left
Hotkeys \o/ 05:08
AlexDaniel ok guys can you try this? 05:10
m: my @x; @x.push: start { sleep 1; 1 } for ^100; say @x».result;
camelia rakudo-moar ec543e: OUTPUT«Memory allocation failed; could not allocate 14208 bytes␤»
MadcapJake Hotkeys, on it!
AlexDaniel perhaps even try increasing 100 to something like 1000 05:11
Hotkeys worked 05:12
for 100
AlexDaniel I don't know what to do then 05:13
Hotkeys currently working on 1000
AlexDaniel: upgrade a tiny bit?
ZoffixWin Same. Works fine with freshly squeezed Perl 6 (single-core box) and on older one too (4-core box)
Hotkeys 1000 is still-- nvm
it finished
oh I see 05:15
I had manually bumped my moar revision
I was having issues or something I don't remember specifically what
ZoffixWin The a couple of iterations of 1000 version worked fine on both boxes too: i.imgur.com/0ecYPMb.png 05:17
Hotkeys yeah worked fine for me too
you probably just need to upgrade
I'm attempting the latest version 05:18
05:19 davido_ joined
AlexDaniel yeah, ok. I'll probably try again later once I upgrade 05:19
thanks
Hotkeys ugexe: I was just able to build on windows fine 05:21
I used gmake instead of nmake if that's any help 05:22
i.imgur.com/IPnDRGR.png 05:23
oops 05:24
forgot to switch versions in rakudobrew
that version is the other build I had
I promise the current version built :p
i.imgur.com/0Ch1PKH.png 05:25
ugexe its not much help without any of the relevant build information. seeing as you are using rakudobrew i know you aren't using the same nqp version
Hotkeys fair enough 05:26
ugexe rather, same *moar* version
05:29 TeamBlast left 05:32 TeamBlast joined
ugexe `perl Configure.pl --gen-moar=HEAD --gen-nqp && gmake install` if this builds fine then its specific to the compiler toolchain. if not then maybe its moar/nqp related? 05:32
if only it didn't take so long to build on windows ugh... 05:35
05:39 sevvie joined 05:44 kurahaupo joined, kurahaupo left 05:46 Cabanossi left 05:49 Cabanossi joined 05:52 davido_ left 05:57 xpen joined, yqt left 05:58 Herby_ left 05:59 sevvie left 06:09 vatzz61 left 06:10 xpen left 06:13 vendethiel joined
ugexe maybe it actually is moarvm? github.com/MoarVM/MoarVM/commit/b6...dbd689eb53 06:22
it was with moar HEAD, so that would be it. the travis badge for rakudo is red as well from a failure with --gen-moar=master. lizmat your commits are have nothing to do with it^ 06:25
06:29 st_iron joined
st_iron hi 06:29
AlexDaniel hello 06:30
st_iron say: "good morning"
oops
06:33 st_iron left
MadcapJake can roles use the `unit` modifier? 06:33
06:34 vendethiel left
AlexDaniel m: say ‘good moarning’ 06:35
camelia rakudo-moar ec543e: OUTPUT«good moarning␤»
MadcapJake har har
AlexDaniel MadcapJake: try it and see if it dwims :)
MadcapJake it doesn't that's why I ask xD 06:36
it says "unable to parse role definition 06:37
oops
06:37 TEttinger joined
MadcapJake It was an ID-10T error 06:37
specifically of the semi-colon variety 06:38
06:43 CIAvash joined 06:45 dupa joined 06:49 vendethiel joined 06:50 isBEKaml joined
isBEKaml OHHAI, does anyone see failures building rakudo HEAD? 06:51
gist.github.com/svatsan/0ca4b3aeee8eaef4fc5e
dupa hey are you all guys here very old? 06:52
06:52 hippie1 joined
isBEKaml dupa: why can't we all be both young and old? :-) 06:52
dupa isBEKaml, Perl is older than me 06:53
isBEKaml dupa: well, perl6 is probably younger than you
06:53 hippie1 is now known as hippie
dupa sure 06:53
;d
but I suppose almost all good perl6 programmers knows perl5
thats why they choice perl6 for target cause young ppl like swift and go and ruby 06:54
and php etc.
old ppl like C and Perl
AlexDaniel dupa: I don't think that your assumptions are 100% correct :) 06:58
e.g. I'm rather young 06:59
timotimo isBEKaml: lizmat's latest commit is probably responsible for that. could you check that out?
dupa: i'm a good perl6 programmer and i don't like perl5 07:00
also, perl is older than me
AlexDaniel anyway, who cares? :) 07:01
07:02 domidumont joined
timotimo right 07:02
07:03 Sqirrel left
timotimo i've grown up with the "hacker" mindset, more or less. so i'm ideally completely ignoring things like age, sex or sexual orientation, origin, ... 07:04
07:04 mr-foobar joined
isBEKaml timotimo: yes, I'm looking over commit stream right now 07:04
timotimo i should go to bed, i think 07:06
07:06 domidumont left
Hotkeys dupa: 18 here, perl6 is my current favorite lang 07:07
AlexDaniel \o/
Hotkeys | 07:08
/ \
if you have users split from messages like hexchat and I think weechat does
that makes a stick figure
07:08 domidumont joined
Hotkeys if you don't that is unfortunate 07:08
AlexDaniel I'm decapitated, that's unfortunate 07:09
Hotkeys D:
AlexDaniel: i.imgur.com/5nt8mS1.png 07:10
:)
07:11 vendethiel left
AlexDaniel m: sub o($){}; \ o / 1/ 07:11
camelia ( no output )
ugexe timotimo: i think its the latest moarvm commits 07:13
07:20 Laurent_R left
geekosaur only makes a stick figure in hexchat if using a monospaced font 07:21
07:23 awwaiid joined 07:24 AlexDaniel left
Hotkeys geekosaur: any sane person does 07:25
07:29 protium joined
isBEKaml ugexe: you may be right. Going back a few commits in rakudo still produce that error. It's somewhere in moarvm code, probably freeing up stuff a little too enthusiastically :-) 07:33
MadcapJake duda, I've never written perl 5 07:35
dupa ^
dupa MadcapJake, ;-)
MadcapJake I come from JavaScript land
07:36 PiL_ joined
MadcapJake If I wanted to create a seperate class's object, would I do this in `new` or `BUILD`? 07:37
My class has a Default that inherits and I want to default to creating a Default instance
timotimo well, the trick in construction really is that when you call self.bless in your new method, the self will be of potentially a more derived class than the class the method is defined in 07:38
but nothing stops you from return Default.new(...) or even return Default.bless(...) 07:39
07:39 CIAvash left
timotimo which of the two is more proper for your use case really depends on the specifics 07:39
MadcapJake i'm just passing a few parameters, no fiddling at all 07:40
the function will just take some arguments and set them as parameters of the derived classes `new`
timotimo if Default has its own "method new" or you're checking self against being Default already, you can just return Default.new(...), otherwise return self.bless(...)
MadcapJake ok default doesn't have a new, it's just assumed to be there, so in that case it's just going to walk back up to my inherited `new` then right? 07:41
timotimo that's right
MadcapJake timotimo, thanks!
timotimo you're welcome!
MadcapJake can I do Default.bless? 07:42
timotimo yes
MadcapJake ok cool
timotimo then you might want to prevent a method new from being implemented in Default, perhaps?
because anything that gets put in there later on will not be run when you create a Default implicitly from BaseOfDefault.new 07:43
it's already been quite a while, but when i first understood the thing about self.bless, my mind was a little bit blown :) 07:46
dupa what WIP mean? 07:47
timotimo "work in progress" usually
design.perl6.org/S99.html - we have a little glossary where terms we use often that outsiders or newcomers may not know yet are defined and explained and such 07:48
S99:WIP
hm, isn't that how ... oh, synopsebot isn't back yet
now i remember i wanted to set it up! darn
07:49 TeamBlast left, TeamBlast joined 07:50 CIAvash joined
dalek ecs: b10af0c | timotimo++ | S99-glossary.pod:
point out ".ast" is an alternative to ".made".
07:52
08:02 CurtisOvidPoe joined 08:05 lokien_ joined 08:09 dupa left, MadcapJake left 08:11 sortiz joined 08:12 darutoko joined 08:13 dupa joined
sortiz \o #perl6 08:15
08:15 dupa left 08:16 MadcapJake joined, awwaiid left
sortiz Is this the proper place for NQP questions? 08:17
08:18 vendethiel joined
isBEKaml Our resident NQP experts are probably not yet up/awake. Don't let that stop you from asking away 08:18
08:18 domidumont left 08:19 domidumont joined
sortiz isBEKaml, Thanks, nothing specific yet, I been reading the source, and seems that ops.markdown, among others, in nqp/docs is outdated 08:22
08:26 rindolf joined
isBEKaml sortiz: if you're diving into NQP, you can look at this for an intro: github.com/edumentab/rakudo-and-nq...als-course 08:31
08:31 firstdayonthejob joined
isBEKaml timotimo,ugexe: I've isolated the moar commit that broke the build. looking at a fix now. 08:31
08:34 CurtisOvidPoe left
sortiz isBEKaml, Yes, I started with that, really good as an intro. 08:36
08:38 CurtisOvidPoe joined 08:42 domidumont left
sortiz But I've found in rakudo's source some code that don't seems to have much sense, and I want to understand the why. 08:48
08:49 yeahnoob left 08:59 azawawi joined
azawawi hi 08:59
sortiz On the other side, lizmat's recent work show me that there are lots of oportunities for optimization. Well can be the case. 09:00
azawawi time p6doc -n Str # => (real0m38.804s, user0m38.217s, sys0m0.511s)
09:01 Laurent_R joined
azawawi why is it soooo slow? 09:01
"This is Rakudo version 2016.01 built on MoarVM version 2016.01" 09:02
stmuk_ there was a patch to precomp pod but I don't think it was merged 09:06
azawawi let me check
09:06 dolmen joined
stmuk_ github.com/perl6/doc/pull/334 09:07
09:08 CurtisOvidPoe left
stmuk_ I'm getting p6doc -n Str 9.14s user 0.35s system 99% cpu 9.548 total 09:08
09:09 vendethiel left
azawawi tests it 09:09
stmuk_ and that's on a slow (but recent) Celeron
09:10 DoverMo joined 09:11 RabidGravy joined
azawawi hmmm... 09:12
i found the problem
09:12 _mg_ joined
azawawi p6doc-index build # afterwards slows down p6doc considerably 09:12
removed index # => 0m2.121s 09:13
stmuk_ ah its probably EVALFILE the index even if the flags don't specify its use
azawawi github.com/facebooknuclideapm/hyperclick # im working on atom editor for help/links now 09:14
09:14 Sunbeam joined
stmuk_ I will look at that EVALFILE thing later if noone else gets there first 09:15
azawawi right now i have no way to rely on the index 09:16
and p6doc is not smart enough
stmuk_ the index is very slow ... I was hoping to replace it by moar serialisation but I haven't heard about that recently 09:17
moritz leans towards an sqlite database these days 09:18
azawawi moritz: i agree 09:19
stmuk_ thats a good idea .. the NetBSD man page system uses its full text search and gets great search results
I suppose it would add DBIish as a dependency for p6doc (unless its just an option) 09:20
azawawi stmuk_++ # go go :)
09:20 bioexpress joined
stmuk_ RSN :) 09:20
azawawi the cool thing is that i could find errors way faster than before via atom lint :) 09:22
on Perl 6 projects that is
we need to define a p6 project lifecycle or build tasks 09:23
nobody wants to write "prove -v -e -Ilib"
simply "p6-builder test" 09:24
09:24 CurtisOvidPoe joined
DoverMo did anyone like my mascot idea for perl6? 09:25
azawawi or $some-cool-build-name {new|test|build|run|clean}
moritz DoverMo: I didn't see it
azawawi DoverMo: link it plz
sortiz Btw, p6doc-index is broken in windows, more '/' vs '\' assumptions. 09:26
DoverMo it was a river dolphin with han zi on it's body to represent the extinct chinese sub-species
RabidGravy why don't places use $*SPEC.dir-sep or whatever it is 09:27
moritz much of the p6doc code probably predates $*SPEC
09:27 xinming left
sortiz Seems missing a doc about portability. 09:30
isBEKaml the commit that broke the build: github.com/MoarVM/MoarVM/commit/b6...dbd689eb53 09:33
when do we normally free those handlers? For now, does it make sense to just revert it?
09:34 pmurias joined
dalek p: 83dc6d6 | (Pawel Murias)++ | src/vm/js/Utils.nqp:
[js] Remove a piece of dead code.
09:34
09:35 xinming joined 09:38 Vitrifur left 09:39 Vitrifur joined 09:40 dolmen left, vendethiel joined, Vitrifur left
isBEKaml jnthn: ping 09:41
09:45 bioexpress left 09:46 perlawhirl joined 09:51 kurahaupo joined 09:55 Sunbeam left, domidumont joined 09:59 protium left 10:03 vendethiel left, ely-se joined 10:04 CurtisOvidPoe left 10:05 vendethiel joined
lizmat good *, #perl6! 10:09
pmurias hi 10:11
dalek p: f77aa4c | (Pawel Murias)++ | src/vm/js/QAST.nqp:
[js] remove useless file
10:12
10:14 spider-mario joined 10:15 dupa joined
lizmat sortiz RabidGravy : in the newio branch, \ were always changed to / on input, so you didn't have to worry about which platform you worked on 10:16
(since Win can handle / just fine, or so I'm told)
RabidGravy At the OS level it can, the "shell" not so much 10:17
10:17 domidumont left
nine I seem to remember that it depends on which API you use 10:17
10:17 domidumont joined
RabidGravy though there used to be an API in DOS whereby you can change the directory separator for CMD.COM which I guess is long gone 10:18
(and the switch character too)
I've still got a DOS programmers reference upstairs somewhere 10:20
sortiz lizmat, Yup, but, for example we can't assume the results of .find has a mere '/' in windows, see github.com/perl6/doc/blob/master/b...-index#L39 10:21
10:21 DoverMo left
lizmat RabidGravy: on Win, it would transform all / to \ before shelling out 10:21
sortiz: I see... 10:22
10:23 wamba joined
[Tux] test 22.699 10:23
test-t 12.096
csv-parser 51.792
10:24 _mg_ left
dalek kudo/nom: 6ade157 | lizmat++ | src/core/List.pm:
Speed up List.sum by a few percent
10:25
lizmat wonders what Travis will say about that
[Tux] : is that also a bit lower than before ? 10:26
test-t I mean?
RabidGravy it's been wibbling around the 12.1 area for a while now 10:27
10:27 dupa left
azawawi do we have a performance graph for that? 10:28
10:28 iH2O joined, vendethiel left, CurtisOvidPoe joined, Zero_Dogg left 10:29 bioexpress joined, Zero_Dogg joined
azawawi pasteboard.co/1lHRgQcE.png # latest p6doc mock suggestions :) 10:30
stmuk_ originally MSDOS had a SWITCHAR option but it was abandoned but there are still traces 10:31
sortiz lizmat, In a more important question: I see your last commit to Capture, and thought that some nqp::isnull($!list) maybe can be eliminated. 10:32
RabidGravy I'd go an look in the book but can't be arsed, some INT 21 function
lizmat sortiz: I thought so too, initially, but there are other places in the core that create Captures without having a $!list
stmuk_ I think FreeDOS has it still help.fdos.org/en/hhstndrd/cnfigsys/switchar.htm 10:33
azawawi INT 21 # sweet memories :)
i still have a copy of PC Intern :)
sortiz But in BUILD, $!list seems initialized unconditionally 10:34
[Tux] lizmat: within nois level
e
stmuk_ I have Peter Norton's "Shirt" book somewhere
lizmat :-( but still :-)
[Tux] 12.000 is oke-ish
10:35 iH2O left 10:38 vendethiel joined
sortiz lizmat, ie, in Capture.BUILD its assumed that @list is defined. 10:39
stmuk_ wonders how the docs are going to handle 6.d and 6.c
lizmat sortiz: but Hash.Capture directly creates a Capture object *without* $!list 10:40
10:42 _ramix_ joined
sortiz lizmat, I see, thanks. 10:46
RabidGravy skips the changes feed tests in Sofa for speedy goodness 10:48
there, the tests take a minute less 10:49
10:49 CurtisOvidPoe left 10:54 kurahaupo left, TEttinger left
RabidGravy Really need to get the EventSource client going, I *think* that it may be a matter of getting a "receive chunk" handler into H::UA and pushing the chunks to a supply 10:56
but I want to do all of the hooks stuff in H::UA in one go 10:57
unless someone else fancies doing it first
11:01 vendethiel left
dalek c: 2bc55d8 | (Salvador Ortiz)++ | bin/p6doc-index:
Use $*SPEC.dir-sep in p6doc-index
11:03
11:03 pangur joined, _ramix_ left
pangur crosspost: #emacs, #perl6 Anyone here use emacs to edit and compile perl6 code? 11:04
RabidGravy I'd be surprised if there wasn't
11:05 firstdayonthejob left
azawawi doc.perl6.org/ is the latest documentation... what about documentation for specific version (e.g. 2016.01)? 11:12
11:13 travis-ci joined
travis-ci Doc build failed. Salvador Ortiz 'Use $*SPEC.dir-sep in p6doc-index' 11:13
travis-ci.org/perl6/doc/builds/107423805 github.com/perl6/doc/compare/7b809...c55d8ba075
11:13 travis-ci left
RabidGravy azawawi, the documentation isn't currently versioned AFAIK 11:14
possibly should be tagged at release time 11:15
11:15 CurtisOvidPoe joined 11:24 vendethiel joined 11:39 kjs_ joined 11:43 ely-se left 11:44 vendethiel left 11:45 CurtisOvidPoe left 11:50 wamba left 11:51 pangur left
ab5tract I don't think we've gotten to a point where we feel that it fully covers 6.c 11:56
but it would make more sense to tag it to Perl 6 releases, not Rakudo ones
dalek c: 1bc7a03 | (Salvador Ortiz)++ | bin/p6doc-index:
Revert "Use $*SPEC.dir-sep in p6doc-index"

This reverts commit 2bc55d8ba075ce9671ed0ecfa535629956040c5c. Must check first why travis-ci buid failed
azawawi it would make also sense to make releases out of it so editors/IDEs can index that info 11:57
ab5tract azawawi: sure, but it's not Rakudo documentation. It's Perl 6 documentation.
azawawi so im finished with the UI for linking to Perl 6 documentation
and i cannot use it lol
p6doc -f say 11:58
p6doc -n say
ab5tract azawawi: ah, that's still broken?
azawawi: it sounds like it might be time to return to the p6doc-server idea
azawawi or generate a json index that is a part of a release :) 11:59
bummer... wasted time on pasteboard.co/1lHRgQcE.png
ab5tract azawawi: AFAIR, the file that is generated by p6doc-index is just a hash declaration which gets EVAL'd 12:00
azawawi index.data is unusable
ab5tract you could try just calling to-json on that
12:00 wamba joined
azawawi tried lol 12:00
ab5tract ok
oh man 12:01
that is not time wasted
let's get that working :)
the plugin just needs a JSON version of index.data? is there a specification as to what the structure should look like? 12:02
or does the plugin shell out to `p6doc -f $query` ? 12:03
azawawi i wanted to shell out
ab5tract so we just need to fix p6doc?
azawawi yup
:)
the worst thing for a developer is to see an IDE saying "Indexing..." :) 12:04
12:05 perlawhirl left
ab5tract well, the current speeds of p6doc when it was working would not impress anyone either 12:05
12:05 dupa joined
ab5tract because it slurps and evals that hash file every time 12:06
azawawi also one more thing, we need a human friendly index... which means
ab5tract obviously becoming slower and slower as the docs get better and better
azawawi i need to find the documentation of "say" by holding ctrl and then clicking on it :)
as simple as that
12:06 travis-ci joined
travis-ci Doc build failed. Salvador Ortiz 'Revert "Use $*SPEC.dir-sep in p6doc-index" 12:06
travis-ci.org/perl6/doc/builds/107428713 github.com/perl6/doc/compare/2bc55...c7a03a596c
12:06 travis-ci left, kjs_ left
ab5tract azawawi: right, i see. so you need the index to know what you can shell out for 12:07
azawawi yeah that could be an optimization
12:07 vendethiel joined 12:08 kjs_ joined
azawawi use FooBar; # when FooBar is clicked, we should its documentation 12:08
sortiz Oh my! Seems unrelated.. But why?!?
azawawi sortiz: seems like bad code 12:09
RabidGravy anyway, off out for a bit. toodles 12:10
ab5tract ciao RabidGravy!
azawawi RabidGravy: have fun
12:11 a3r0 joined
azawawi ab5tract: hmmm, i need to will use doc.perl6.org api right away :) 12:12
sortiz azawawi, I commit 2bc55d8 and fail, so I revert it in 1bc7a03, but failed again, see: travis-ci.org/perl6/doc/builds, I can't understand!
ab5tract azawawi: sorry, can you clarify a bit?
12:12 kjs_ left, bioexpress left, a3r0_ left
ab5tract sortiz: could be that it was already broken? 12:13
azawawi ab5tract: doc.perl6.org search bar
ab5tract azawawi: yeah, but are you saying that you will just use that instead for now?
12:13 ely-se joined
azawawi ab5tract: yup 12:13
ab5tract "i need to will use" <--- this was what confused me :) 12:14
ok, so there's a workaround for now!
12:14 RabidGravy left
azawawi ab5tract: hopefully it will work 12:14
azawawi takes a look at doc.perl6.org/js/search.js
sortiz ab5tract, Can be, but the build history in Travis don't show any evidence. I'm totally confused.
12:15 ely-se left, ely-se joined
jnthn isBEKaml: pong 12:17
12:19 SCHAAP137 joined
jnthn .tell isBEKaml I'm only about now and then during the weekend, so may be easier to .tell me what you want to ask :) 12:20
yoleaux jnthn: I'll pass your message to isBEKaml.
12:21 dupa left
azawawi ab5tract: github.com/azawawi/atom-perl6-edit...index.json 12:21
ab5tract azawawi: awesome! 12:24
12:26 tadzik1 is now known as tadzik 12:27 CIAvash left 12:28 kid51 joined
ab5tract .tell RabidGravy unfortunately the Tinky example workflow doesn't work on OS X either. I like the looks of this library though! 12:28
yoleaux ab5tract: I'll pass your message to RabidGravy.
12:29 lokien_ left
kid51 Is there as yet a perl6 executable equivalent to 'perldoc'? 12:30
12:30 vendethiel left, rindolf left
ab5tract kid51: p6doc, but it may be broken at this moment 12:30
kid51 If it did exist, I would have expected to find it along these other executables: 12:31
ls ~/rakudo-star/bin/
moar nqp nqp-m perl6 perl6-debug-m perl6-gdb-m perl6-m perl6-valgrind-m
isBEKaml .tell jnthn I was looking for some advice on fixing a broken commit: irclog.perlgeek.de/perl6/2016-02-06#i_11998442. No rush - enjoy your weekend :-)
yoleaux 12:20Z <jnthn> isBEKaml: I'm only about now and then during the weekend, so may be easier to .tell me what you want to ask :)
isBEKaml: I'll pass your message to jnthn.
kid51 Hmm, I see it in: ~/rakudo-star/share/perl6/site/bin/p6doc
ab5tract kid51: i noticed that the binary was not where i expected it earlier today. i use rakudobrew and panda, and it seems that you see something similar with rakudo-star 12:33
geekosaur I have a p6doc in my (older) rakudobrew. seems something might be broken recently 12:34
ab5tract it needs some love. i proposed a reorganization of the CLI interface into something that fetches from an independent p6doc-server process
but i haven't had the tuits 12:35
12:35 dupa joined
azawawi we need commands like the following golang.org/cmd/go/ in perl6... could be in panda/zef or new pkg 12:36
12:36 rindolf joined
ab5tract there is a pretty swazzy looking JSON-RPC library for perl 6 that we could use 12:36
kid51 $ p6doc -f push 12:37
In order to use unqualified sub and method names like "p6doc -f say"
ab5tract github.com/bbkr/jsonrpc
kid51 you will need to run "p6doc-index build" to build index.data.
Otherwise use "p6doc -f Type::Str.split" instead of "p6doc -f split" for now.
Not very user friendly
ab5tract kid51: I believe I've just pointed out that the tool needs some love :)
12:37 rindolf left
kid51 One wonders why p6doc-index build could not be done on installation 12:37
azawawi kid51: that and why wasnt it built when p6doc was installed :)
kid51 ab5tract: Yes, I'm trying to anticipate the complaints I'm going to get later today at our beginners study group 12:38
ab5tract kid51: right on. i would say that you might want to consider the CLI docs broken at the moment
azawawi ab5tract: then a good project is golang.org/cmd/go/ :)
ab5tract: i already built the UI for it... just make the command github.com/azawawi/atom-perl6-edit...ld-support 12:39
ab5tract in the context of a class
12:39 FROGGS left
ab5tract the web interface has been given a lot more care and attention to detail 12:39
s/class/study group/ 12:40
12:44 rindolf joined
jnthn isBEKaml: Yeah, nwc10++ reported more into on the failure mode on #moarvm; reverted it, since it wasn't obvious how to do a more correct fix. 12:45
yoleaux 12:31Z <isBEKaml> jnthn: I was looking for some advice on fixing a broken commit: irclog.perlgeek.de/perl6/2016-02-06#i_11998442. No rush - enjoy your weekend :-)
azawawi ab5tract: any link on the topics you're going to cover in your beginners study group?
ab5tract azawawi: i think you want to ping kid51 :) 12:46
isBEKaml jnthn: yeah, I didn't know it was reverted, thanks
jnthn isBEKaml: I only just did it :) 12:47
12:47 musiKk joined
azawawi ab5tract: sorry got confused.. im writing perl6 in the vm and android on windows host :) 12:47
jnthn After looking into a correcter fix and deciding I'm not clever enough to figure it out today. Or at least, not at this part of today. :-)
azawawi kid51: any link on the topics you're going to cover in your beginners study group? 12:48
kid51 That will be discussed at Session 1.
There are several different tutorials on web.
And of course some who show up will want to Do Their Own Thing, while others will want to work more collectively 12:49
So, unknown yet.
Will report once we have something that is actually working
ab5tract kid51: that sounds like a good approach. 12:51
12:53 BenGoldberg joined
kid51 Here is the original call for this group: thenceforward.net/perl/misc/nyc_per..._group.txt 12:53
isBEKaml jnthn: okay - I was leaning towards reverting it, since I don't know how far up above that piece of code stands, where it needs to have handlers freed. C is a terrible flat-land :P
12:54 FROGGS joined
jnthn isBEKaml: Well, it's not that big a deal in so far as NQP_REVISION/MOAR_REVISION weren't bumped 12:56
Those give us a little breathing room :) 12:57
isBEKaml jnthn: ah, okay 12:58
dupa hey how can I use perl module without installing it via panda
azawawi kid51: thx for the info 13:01
13:03 dupa is now known as magiczna_dupa 13:04 franciskittu joined, franciskittu left 13:05 vendethiel joined
sortiz Some change in rakudo between g8bd7ee6 and g6ade157 seems to broke the build for p6docs, I'm investigating.. 13:06
lizmat which repo?
sortiz lizmat, This is Rakudo version 2015.12-242-g8bd7ee6 vs This is Rakudo version 2015.12-251-g6ade157 13:08
lizmat I wonder where that g comes from 13:10
doesn't look very hexadecimal to me
sortiz Yup, copied from travis-ci logs. 13:11
isBEKaml IIRC, it was just a prefix after which comes the revision string
lizmat initially I was wondering why I couldn't find those commit ID's in the git log
geekosaur git describe, and as far as I know it stands for git
sortiz In my rush don't noticed the 'g' 13:12
geekosaur keeps grabbing those in other projects too, wish they had include a separator so select-word didn't always grab the g as part of the commit hash 13:13
because everyone and their pet banth includes git describe in artifact ids :/ 13:14
but of course git doesn't *accept* it in a commit hash 13:15
sortiz For perl6/doc, the failure "This type does not support associative operations" is reported in github.com/perl6/doc/blob/master/l...try.pm#L26 13:16
Thats is a common autovivification, that somehow now isn't working. 13:17
ab5tract 13:18
13:19 wamba left 13:20 isBEKaml left
sortiz With a simple "%!cache{$by} = {};" before the for, the make succeeds, that file wasn't touched in weeks. 13:24
jnthn wonders if the hash access opts maybe accidentally lost a :D on the invocant somewhere...
13:24 perlawhirl joined
jnthn Also if we do have a regression there, we clearly need more autoviv tests :) 13:24
magiczna_dupa I include bailador to project 13:25
but it seams
it has bugs 13:26
13:26 FatalNIX left, vendethiel left
sortiz How I have to proceed? 13:27
13:29 perlawhirl left
ab5tract magiczna_dupa: I've never used it, but I have heard others say the same :( 13:29
lizmat jnthn : I'm afraid that's another case of attrinited given a false positive because something did a getattr before 13:30
Rotwang magiczna_dupa: great nick
lizmat jnthn: in other words, use of attrinited is making code fragile :-( 13:31
reverting use of attrinited in hash<a> 13:32
13:32 Actualeyes joined
jnthn lizmat: Well, yeah, you have to be very consistent with it. It's designed precisely for construction time stuff. 13:33
lizmat well, I was consistent enough to not break any spectests :-( 13:34
13:34 magiczna_dupa left, magiczna_dupa joined, magiczna_dupa left 13:36 perlawhirl joined
jnthn lizmat: Yeah, guess we need more of those ;) 13:36
Can revert it for now anyway
lizmat yeah, spectesting the revert atm
jnthn We may be able to find some more robust solution now we know there's something to be had optimization wise in that area.
dalek kudo/nom: 7a51234 | lizmat++ | src/core/Hash.pm:
Revert use of attrinited in Hash<a>

This should fix problems in making docs, sortiz++ for reporting
13:43
lizmat sortiz: could you check if this fixes the problem ?
sortiz lizmat, sure. 13:44
lizmat, give me a few minutes. 13:46
lizmat sure :-)
sortiz lizmat, indeed fixed. 13:52
lizmat cool, thanks for checking!
13:53 FROGGS_ joined
dalek kudo/nom: 04eac9b | lizmat++ | src/core/Str.pm:
Fix magic inc/dec on beer mugs and camels
13:53
13:54 raiph joined 13:56 FROGGS left, ely-se left
sortiz I need to understand well NQP ASAP 13:57
13:59 domidumont left 14:00 isBEKaml joined
ZoffixWin m: say so / <-[]+\s>* / for " ", "\t" 14:00
camelia rakudo-moar 7a5123: OUTPUT«5===SORRY!5=== Error while compiling /tmp/YLd9cPWNdS␤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' ␤at /tmp/YLd9cPWNdS:1␤------> 3say so / <-[]+7⏏5\s>* / for " ", "\t"␤ expecting any of:␤ prefix␤»
ZoffixWin I recall there was a way to specify "this character class, but minus this character" 14:01
14:01 Skarsnik joined
ZoffixWin Like \s but without space 32 14:01
dalek c: a9fb33d | (Salvador Ortiz)++ | WANTED:
Add OS portability to WANTED

And I need to kick start a travis-ci build :)
14:02
ZoffixWin m: say so / <-[ ]+[\s]> / for " ", "\t" 14:03
camelia rakudo-moar 7a5123: OUTPUT«===SORRY!===␤Iteration past end of iterator␤»
ZoffixWin :o
14:04 RabidGravy joined
ZoffixWin ah, I was close: 14:05
m: say so / <[\s]-[ ]> / for " ", "\t"
camelia rakudo-moar 7a5123: OUTPUT«===SORRY!===␤Iteration past end of iterator␤»
ZoffixWin m: say so / <[\s] - [ ]> / for " ", "\t"
camelia rakudo-moar 7a5123: OUTPUT«===SORRY!===␤Iteration past end of iterator␤»
ZoffixWin m: so 'foo' ~~ / <[ a..z ] - [ f o ]> + /;
camelia rakudo-moar 7a5123: OUTPUT«WARNINGS for /tmp/wIJpl2RQFE:␤Useless use of "so " in expression "so 'foo' ~~" in sink context (line 1)␤»
ZoffixWin m: say so 'foo' ~~ / <[ a..z ] - [ f o ]> + /;
camelia rakudo-moar 7a5123: OUTPUT«False␤»
ZoffixWin wtf
m: say so / <[\t] - [ ]> / for " ", "\t" 14:06
camelia rakudo-moar 7a5123: OUTPUT«===SORRY!===␤Iteration past end of iterator␤»
ZoffixWin m: say so / <[ \t ] - [x]> / for " ", "\t"
camelia rakudo-moar 7a5123: OUTPUT«False␤True␤»
ZoffixWin m: say so / <[ \t ] - [\ ]> / for " ", "\t"
camelia rakudo-moar 7a5123: OUTPUT«False␤True␤»
ZoffixWin m: say so / <[ \s ] - [\ ]> / for " ", "\t"
camelia rakudo-moar 7a5123: OUTPUT«False␤True␤»
14:06 vendethiel joined
ZoffixWin So it's an unescaped space inside a character class without anything in it. 14:06
14:06 perlawhirl left
isBEKaml m: say so /<[\s] - []>/ for " ", "\t" 14:07
camelia rakudo-moar 7a5123: OUTPUT«===SORRY!===␤Iteration past end of iterator␤»
isBEKaml same behaviour
ZoffixWin Sure, whitespace is insignificant 14:08
isBEKaml not what I meant - [ ] was treated as [] and didn't see a character searching it through
so it went past end of string. It should have some sort of check around those bounds 14:09
ZoffixWin Which string? 14:16
I'd think it went in looking for characters in a character class, but there were none, hence the 'past end' message. 14:17
I rather not add any checks for bounds if that means making the thing slower.
ab5tract o/ ZoffixWin
ZoffixWin ?
ab5tract I've enjoyed your blog posts a lot! 14:18
Just waving hello, if that '?' was directed at me.
ZoffixWin After the vitriol you were spewing into my /msg a month or so ago, a wave of hello is suspicious. 14:19
lizmat
.oO( a month is a lot of time on the internets )
14:20
RabidGravy two days is a long time on the internets 14:21
yoleaux 12:28Z <ab5tract> RabidGravy: unfortunately the Tinky example workflow doesn't work on OS X either. I like the looks of this library though!
14:21 lokien_ joined
ab5tract ZoffixWin: it was meant as a conciliatory gesture, in hopes of moving on.. 14:22
ZoffixWin Very well... Thanks for liking my blog post.
RabidGravy ab5tract, it's file a bug against rakudo/moar/libuv then :)
ab5tract RabidGravy: true 14:23
RabidGravy I'd go with checking that a minimal node.js example works to rule out the libuv part
14:24 cdg joined 14:25 telex left 14:26 pochi_ is now known as pochi, ely-se joined, telex joined 14:27 travis-ci joined
travis-ci Doc build passed. Salvador Ortiz 'Add OS portability to WANTED 14:27
travis-ci.org/perl6/doc/builds/107441749 github.com/perl6/doc/compare/1bc7a...fb33d2c2b5
14:27 travis-ci left 14:28 vendethiel left
sortiz I can relax now :) 14:29
14:29 Actualeyes left
RabidGravy ab5tract, e.g. "var fs = require('fs'); fs.watch('.', function (event, filename){ console.log('event is: ' + event); });" if that works in node then rakudo/bug if not libuv bug 14:31
ab5tract RabidGravy: gotcha.
14:33 Deconachick joined
Deconachick rakudo 14:33
14:33 MadcapJake left
Deconachick .msg camelia p6 14:34
yoleaux Deconachick: Sorry, this command is admin-only.
14:34 Deconachick left
sortiz till tomorrow #perl6 14:35
lizmat sortiz o/ 14:36
14:37 sortiz left 14:38 MadcapJake joined
ab5tract cioa sortiz 14:39
14:40 vendethiel joined 14:44 Actualeyes joined, cdg left
lizmat jnthn: wrt to additional tests, I'm not quite sure where to add them atm, if it's about things getting added for 6.c 14:46
or for 6.d.a for that matter 14:47
moritz I'm looking for volunteers to proof-read a German Perl 6 article for me (and give me feedback)
14:47 BenGoldberg left
moritz hoelzro++ read a first draft already, but more eyes would be appreciated 14:47
FROGGS_, timotimo, [ptc], nine: ^^ 14:48
lizmat moritz: as long as you don't expect me to find any errors in German, I'm game :-)
dalek kudo/nom: d25b51e | lizmat++ | src/core/Str.pm:
Make magic inc/dec on strings 2x as fast

By not needing an iterator to do initializations
14:49
moritz lizmat: I expect that too, but nto from you :-)
14:50 rpburkholder joined 14:56 ZoffixWin left 14:57 FROGGS[mobile] joined
FROGGS[mobile] moritz: can you email me details? 14:58
dalek kudo/nom: dbc7115 | lizmat++ | src/core/Junction.pm:
Remove superfluous return
kudo/nom: 2fb2fbc | lizmat++ | src/core/ (2 files):
Mark some more subs as not returning anything
moritz FROGGS[mobile]: sure 14:59
nine Why exactly can't the optimizer just remove the return if it's the last statement in a function? 15:00
15:01 xinming left
moritz well, it'd have to verify that it resolves to &return from CORE 15:02
15:02 xinming joined
moritz and it also can't do it on "is rw" routines (because return decontainerizes 15:03
nine Which should be possible as we statically resolve subs at compile time, don't we?
moritz we do
oh, and needs to check the absence of CONTROL blocks too 15:06
RabidGravy Hmm, if e.g. a PRE phaser is run, however it is added, if it returns false then there should be a "Precondition failed" right? 15:07
moritz yes 15:08
m: sub f() { PRE 0; say 'foo' }; f
camelia rakudo-moar 04eac9: OUTPUT«Precondition '0' failed␤ in sub f at /tmp/cSX4qG3I4D line 1␤ in block <unit> at /tmp/cSX4qG3I4D line 1␤␤»
15:08 TimToady left 15:09 cognome joined 15:10 TimToady joined
RabidGravy yeah, so if I do .add_phaser('PRE", { False }); in a trait that should work too (having confirmed it is run), because it doesn't fail 15:10
moritz note that routines that don't have phasers are codegen'd without support for phasers, for performance reasons 15:12
RabidGravy right, but the phaser does get run, it just doesn't boom 15:13
moritz RabidGravy: ah, the codegen adds the X::Phaser::PrePost 15:14
RabidGravy: so you have to do that manually
RabidGravy m: sub trait_mod:<is>(Routine $r, :$phased!) { $r.add_phaser('PRE', sub (|c --> Bool) { say "PRE"; False; }); }; sub foo() is phased { say "HARR"; }; foo(); 15:15
camelia rakudo-moar 2fb2fb: OUTPUT«PRE␤HARR␤»
RabidGravy ah
gotcha 15:16
15:20 AlexDaniel joined 15:23 virtualsue joined 15:26 vendethiel left 15:37 kurahaupo joined, vendethiel joined 15:41 musiKk left, MadcapJake left 15:43 Kcop left
[Tux] will p6 get a num128? 15:46
dalek c: 0bfe797 | (Steve Mynott)++ | bin/p6doc-index:
only display index file if it exists
kudo/nom: 891d456 | lizmat++ | src/core/Mu.pm:
Make basic object creation 5% faster
15:48
RabidGravy lizmat++ properly on a roll with this stuff 15:49
lizmat [Tux]: I wonder whether this has any affect on test-t
[Tux] tries ...
15:53 ely-se left 15:54 raiph left
[Tux] :( panda is littered with if expr { … return } else { … return } :( 15:58
s/panda/Inline::Perl5/ 15:59
15:59 vendethiel left
[Tux] test 22.570 15:59
test-t 12.073
csv-parser 50.755
lizmat that's still within noise, but also lower, right ? 16:01
[Tux] yes
dalek c: 2820630 | (Steve Mynott)++ | bin/p6doc:
EVALFILE too slow for usual case only use with -f flag
16:02
[Tux] CSV::Parser was 52 earlier today
16:03 vendethiel joined
[Tux] and fixing Inline::Perl5 for -Duselongdouble is beyond my capabilities at the moment 16:08
jnthn [Tux]: num128 isn't on the roadmap for the near future 16:10
nine I guess num80 would be more precise 16:11
16:13 kid51 left
jnthn We get a lot of simplicity in MoarVM out of local/lexical storage being an array of 64-bit things (in a union type). I know that won't last forever (we'll likely also want to do complex value types at some point), but it'll be a large change. 16:13
lizmat: master branch of roast 16:14
lizmat: You seem to think 6.c is mutable
lizmat: Short of any errata that goes into the 6.c branch of roast, it's not. 16:15
Language releases are "snapshots" of the test suite at the release point, essentially.
[Tux] jnthn, was just asking as Inline::Perl5 is currently non-functional for perl5 -Duselongdouble (even if NV's are not used) 16:16
jnthn [Tux]: Is it common to build Perl 5 that way?
16:17 firstdayonthejob joined
jnthn (Just trying to get a picture of if this is a fairly normal configuration we should try to find a good solution for, or something less usual we can just do a bodge around for now...) 16:17
[Tux] FWIW *all* the production perl's *I* use since 5.18.1 are -Duselongdouble -Duse64bitall 16:18
jnthn OK 16:19
[Tux] I cannot tell for what others do
flussence Gentoo's is use64bitint=define, use64bitall=define, uselongdouble=undef
[Tux] OpenSUSE default is also -Uuselongdouble (uselongdouble=undef) 16:21
geekosaur mint (presumably also ubuntu) has it undef
likewise os x
ugexe and debian
[Tux] my guess is the -Uuselongdouble is way more widespread than -Duselongdouble 16:22
jnthn OK
So, we should "fix it somewhow" for now, sounds like :)
[Tux] yes, but there are (for me) more important fixes with a higher priority 16:23
RabidGravy as a complete aside, can a LEAVE know *how* it is leaving a block?
[Tux] RT#127358 and utf8-c8 16:24
lizmat RabidGravy: not afaik
dalek c: 96d063e | (Steve Mynott)++ | bin/p6doc-index:
make more windows friendly
lizmat [Tux]: I nudged jnthn yesterday already about that
[Tux]: it appears not quite an easy thing to fix generally
[Tux] is aware
if it was, it would have been fixed already :) 16:25
Juerd lizmat: Thanks for the speed improvements. MQTT::Client's test suite went from 10 to 8,7 seconds since last week
lizmat Juerd: cool!
Juerd That means 8,6 of shavings left until it matches p5 ;) 16:26
jnthn [Tux]: It's pretty high on my list, but I'm still getting myself back into things.
Juerd But it's a tremendous start :)
jnthn [Tux]: As lizmat noted, I'm concerned the construction of it is fragile. 16:27
azawawi github.com/azawawi/atom-perl6-edit...itive-help # Context-sensitve help is here for Perl 6 :)
RabidGravy as the man said it's all about the "aggregation of marginal gains" 16:28
Juerd Who said that? 16:29
16:29 lokien_ left
RabidGravy Dave Brailsford, the manager of the GB cycling team 16:30
Juerd That's probably why I never heard that one before :D
geekosaur wonders if atom has matured past the memory leak that caused him to uninstall it 16:32
RabidGravy but the idea is sound, don't look for the one golden bullet, improve everything marginally
azawawi geekosaur: windows, linux or macosx?
geekosaur linux
left it sitting for 2 days, it swapped everything else out 16:33
Juerd RabidGravy: I believe in profiling and that usually shows that there are golden bullets ;)
azawawi well i use all the time, the trick is to update lol
on windows, it auto-updates. On linux, it doesnt
Juerd RabidGravy: One of them is the regex engine. My test suite is very regex-heavy and that's probably why it's so slow.
In fact, it's all regexes 16:34
azawawi geekosaur: and... i noticed that chrome and atom can sometimes break each other
geekosaur so chrome's js engine isn't properly self-contained? 16:35
Juerd RabidGravy: But I can wait. Perl 5 is still great for my day to day production performance needs, and Perl 6 is great for just having fun :)
jnthn lizmat: Think I'll try and write up a FQA-style blog post on versioning stuff
lizmat: In an attempt to de-confuse things :)
azawawi geekosaur: it happened to me... i was apt-get upgrading chromium... and my atom broke
lizmat jnthn: excellent idea, with some practical examples, yes! 16:36
Juerd jnthn: I wonder, could a spectest be added to a released language version, if it is known to pass for all existing implementations?
geekosaur oh. that'd be debian's fault then, probably
(debian has a very strict policy of sharing components that can be shared, so they'll have patched chromium and atom to use a common v8. v8 may not be designed for that...) 16:37
lizmat grrr.... got another 10% speed increase on basic object construction, but it fails 1 test :-(
geekosaur (alhouhg that does still suggest v8 could do with more ability to have isolated instances) 16:38
16:39 Xor_ joined
Juerd lizmat: Just volkswagen the test ;) 16:39
lizmat yeah, the thought has crossed my mind :-) 16:40
jnthn 1 test fail can be important :) 16:41
Juerd: I'd somewhat prefer not to 16:42
Juerd: It'll get in the way of seeing what errata a given language version had
Juerd Ah, yes, it would pollute the diff. 16:43
pmurias geekosaur: ninja patching of stuff by package maintainers sucks :/ 16:46
lizmat sigh, the test doesn't fail when copied to a piece of code :-(
16:48 araujo left
lizmat hmmm.... seems I need to have Test loaded for the test to fail :-( 16:48
spooky 16:49
16:49 rindolf left 16:50 wamba joined
lizmat only when specifying a value for a native numeric attribute 16:52
$ 6 'class C { has num $.a }; C.new(a => 42e0)' # golfed, is fine 16:53
$ 6 'use Test; class C { has num $.a }; C.new(a => 42e0)'
P6opaque: invalid kind in attribute bind
jnthn: ^^^ thoughts ?
pmqs_ I have an inner module that exports an enum. Want to export that enum from an outer module, but I'm struggling. This ticket, github.com/perl6/roast/issues/45 seems to imply that re-export is broken. 16:56
16:57 azawawi left
ugexe pmqs_: this might help: github.com/LLFourn/p6-CompUnit-Util 16:58
pmqs_ ugexe, thanks, I'll take a look 16:59
lizmat jnthn: fwiw, it feels like my change is tickling a native num bug
stmuk_ has anyone seen problems with write locks on precomp/.lock when running 'shell "perl6..."' inside another perl6 process? 17:00
17:00 FROGGS_ left 17:01 khw joined
ugexe you can try to run the inner proc with -IFakeDir as the first argument and it might "fix" it (i use -Ilib/.precomp to hide it, as it will end up creating a lib/.precomp/.precomp) 17:04
pmqs_ ugexe, brilliant CompUnit::Util worked fine. 17:05
ugexe so like run($*EXECUTABLE, '-IFakeDir', '-Ilib', $file) 17:06
17:08 ambs left 17:10 FROGGS joined
jnthn lizmat: That error implies it's nqp::bindattr-ing it instead of nqp::bindattr_n-ing it. 17:11
lizmat jnthn : gist.github.com/lizmat/fc376b2b5cb16619ab2b 17:12
stmuk_ ugexe++ # yes that works
lizmat but how would having use Test loaded or not make a difference ????
RabidGravy maybe it's a reverse volkswagen
timotimo perhaps %attrinit{$key_name} has different semantics from .AT-KEY($key_name) somehow?
lizmat only if %attrinit would be special 17:13
timotimo hrm
lizmat but it's not, it's just an ordinary hash created in Mu.bless
timotimo can you tell us which exact branch does the problem? 17:14
lizmat it fails at the top of the loop, which is even stranger
timotimo i mean, the one that does num isn't changed, is it?
oh, that's probably just line num reporting fail?
jnthn lizmat: Why all the removals of my $key_name = ...? 17:15
oh, it got inlined
lizmat yup
17:15 BenGoldberg joined
lizmat $ MVM_SPESH_DISABLE=1 6l 'use Test; class C { has num $.a }; C.new(a => 42e0)' 17:15
isBEKaml lizmat: that error you see with p6opaque is most likely a recent one, but you may already know this. 17:16
lizmat looks like it is spesh related :-(
timotimo oh, you have a different patch that i haven't looked at
lizmat timotimo: gist.github.com/lizmat/fc376b2b5cb16619ab2b
isBEKaml lizmat: I don't see that error on my version here: This is Rakudo version 2015.12-251-g6ade157 built on MoarVM version 2016.01-17-g4671fae
lizmat like I said, I don't think there's a problem in the code per se, since it goes away with spesh disabled 17:17
timotimo that's open now
jnthn Yeah, looks like
timotimo uh oh, so it's likely something i messed up :S 17:18
jnthn Maybe you can unupmess it? :-)
timotimo downmess?
jnthn As long as you're careful not to just sidemess it :)
timotimo anyway, i'm glad about the 5% object creation speedup :) 17:19
17:20 rindolf joined
timotimo lizmat: when you reverted attrinited in Hash<a>, did that throw out a big speedup we got before? :( 17:20
lizmat no, not all of it, just a bit
timotimo is trying to see the lennart pöttering keynote of fosdem and is having a really hard time 17:21
seems like they used the microphone on the camera
so you can hear the audience at about 50% volume relative to the speaker himself
and there's sufficient reverb to make listening really strenuous
i really hope perl devroom audio isn't as terrible
lizmat is glad Tom videod all Perl devroom presentations with 2 camera's from close up front 17:22
timotimo that sounds good
good thinking, Tom!
lizmat (not using the FOSDEM equipment, I might add)
timotimo who is tom again?
browder?
lizmat Tom Bloor, see blogs.perl.org/users/shadowcat_mdk/...-2016.html
skids github.com/skids/perl6-Control-Bail now updated to not stack up closures accidentally. 17:23
Bickeshed still open, and I have no clue about some internals stuff so an eyeball by someone who does may point out something I did wrong. 17:24
dalek c: f306dfc | (Steve Mynott)++ | bin/p6doc:
Use CompUnit::DependencySpecification to find pod file niner++
17:25 rpburkholder left
skids Implementing slang actions method in perl rather than nqp had some ... interesting ... nuances. 17:26
timotimo lizmat: what's the difference between 6 and 6l on your machine? 17:31
oh, probably -Ilib?
lizmat alias 6='time perl6 -e'
alias 6l='perl6 --ll-exception -Mstrict -e'
timotimo nah, --ll-exception
lizmat hmmm... the strict is apparently a leftover
timotimo okay, the first step, reproducing the error locally, is done 17:32
lizmat cool!
17:33 rpburkholder joined
lizmat timotimo: if I use a temp str for that if {}, the problem goes away... 17:34
closing in on it further
17:35 ely-se joined
lizmat if the if uses an nqp::existskey, it is also ok 17:36
ugexe m: my %a = :a(1), :b<2>, :c<3>; for %a -> $x { once { %a<b>:delete; %a<c>:delete; }; say $x.perl; };
camelia rakudo-moar 891d45: OUTPUT«:a(1)␤:sub(method perl (Mu:U $: *%_) { #`(Method|70481040) ... })␤:signature(:(Mu:U $: *%_))␤:num_types(1)␤:types((Mu,))␤:sub(method perl (Mu:U $: *%_) { #`(Method|70481040) ... })␤:constraints(())␤Cannot find method 'WHICH': no method cache …»
lizmat timotimo: for the bindattr_n case
timotimo hum, the block for bindattr_n seems to be invoked rather than inlined 17:37
lizmat yeah, it looks like adding just another line of dummy code in that block, fixes the problem 17:38
17:38 araujo joined
timotimo hm, let me do a check over our jit just to be safe 17:39
stmuk_ does p6doc work on windows now?
lizmat timotimo: just adding "my $something;" to the if block, fixes the issue
timotimo please verify that turning off the jit makes the problem go away?
lizmat MVM_JIT_DISABLE=1 right ? 17:40
araujo 春节快乐!
:)
timotimo ah, yes. i think i see it.
17:41 Ben_Goldberg joined, magiczna_dupa joined, Actualeyes left 17:42 wamba left
lizmat timotimo: indeed, with JIT disabled, it isn't a problem 17:42
timotimo false alarm :|
17:43 rpburkholder left, BenGoldberg left
pmurias lizmat: are the Tom Bloor videos up? 17:44
lizmat not yet, afaik
timotimo i've found the line in the jit that fixes the problem by getting commented out 17:46
17:48 isBEKaml left
magiczna_dupa Im reading some module code and cannot find what mean the first line 17:51
lizmat magiczna_dupa: what is that line ?
magiczna_dupa unit role HTTP::Easy:ver<2.1.3>:auth<supernovus.github.com/>;
unit role HTTP::easy
timotimo i see now.
17:51 Laurent_R left
magiczna_dupa in import manual 17:51
is smh like scope 17:52
Skarsnik unit say that the fichier is what you declare after
magiczna_dupa in which you can export
geekosaur "unit role" - the whole file is a role
Skarsnik it avoid putting for example role R { } around everything
magiczna_dupa ohh
and why the role got that strange name 17:53
with version and auth
Skarsnik it's the full declaration if you want to add version and auth x)
magiczna_dupa but these variables ver and auth are unused?
Skarsnik for now I think yes? 17:54
geekosaur you can specify them when importing
hm, for this maybe not
magiczna_dupa the same is with unit module? we write it instead wrapping all file into module
geekosaur yes
perlpilo1 magiczna_dupa: at some pont in the future you could use a role with the same name but be a different version or have a different auth in the same scope as that role
timotimo lizmat: just pushed to moar; can you try that out?
geekosaur because "role <whatever>;" (or "module", etc.) is a forward declaration
17:55 perlpilo1 is now known as PerlJam
lizmat timotimo: in a momment 17:55
geekosaur auth will let you say *whose* HTTP::Easy you want, rather than forcing someone else's to take a different name
magiczna_dupa geekosaur, yeah but in use case we got use HTTP::Easy::PSGI; 17:57
dalek kudo/nom: 7e25273 | lizmat++ | src/core/Mu.pm:
Streamline BUILDALL for 8% faster object creation
kudo/nom: 5605d5f | lizmat++ | src/core/Mu.pm:
Add dummy code to work around JIT issue
17:57 spider-mario left
timotimo was the dummy code still necessary? 17:58
17:59 sjoshi joined
lizmat it was necessary without the Moar patch 17:59
I put it in a separate commit so that it's easily reverted 18:00
timotimo OK, so it will go away when MOAR_VERSION gets bumped
magiczna_dupa how to run tests in module?:D
lizmat timotimo: yup, that's the idea
timotimo the reason why the error occured was i thought "if we pass in the value and it's a float, we need the different calling convention!", but this really depends on the function being called, and this function declares the argument as MVMRegister
so when i checked for bindattr_n and used REG_VAL_F instead of REG_VAL, it ended up putting the value argument on a separate argument "stack", and the kind value slipped into the value value and it took whatever was in the register at the time for the kind instead 18:01
which ended up being not the right kind in this case
lizmat so it bombed: but in other cases, it would have just done the wrong thing, right ? 18:02
timotimo yes, it would have silently interpreted the kind as an int or pointer to a string
er, no
only if it was a bindattr_n or bindattrs_n
dalek href="https://perl6.org:">perl6.org: eacd147 | (Steve Mynott)++ | source/downloads/index.html:
Rakudo Star 2016.01 Errata
18:03
18:05 rpburkholder joined
timotimo any bindattr_n or bindattrs_n that ended up being jit compiled would either bomb because it didn't have the right value in the register that ends up being interpeted as "kind", or it'd have the "num64" kind in the "kind" parameter by sheer luck and set the same value every time 18:06
llfourn m: use parameters :D; # I want to have something like this. Is there any reason I shouldn't attempt to implement it? 18:08
camelia rakudo-moar 891d45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/WbanWtsNzX␤use parameters not yet implemented. Sorry. ␤at /tmp/WbanWtsNzX:1␤------> 3use parameters :D7⏏5; # I want to have something like this. ␤»
timotimo llfourn: it can go in the ecosystem, in which case it's absolutely fine
llfourn timotimo: It would be quite hard to do from the ecosystem and it's NYI in rakudo so...? 18:09
timotimo hm, do we want to offer it in rakudo?
lizmat timotimo: confirm the problem is gone with most recent Moar
18:09 domidumont joined, maybekoo5 joined
timotimo lizmat: thanks. there definitely was a problem, just not sure it was 100% what caused this %) 18:10
lizmat runs spectest to check for any other issues
hmmm... quite some Inline::Perl5 breakage now
timotimo huh! 18:11
llfourn timotimo: well at one point we did, but it never got finished. I'm not sure whether there was a good reason for that or just not enough time.
timotimo that's not good
lizmat $ perl6 t/spec/S01-perl-5-integration/basic.rakudo.moar 18:12
1..15
moar(91724,0x7fff7a3f6300) malloc: *** error for object 0x10: pointer being freed was not allocated
timotimo hopefully it's not my patch that causes this?
18:12 rpburkholder left
lizmat no, I'm more expecting jnthn's recent moar patches 18:12
timotimo huh 18:13
lizmat that's why I put the temporary fix already in, as it will be some days before we can bump Moar
llfourn www.nntp.perl.org/group/perl.perl6....36477.html # "FWIW you can now (as of a few days ago) control the default with
use invocant :D;"
timotimo right
18:14 AlexDaniel left
geekosaur didn't that just get reverted? 18:14
lizmat llfourn: that was removed before 6.c
because it wasn't working correctly just yet
geekosaur [06 12:43] <dalek> MoarVM: Revert "Fix leak involving inlining handlers."
lizmat and we didn't want an incorrectly working version out there :-)
geekosaur from #moarvm
llfourn lizmat: mmm so it's a good time to get it working now? 18:15
timotimo geekosaur: there were multiple patches, not all were reverted
llfourn (I'm going to attempt it if it is)
lizmat well, it would probably need to live in the .d setting
timotimo it's not really a setting thing, isn't it a grammar thing?
llfourn ah yeah didn't think about versioning 18:16
lizmat yeah, it's mostly a grammar / World thing, I think 18:17
timotimo now that we're promising 6.c, we implementors will be tortured a bunch more than we used to be :) 18:18
llfourn the NYIness comes from World
do we have a way to mark patches as .d or have a .d branch? 18:19
timotimo .c and .d live in the same codebase
yoleaux I don't know
llfourn (or spectest for that matter)
ah yeeh... 18:20
18:20 psy_ joined
timotimo otherwise we couldn't support "use 6.c" and "use 6.d" 18:21
llfourn are those version checking contructs available yet for the grammar?
timotimo i don't know :(
BBIAB
lizmat is waiting for jnthn's blogpost about that :-)
llfourn adds himself to the waiting queue 18:22
ok i'll hold off on this then. Thanks.
18:24 dha joined 18:27 virtualsue left 18:32 magiczna_dupa left 18:33 kid51 joined 18:36 magiczna_dupa joined 18:39 rpburkholder joined 18:47 kid51 left 19:01 vytas left, vytas joined
dalek kudo/nom: 463b6c8 | lizmat++ | src/core/Mu.pm:
Give BUILD_LEAST_DERIVED the same treatment

Not sure what this speeds up, but it should be again in the 5-10% range
19:02
lizmat afk& 19:03
dha I've lost track, is there a comprehensive list of Perl 6 types? maybe broken down by category? 19:07
magiczna_dupa hey I am playing with perl6 modules 19:11
geekosaur dha, doc.perl6.org/type.html ? 19:12
magiczna_dupa and I don't get if I created module and use it
do I need to export sub or variable
to use it
DrForr That should be in the documentation. 19:13
magiczna_dupa doc.perl6.org/language/modules#Expo..._Importing
reading it
DrForr The documentation of the module, actually.
dha geekosaur - ah, right, of course. But not broken down by category. 19:14
magiczna_dupa DrForr, they write to place is export
then use Module; import default symbols
but as I check my example won't work 19:15
DrForr magiczna_dupa: Please nopaste or gist your code, I don't want to guess at what you're doing. 19:16
magiczna_dupa DrForr, paste.ofcode.org/ZpeJpZsc6TTV8uGyaSTpjK 19:18
DrForr What's the module filename? It should be SampleModule.pm or SampleModule.pm6 19:20
RabidGravy the stub sub with the export won't work, just but the is export on the sub, in this case you don't need the stub at all
m: module F { sub foo() is export { say "foo" }; import F; foo() 19:21
camelia rakudo-moar 463b6c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ou_84OANuM␤Missing block␤at /tmp/ou_84OANuM:1␤------> 3is export { say "foo" }; import F; foo()7⏏5<EOL>␤ expecting any of:␤ statement end␤ statement modifier␤ stateme…»
RabidGravy m: module F { sub foo() is export { say "foo" }}; import F; foo()
camelia rakudo-moar 463b6c: OUTPUT«foo␤»
RabidGravy the bare import there is because it can already see the module
if it was in another file you would use "use" instead 19:22
magiczna_dupa the filename is like module name 19:23
jnthn lizmat: Do you still get that build SEGV on Moar HEAD?
dha I should warn you all that we have about 16 people in a bar here working on learning Perl 6.
:-)
RabidGravy in your example also SampleModule::suck() won't work because the subroutine is lexically scoped by default so isn't accessible that way via the package
DrForr +=17
magiczna_dupa RabidGravy, what? what does it mean lexically scoped? 19:24
dha DrForr - also I've pointed people at your Grammar tutorial.
magiczna_dupa RabidGravy, it is private?
RabidGravy, scoped to current file?
19:24 ely-se left 19:25 molaf joined
RabidGravy it can't be seen outside the scope it is defined in, in the case the module { ... } 19:25
DrForr dha: Thanks. It's just episode 1.
jnthn m: role Perl6Learner { method goto-bar() { } }; role Gymnast { method goto-bar() { } }; class FlexibleProgrammer does Perl6Learner does Gymnast { }
camelia rakudo-moar 463b6c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/6epHDQWEap␤Method 'goto-bar' must be resolved by class FlexibleProgrammer because it exists in multiple roles (Gymnast, Perl6Learner)␤at /tmp/6epHDQWEap:1␤»
jnthn dha: Mini lesson on roles ;) ^^
dha I know. But we're here, so I figured I'd tell them about it. At least they know where to look for parts 2 and 3. :-)
DrForr I'll keep an eye on stats :) 19:26
dha jnthn - The error? :-)
jnthn magiczna_dupa: Lexical = scoped to the current code block (set of curly braces)
dha: Shows compile-time detection of conflicting methods in roles :)
dha *nod* 19:27
RabidGravy jnthn, I have a strange LTA regarding "must be resolved by class"
magiczna_dupa jnthn, have no idea how to change it 19:28
DrForr cracks a bottle of framboise...
jnthn magiczna_dupa: Either by export/import, or just write our sub suck() ... 19:29
(The our means package scope)
RabidGravy: Whcih is?
*which
magiczna_dupa jnthn, yeah our is like global scope 19:30
and how to fix it by export?
I did is export and test export(:MANDATORY) 19:31
but it won't go
jnthn m: package Foo { sub bar() is export { say 'like this maybe' } }; import Foo; bar()
camelia rakudo-moar 463b6c: OUTPUT«like this maybe␤»
RabidGravy it's difficult to golf, but basically if I have a class that does two roles A and B with the same method foo, so in the class I do "method foo() { self.B::foo } " then in B I do "method foo() { self.A::foo }" it blows up with the "cannot concretise"
jnthn RabidGravy: Uh, does B do A?
RabidGravy no, but in the code it will only ever be applied to an A 19:32
autarch a fun error I cannot understand - gist.github.com/autarch/3c38c878972070310769
RabidGravy ah
jnthn I don't think that'll work out too well, 'cus roles are generic. 19:33
autarch This comes from trying to EVAL a string containing something serialized via .perl in another thread
jnthn On the type of the invocant
And they get made concrete at composition time
RabidGravy github.com/jonathanstowe/Sofa/blob...Wrapper.pm
jnthn When we need to resolve a self.SomeRole:foo, then we look at all the roles we've made concrete, so we can call a real, instantiated method 19:34
RabidGravy let me see what happens
so it won't matter if I have a class that *must* do A get the role B which also has A ? 19:35
if you see what I mean
jnthn Think that should be fine.
dalek kudo-star-daily: ce34419 | coke++ | log/ (9 files):
today (automated commit)
19:36
rl6-roast-data: 4cdbcc7 | coke++ | / (6 files):
today (automated commit)
rl6-roast-data: 26f9ecd | coke++ | / (6 files):
today (automated commit)
jnthn autarch: Looks like an internal compiler error, but hard to guess much more from that from the stack trace I'm afraid
autarch jnthn: well, I'm quite sure it comes from an EVAL call - but beyond that I'm not sure why it'd happen
RabidGravy m: role A { }; role B does A { }; class C does B does A {}'
camelia rakudo-moar 463b6c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/6odFLYAzv8␤Strange text after block (missing semicolon or comma?)␤at /tmp/6odFLYAzv8:1␤------> 3B does A { }; class C does B does A {}7⏏5'␤ expecting any of:␤ infix␤ infix s…»
autarch I'll try to reduce it something reproducible with less code
RabidGravy m: role A { }; role B does A { }; class C does B does A { } 19:37
camelia ( no output )
jnthn autarch: The stack trace does match up with being in an EVAL.
RabidGravy well it compiles
19:37 eternaleye left
jnthn autarch: I just can't intuit a lot more from it than that. 19:37
autarch yeah, I get that 19:38
19:39 wamba joined 19:40 ely-se joined 19:45 sjoshi left 19:49 wamba left 19:50 pdcawley joined
dha Have I just forgotten how to get a list of methods an object can do, or can you no longer do that since I last looked? 19:51
ah. found it. 19:52
dha slaps self
moritz for the record: .^methods or .^methods(:local) or .^methods(:all), doc.perl6.org/routine/methods
DrForr Should be n the metamodel doc? 19:53
pmurias hoelzro: they still haven't merged your node-bigint pull request :(
magiczna_dupa hey I find next magic code for me :d 19:55
$!connection.recv( :bin )
19:56 rpburkholder left, pdcawley left
moritz magiczna_dupa: which part of that don't you understand? 19:56
magiczna_dupa :bin
moritz it's a named argument to the recv method 19:57
dha Yeah, .^methods should probably be documented somewhere. Particularly as mop.pod indicates that most metamethods are all caps.
moritz and for recv, it means "return binary data"
dha: meta method != method on a meta object 19:58
19:58 johnb_ joined
magiczna_dupa moritz, how? 19:58
method recv(IO::Socket:D: Cool $elems = Inf)
19:58 johnb_ is now known as Guest45613, musiKk joined
dha moritz - ok. Still, it should be documented somewhere. :-) 19:58
moritz dha: it is, see doc.perl6.org/routine/methods 19:59
19:59 bpmedley joined
magiczna_dupa I cant find whats IO::Socket:D but I suppose it is socket value 19:59
treated as Cool number or str
moritz magiczna_dupa: it's on IO::Socket::Async, I presume
Guest45613 Can someone recommend a good book that covers Perl 6's concurrency, parallelism, asynchrony?
moritz magiczna_dupa: ah no, the documentation of recv is just incomplete 20:00
Guest45613: no books yet
jnthn IO::Socket::Async has no .recv method, fwiw
dha moritz - ok, so without that link, and not knowing it to begin with, how would someone find it?
magiczna_dupa moritz, -.-
Guest45613 darn. ok
dha Maybe it should be a FAQ. Seems like something people would want to do, particularly if they're learning the language.
magiczna_dupa how this guy knows that recv got more arguments?
moritz Guest45613: perl6advent.wordpress.com/2015/12/...nous-data/ is a nice intro though
magiczna_dupa dha, I was learning from perl6 intro 20:01
moritz magiczna_dupa: it's probably in the design document, or they read the implementation (which isn't too hard, considering that it's written in Perl 6 itself)
dha ok.
20:01 ELBeavers is now known as ELBeavers_away
moritz dha: one could have thought "oh, I want a list of methods, so let's type "method" in the search box on doc.perl6.org and see what comes up" 20:01
Guest45613 thanks moritz, will have a read. i looked at the talk in act.yapc.eu/ye2015/talk/6390 which got me really keen on learning more
moritz Guest45613: also doc.perl6.org/language/concurrency 20:02
Guest45613 ok
magiczna_dupa moritz, and as you said it is named argument
where then it is defined
it rather should me
recv(bin => True)
to flag binary mode
dha moritz - yep, and that gives you a ridiculously long list of things. And if you just hit enter it takes you to the Method class.
ugexe github.com/rakudo/rakudo/blob/nom/...ket.pm#L10 20:03
moritz magiczna_dupa: :bin is short for bin => True
magiczna_dupa moritz, oh ok
moritz, how can I fix documentation? 20:04
RabidGravy I'm just fixing it
20:04 Vitrifur joined
dalek c: 6c23c2b | moritz++ | doc/Type/IO/Socket.pod:
IO::Socket.recv: document :bin
20:04
RabidGravy okay moritz was just fixing it :)
magiczna_dupa oh :D 20:05
moritz magiczna_dupa: but in general, it's all on github; each doc page has a link to the repo at the bottom
20:05 Vitrifur left
moritz magiczna_dupa: and you can send pull requests, or tell me your github ID, then I can invite you to the perl6 org 20:05
magiczna_dupa ohh so I need just PR
moritz, ok thanks :) 20:06
20:07 awwaiid joined
RabidGravy Dear couchdb, why is your "update function" interface so flexible, it's a right pain to test against 20:09
Hotkeys Lol
20:10 frobisher joined
jdv79 too much surface area? 20:10
RabidGravy it can do an update by PUT or POST, with a document ID or without a document ID it can take query parameters in the URI and body content of either form data or a json document
jdv79 so yes
20:10 dha left 20:11 Vitrifur joined
Skarsnik have fun RabidGravy 20:11
frobisher grr.
20:11 frobisher is now known as dha
RabidGravy comings and goings 20:12
dalek c: 7950162 | moritz++ | doc/ (2 files):
Document .^compose (at least for classes). Closes #360
20:15
moritz github++ # "Closes #\d+" actually closing the issue
RabidGravy yeah I love that 20:16
20:16 yqt joined 20:17 dbrunton joined
RabidGravy I kept seeing the "Closed by a commit" in issues and it took me a while to work out what was going on 20:17
dalek c: e4f40e6 | moritz++ | doc/Language/phasers.pod:
Language improvements in phasers.pod

  [Coke]++, Closes #381
moritz m: say 'abc'.Uni 20:18
camelia rakudo-moar 463b6c: OUTPUT«Method 'Uni' not found for invocant of class 'Str'␤ in block <unit> at /tmp/2eU4HYU4wf line 1␤␤»
moritz m: say Uni('abc')
camelia rakudo-moar 463b6c: OUTPUT«Cannot find method 'Uni'␤ in block <unit> at /tmp/MPPwRgJrSx line 1␤␤»
moritz how do I creat an Uni? 20:19
Hotkeys Uni?
moritz Codepoint-level string (without Grapheme magic)
RabidGravy get some books and invite some students round
20:20 darutoko left
jnthn moritz: You coerce to one of the subclasses 20:20
moritz: Depending which NF* you want
moritz jnthn: ah
jnthn .NFC, NKFC, .NFD, etc.
moritz m: say 'abc'.NFC
camelia rakudo-moar 463b6c: OUTPUT«NFC:0x<0061 0062 0063>␤»
RabidGravy so 'CONTROL' and 'CATCH' phasers won't work if added by .add_phaser right?
magiczna_dupa hey how can I test perl module?
as I checkout one and want to fix some things in it 20:21
jnthn RabidGravy: No, they involve some quite convulated code-gen
moritz magiczna_dupa: doc.perl6.org/language/testing
RabidGravy m: use Test; ok 1;
camelia rakudo-moar 463b6c: OUTPUT«ok 1 - ␤»
RabidGravy there goes my plans for world domination
magiczna_dupa great ;-)
dalek c: ba18428 | moritz++ | util/new-type.p6:
Fix new-type util
20:23
RabidGravy magiczna_dupa, if you are looking at making a module, as well as reading the great documentation you might want to peruse some of the fabulous modules that already exist to see how they work 20:24
20:24 virtualsue joined 20:28 cognome left
PerlJam
.oO( but ... but ... which ones are fabulous? )
20:28
Hotkeys All of them of course 20:29
RabidGravy all of them if people have been bothered to make them they are fabulous
magiczna_dupa RabidGravy, yeah sure thats what I am doing right now 20:30
RabidGravy I'm not convinced that Sofa is going to be fabulous however as I am rapidly losing the will to live writing the tests
magiczna_dupa RabidGravy, I think the good web framework should be created then maybe someone will start to use perl6 commercially 20:32
:P
RabidGravy why do you need a web framework to use it commercially?
20:32 domidumont left
magiczna_dupa cause web is popular ;D 20:32
moritz people are already using Perl 6 commercially
dha Oh? 20:34
20:34 ely-se left
magiczna_dupa ? 20:34
moritz, thats not true
;D
DrForr And you know this ... how?
(not to moritz, sorry...)
magiczna_dupa DrForr, I was looking for job and no-one exist and more my cofriends in company don't like Perl 20:35
mst currently, where perl6 is being used commercially, it's because a developer wrote something in perl6 that turned out to be useful 20:36
moritz magiczna_dupa: masak and jnthn have repeatedly used Perl 6 for their work, for example. As did colomon
RabidGravy so that sample == "no one"
mst this is the standard way very early adoption happens
RabidGravy weird
colomon “does” colomon. ;)
moritz mst: that's how it always starts
colomon++
DrForr Sigh. Obviously a sample size of one proves a universal. 20:37
magiczna_dupa as I write swiss tool in Perl the guy which sit next to me said that he used perl last time in 2009 year and he won't to see moreover
moritz magiczna_dupa: this just proves that "the guy" doesn't use and like Perl, nothing more, nothing less 20:39
mst eh. most of my commercial code is perl5 and none of my customers are trying to replace it with something else
DrForr And who knows where he encountered Perl and what shape the code was in, and a *host* of other factors come into play, but since you've already made up your mind there's no point arguing.
mst magiczna_dupa: basically, I don't disagree that perl6 jobs aren't currently really a thing in terms of job adverts, but that doesn't mean people aren't using it at work at all. 20:40
DrForr: I don't think that's really fair. he's in an environment where lots of people are down on perl, and that's going to affect his perception. availability bias is a thing. 20:41
20:42 wamba joined
RabidGravy to be honest I've seen Perl 5 code that made me never want to see *software* again in the past. But hey we won't speak ill of defunct companies. 20:42
mst I've seen perl5, C, javascript, make, sh, csh, python, and ruby code that all did that
and that's only off the top of my head
magiczna_dupa the thing which perl need it is something which already got a newcomer langs 20:43
like swift
RabidGravy yeah pick a language any language
magiczna_dupa good ide
DrForr mst: Yes, availability and selection bias, I do understand these principles. I'm just saying that the small sample size of people who have had contact with perl in no way generalizes to a sweeping statement that there is no commercial work for perl. 20:44
mst yes. but his actual thesis was "there's no jobs being advertised for it"
magiczna_dupa and onward syntax check
mst I believe pointing out that that can be true, and 'no commerical work' still be false, is more constructive
magiczna_dupa: in general, everybody thinks 'perl needs' whatever tool they most prefer using. then they don't write it, and wonder why the people who don't haven't written it for them yet 20:45
RabidGravy :) 20:46
magiczna_dupa mst, ye sure :-)
mst, ppl always says like that I know 20:47
20:47 ely-se joined
DrForr Yes, it is entirely true that there are few to no jobs advertised for it. consider the fact that I can count the number of weeks since it's been released on one hand. Surely that has *some* impact, if only because HR needs at least a *few* months' lead time to write ads. 20:47
RabidGravy and work out how many years of experience they can demand
mst DrForr: right. so I'm not sure why you think ranting at the user and saying they'll never change their mind is going to be more useful than pointing out they've missed the point :) 20:48
DrForr Mind you I imagine it'll take HR only a few months to demand workers with 5 years of experience.
RabidGravy it was a running joke back in the 2001-2 when they caught on to C# and were asking for five years of experience
mst corporate HR does tend to be hilarious
provided you like black comedy
DrForr I've just seen the pattern before, figured I'd get ahead of the curve :/ 20:49
dalek c: 76663f4 | moritz++ | / (6 files):
Basic documentation for Uni, NF{K,}{C,D}
20:49 AlexDaniel joined
jnthn
.oO( I nearly already do have "10 years Perl 6 experience"... )
20:49
RabidGravy I dunno I most recently worked for a large financial institution, their HR was more like something Kafka may have come up with
DrForr gets back to getting something done and kicking around a (bloody) web framework design.
RabidGravy well I guess I could wing it as I'm pretty sure I have patches in parrot more than ten years ago 20:50
dha Getting something done? What's that like? 20:51
magiczna_dupa DrForr, are you preparing web framework?
skids plus.google.com/+CybercitiBiz/posts/eyKgFkaaVFt
mst dha: almost, but not entirely, quite unlike today
DrForr I released the second version of Parrot, does that count? :)
dha Ah.
magiczna_dupa DrForr, I don't know what Parrot is ;d 20:52
DrForr magiczna_dupa: There's already Bailador, but I'm not going to restart that discussion.
20:53 wamba left
magiczna_dupa DrForr, ye I see Bailador 20:53
20:53 wamba joined
dalek c: bbcf876 | moritz++ | doc/Type/Str.pod:
Document Str.NFD and friends.

Closes #365
20:54
tadzik hey, bailador was not exactly meant to be a production thing :)
20:54 mcmillhj joined
tadzik (also, nice nickname, as Rotwang said) 20:54
RabidGravy I think that horse has bolted matey
magiczna_dupa tadzik, o czesc
tadzik o/ 20:55
jnthn was trying not to say anything about the nick... :)
moritz doc.perl6.org/language/faq#Is_there...n_6.0.0%3F should we change that answer to "no, it's called v6.c"? 20:57
AlexDaniel “yes, it's called v6.c”?
magiczna_dupa hey is it okay to write one method over 100+ lines 20:58
:D 20:59
xenu usually no
magiczna_dupa I am looking for crazy module right now
;s
stmuk_ the question probably should be "Is there a Perl 6 version 6.0.0?"
AlexDaniel magiczna_dupa: depends 21:00
stmuk_ and the answer "well yes and no. next question please?" 21:01
mst you *can* write a method that long, but please don't :)
AlexDaniel mst: Dunno, what if it has several lexical subs? :) 21:02
DrForr magiczna_dupa: Slang::Roman :)
dalek c: e11e81a | moritz++ | doc/Language/faq.pod:
The FAQ answer for "Is there going to be a Perl 6 version 6.0.0?" is much simpler now
ab5tract multi method dispatch with where constraints have definitely reduced the justifiability of 100+ methods
skids 100+ line methods -- 100+ multimethods themselves though ... :-) 21:03
AlexDaniel moritz: uhh! Such a pity. It was a great answer
21:04 dha left
stmuk_ isn't 6.c intended to be supported by *all* post 2015.12 releases? 21:04
magiczna_dupa if I PR someones code do you think he will apply my work?
ab5tract skids: it can go the wrong way too, I'm sure. None of my p6 has gotten that complex yet though..
magiczna_dupa if it will some more readable fixes
21:04 raiph joined 21:05 PiL_ left
DrForr magiczna_dupa: ONe way to find out :) 21:05
21:06 PiL_ joined
AlexDaniel ab5tract: I've noticed that p6 code is rather dense. Some really complex stuff can fit into 5 lines. Line count doesn't matter much, I guess 21:06
I mean bigger line count does not necessarily mean more complexity in Perl 6. But that might be more or less true in other languages 21:08
PerlJam stmuk_: why do you ask?
dalek href="https://perl6.org:">perl6.org: 009f20d | (Steve Mynott)++ | source/downloads/index.html:
suggest deleting p6doc.bat as windows fix for R* 2016.01
21:09
magiczna_dupa DrForr, also SDL2 bindings author not responds me
stmuk_ I haven't actually spun up a windows vm to check that but maybe it works :)
raiph .ask moritz Comments? When discussing versioning of p6doc ab5tract said "it's not Rakudo documentation. It's Perl 6 documentation." But p6doc already has lots of rakudo specific stuff in it, eg the FAQ, and I was about to add more with a Performance page that talks about Rakudo stuff. 21:10
yoleaux raiph: I'll pass your message to moritz.
21:12 kaare_ left
RabidGravy I think I've got a 100+ line method somewhere or other but it's probably get a lexical sub and even a complete class definition in it 21:12
DrForr magiczna_dupa: You're taking a sample size of one person that won't respond to PRs and assuming that applies to the entire community. I deal with PRs on a daily basis, it's just a question of how much time that auhor has to devote to a given project.
AlexDaniel m: say [~] (0..0x1FFFF ==> grep { .uniname ~~ m/‘CUNEIFORM’ .* ‘SQUARED’ / })».chr # O_o
camelia rakudo-moar 463b6c: OUTPUT«𒀱𒂝𒂭𒅄𒅒𒇫𒈔𒋲𒍟␤»
mst magiczna_dupa: different people are different. 21:13
magiczna_dupa: some authors are busy.
dalek c: 49bceab | (Steve Mynott)++ | doc/Language/faq.pod:
fix typo and tweak 6.0.0 answer
RabidGravy magiczna_dupa, for reference the longest I waited for a PR to be accepted was eight months
magiczna_dupa use v6; 21:15
does it mean that author used perl interpreter
AlexDaniel .u 🆊
yoleaux U+1F18A CROSSED NEGATIVE SQUARED LATIN CAPITAL LETTER P [So] (🆊)
xenu if author is too busy or too lazy, you can always as him for commit bit
usually they agree
and fix the issues by yourself
RabidGravy I get very few PRs I can only assume that's because no-one uses any of my modules
AlexDaniel xenu: sometimes asking for a commit bit makes them accept your PR :)
RabidGravy: or they “just work” 21:16
RabidGravy magiczna_dupa, all that means is that if the script/module/whatever is run like by Perl 5 it will crap out with a meaningful errror message
similar to: 21:17
m: use v7;
camelia rakudo-moar 463b6c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/CT5k2bJf6X␤No compiler available for Perl v7␤at /tmp/CT5k2bJf6X:1␤------> 3use v77⏏5;␤»
magiczna_dupa oh well it should be always used
RabidGravy rather than blundering on until it gets really confused by the syntax and craps out with some imcomprehensible error message 21:18
also, it can specify minor versions 21:19
m: use v6.c;
camelia ( no output )
mst which can totally happen; we had somebody accidentally try to 'm:' on #perl yesterday and spent five minutes debugging his code as normal perl before we realised 21:20
RabidGravy m: use v6.d;
camelia rakudo-moar 463b6c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ADdtSM0sSu␤No compiler available for Perl v6.d␤at /tmp/ADdtSM0sSu:1␤------> 3use v6.d7⏏5;␤»
AlexDaniel .u ⃞
yoleaux U+20DE COMBINING ENCLOSING SQUARE [Me] (◌⃞)
Skarsnik RabidGravy, gptrixie have quite 'big' routine x)
stmuk_ m: use v6.a
camelia rakudo-moar 463b6c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/miYRqNtl_Z␤No compiler available for Perl v6.a␤at /tmp/miYRqNtl_Z:1␤------> 3use v6.a7⏏5<EOL>␤»
stmuk_ its probably not worth retrofitting :) 21:21
21:23 Psyche^ joined 21:24 protium joined, ilbot3 left
jnthn s/probably// ;) 21:25
dalek c: 5709e9f | (Steve Mynott)++ | META.info:
specify panda as dep
RabidGravy has anyone made anything (however experimental) that has a Compunit::Repository that has its storage in other than a file?
21:25 yurivish joined 21:26 TEttinger joined
moritz stmuk_: because Build.pm uses panda stuff? 21:26
yoleaux 21:10Z <raiph> moritz: Comments? When discussing versioning of p6doc ab5tract said "it's not Rakudo documentation. It's Perl 6 documentation." But p6doc already has lots of rakudo specific stuff in it, eg the FAQ, and I was about to add more with a Performance page that talks about Rakudo stuff.
stmuk_ moritz: yes and p6doc too (which it shouldn't)
ugexe its also because it uses Panda::Installer in the main module/script 21:27
moritz .tell raiph please mark rakudo-specific stuff as such in the docs, even if it's not always the case yet
yoleaux moritz: I'll pass your message to raiph.
21:27 Psyche^_ left
stmuk_ ugexe: it's starting to use it less 21:27
I assume zef is Build.pm aware BTW? 21:28
ugexe yes
RabidGravy does the Build.pm thing allow for an install hook as well as build/test phases? say I wanted to install e.g. a database schema as well as an application module 21:31
ugexe no 21:32
RabidGravy Hmm
21:34 protium left
RabidGravy may need to fix that at some point, things that try to create a database every time you run them for instance are really annoying 21:36
(or even have to check to see whether then should)
ugexe ive been bringing it up for a long time. even implemented hooks/ in zef a year ago... i removed them because everyone still used Build.pm :( 21:37
pre/post hooks for fetch,build,test,install,report
21:38 wamba left
RabidGravy Isn't it possible to support both? Even going as far as a tool that could generate a Build.pm that will run the appropriate hooks for non-compliant tools 21:42
I'm not going there right now, but seems doable
21:43 dbrunton left, Xor_ left 21:46 Skarsnik left 21:47 wamba joined
magiczna_dupa hey I find bug in documentation 21:47
!!!
21:47 tharkun joined
ugexe if the entire ecosystem did not write their Build.pm files to require panda, then yes 21:49
but maintaining both a hook implementation as well as supporting the required source code modification on Build.pm to allow them to be run without panda wasn't worth it
mst Build.pm at this stage is probably best filed as "the experiment that let us start to get an idea of what a proper thing would require" 21:50
magiczna_dupa doc.perl6.org/routine/.%3D
try to find .=
21:51 magiczna_dupa left
AlexDaniel .tell MadcapJake I've added your ideas (and some other stuff) to gist.github.com/AlexDaniel/c89bd27...b63f31e4c. Thanks! 21:54
yoleaux AlexDaniel: I'll pass your message to MadcapJake.
RabidGravy .= isn't a single operator in the same way as ~=, +=, -=, /= , *=, ^= or the other squiilion combinations, it should be documented better but it's just shorthand for do this thing on the RHS with the LHS and then assign it to the LHS 21:55
geekosaur they left
RabidGravy or some such 21:56
mst however people will likely look for it in operator documentation so
AlexDaniel RabidGravy: .= is not listed in this gist
geekosaur this does highlight that I've found it too hard in generla to find things unless I know about them already --- things tend to be organized semantically, but often I have only syntax and the semantics is what I want to find out
21:56 musiKk left
RabidGravy AlexDaniel, eh? 21:57
AlexDaniel RabidGravy: ah sorry, I thought that it was a comment on my gist :D
RabidGravy no, the other guy
:)
AlexDaniel RabidGravy: I thought that ≔ was rendered as .= with your fonts or something
mst geekosaur: that's one of the hardest problems to solve with documentation 21:58
21:59 raiph left
AlexDaniel ⩲ – += # nah that's probably too much… 21:59
22:00 wamba left 22:02 BenGoldberg_ joined
RabidGravy AlexDaniel, I have a third problem now, my screen is covered in crap so I can't tell whether something is part of a glyph or just a bit of dust ;-) 22:03
22:04 _PiL_ joined 22:05 Ben_Goldberg left
dalek kudo-star-daily: 6487ebc | coke++ | log/ (9 files):
today (automated commit)
22:05
autarch m: use MONKEY-SEE-NO-EVAL; EVAL( now.perl ) 22:06
camelia rakudo-moar 463b6c: OUTPUT«===SORRY!===␤Cannot find method 'compile_time_value'␤»
autarch jnthn: that's the error I gisted earlier
maybe the same as rt.perl.org/Ticket/Display.html?id=126873 ?
22:08 PiL_ left 22:10 ELBeavers_away is now known as ELBeavers
RabidGravy autarch, I would say that is because there is something a bit wrong with the .perl of the instant 22:10
autarch actually, I think it's the .perl of Rat that's the problem
RabidGravy m: say Instant.from-posix((<807412079564/555>, 0)) 22:11
camelia rakudo-moar 463b6c: OUTPUT«===SORRY!===␤Cannot find method 'compile_time_value'␤»
autarch m: 'say Rational.new( 5, 2 ).perl'
camelia rakudo-moar 463b6c: OUTPUT«WARNINGS for /tmp/AIA3oZNVZk:␤Useless use of constant string "say Rational.new( 5, 2 ).perl" in sink context (line 1)␤»
autarch m: 'say Rational.new( 5, 2 )'
camelia rakudo-moar 463b6c: OUTPUT«WARNINGS for /tmp/A1epJjCbWc:␤Useless use of constant string "say Rational.new( 5, 2 )" in sink context (line 1)␤»
autarch m: 'say Rat.new( 5, 2 ).perl' 22:12
camelia rakudo-moar 463b6c: OUTPUT«WARNINGS for /tmp/acRV75B_My:␤Useless use of constant string "say Rat.new( 5, 2 ).perl" in sink context (line 1)␤»
autarch m: 'say Rat.new( 5, 2 )'
camelia rakudo-moar 463b6c: OUTPUT«WARNINGS for /tmp/ZvIPCpsgr2:␤Useless use of constant string "say Rat.new( 5, 2 )" in sink context (line 1)␤»
22:12 kurahaupo left
autarch ok, I'm lost 22:12
RabidGravy m: say (<807412079564/555>, 0)
camelia rakudo-moar 463b6c: OUTPUT«===SORRY!===␤Cannot find method 'compile_time_value'␤»
autarch m: say Rat.new(31, 10) # I copied this from the Rat docs!
camelia rakudo-moar 463b6c: OUTPUT«3.1␤»
RabidGravy yeah, it's that
autarch m: say Rat.new( 31, 10 ) # I copied this from the Rat docs!
camelia rakudo-moar 463b6c: OUTPUT«3.1␤»
autarch m: say Rat.new( 31, 10 ).perl
camelia rakudo-moar 463b6c: OUTPUT«3.1␤»
RabidGravy m: say (807412079564/555, 0) 22:14
camelia rakudo-moar 463b6c: OUTPUT«(1454796539.754955 0)␤»
RabidGravy m: say Instant.from-posix((807412079564/555, 0))
camelia rakudo-moar 463b6c: OUTPUT«Instant:12␤»
autarch so if I wanted to fix this (which I do) where do I put the tests? 22:15
RabidGravy m: say DateTime.new(Instant.from-posix((807412079564/555, 0)))
camelia rakudo-moar 463b6c: OUTPUT«1970-01-01T00:00:02Z␤»
autarch it looks like it might be a trivial fix to just have the .perl method spit out "Rat.new( ... ) "
RabidGravy m: say DateTime.new(Instant.from-posix(Rat.new(807412079564/555, 0))) 22:16
camelia rakudo-moar 463b6c: OUTPUT«Type check failed in binding nu; expected Int but got Rat␤ in block <unit> at /tmp/epMHnVCn0N line 1␤␤»
RabidGravy m: say DateTime.new(Instant.from-posix(Rat.new(807412079564/555, 0).Int))
camelia rakudo-moar 463b6c: OUTPUT«Type check failed in binding nu; expected Int but got Rat␤ in block <unit> at /tmp/EVhCVMnTvQ line 1␤␤»
autarch say DateTime.new(Instant.from-posix(Rat.new(807412079564, 555)))
m: say DateTime.new(Instant.from-posix(Rat.new(807412079564, 555)))
camelia rakudo-moar 463b6c: OUTPUT«2016-02-06T22:08:59.754955Z␤»
RabidGravy there 22:17
22:18 wamba joined
autarch I see a bunch of tests in roast under S32-num/rat.t 22:18
so ... what's the dev process around all this? do I make two parallel branches and submit a PR for each?
RabidGravy one to roast and one to rakudo 22:20
autarch k
RabidGravy yeah I guess
autarch this would be a great doc for someone who knows this to write ...
"contributing to Perl 6 - the dev process" 22:21
dalek ast/autarch/fix-Rat.perl: a32b429 | (Dave Rolsky)++ | S32-num/rat.t:
Add a test for Rat.perl.EVAL round tripping with arbitrary numerator & denomator

As of the latest Rakudo this leads to an error of the form:
   ===SORRY!===
   Cannot find method 'compile_time_value'
See rt.perl.org/Ticket/Display.html?id=126873 for the original report.
22:24
autarch err, I forgot to ask if it was okay to make a branch in that repo - forgiveness is better than permission? 22:25
RabidGravy it's a branch hey :)
PerlJam autarch: +1
autarch yeah, again, it'd be good to doc the dev process ;)
or maybe it's already documented and I don't know where, which is entirely possible 22:26
'dev process.subst( 'dev', 'contribution' )
for example, some wonderful person made a very clear guide to contributing to the perl 5 core - perldoc.perl.org/perlhack.html - gosh, whoever did that is just the best 22:29
RabidGravy yeah I remember when that went in 22:30
22:31 espadrine joined
autarch I don't think I'm quite at the point where I could write this for p6 22:31
also, p6 is just more complicated since it has a bunch of repos involved
mst you could start writing it and then get people to shout "you're wrong" at you a lot
I've done that to good effect for things before now ;) 22:32
autarch yeah, that's some of what happened with the p5 doc, but it was a little easier because I was less wrong ;) 22:33
RabidGravy I think the process is still at the "agile" stage too so actually writing things up my solidify whatever the accuracy
22:34 cognominal left
autarch makes sense 22:34
I do think this sort of stuff is important if we want p6 to have a chance at bigger adoption
projects which make contributing easy get more users 22:35
RabidGravy yeah, "come to #perl6 and we'll talk you through it" doesn't scale well ;-) 22:36
dalek ast/autarch/fix-Rat.perl: c785caa | (Dave Rolsky)++ | S32-num/rat.t:
Fix incorrect plan in rat.t
22:38
ast/autarch/fix-Rat.perl: 1b4f796 | (Dave Rolsky)++ | S32-num/rat.t:
Add a test for Rat.perl.EVAL round tripping with arbitrary numerator & denomator

As of the latest Rakudo this leads to an error of the form:
   ===SORRY!===
   Cannot find method 'compile_time_value'
See rt.perl.org/Ticket/Display.html?id=126873 for the original report.
autarch well, that was nice and easy - ++ to Perl 6 for being written in Perl 6! 22:40
I think I would've given up on doing anything similar in p5 after the tenth layer of C macros
RabidGravy rainy day project for someone to make similar round trip tests for all the things 22:41
22:42 espadrine left
autarch yeah, that'd be nice - there were actually some round trip tests but they only tested cases that have a nice .perl because the denom is 1 or is divisible by 2 or 5 (I think) 22:44
22:44 raiph joined
autarch ah, no, apparently that "<X/Y>" syntax works for some cases but nothers? 22:45
m: say (1/3).perl.EVAL
camelia rakudo-moar 463b6c: OUTPUT«0.333333␤»
autarch m: say (1234567834684326/55).perl.EVAL
camelia rakudo-moar 463b6c: OUTPUT«===SORRY!===␤Cannot find method 'compile_time_value'␤»
autarch I have no idea what's going on there
also no idea what syntax '<...>' is in this case - why not just serialize as '1/3' ?
super weird, it works up to 2**31-1 22:47
m: say ((2**31-1)/3).perl.EVAL
camelia rakudo-moar 463b6c: OUTPUT«715827882.333333␤»
autarch m: say ((2**31)/3).perl.EVAL
camelia rakudo-moar 463b6c: OUTPUT«===SORRY!===␤Cannot find method 'compile_time_value'␤»
autarch so maybe my rakudo fix isn't really right but at least there's a test now 22:48
RabidGravy the <> kick in the divisor is greater than 32 22:50
whatever the divisand
lizmat autarch: could you split up PR 706 in separate PR's? or are you ok with me committing them in separate commits ?
autarch what syntax is <> there?
lizmat: I'm ok with you doing whatever you like
lizmat oki 22:51
22:51 rindolf left
autarch I have total faith in you ;) 22:51
22:51 colomon left
RabidGravy m: say (1/32).perl; say (1/33).perl 22:51
camelia rakudo-moar 463b6c: OUTPUT«0.03125␤<1/33>␤»
autarch I just don't understand why it's wrapped in <> 22:52
AlexDaniel m: say WHAT <1/33>
lizmat autarch: not sure either anymore
camelia rakudo-moar 463b6c: OUTPUT«(Rat)␤»
AlexDaniel autarch: why not?
autarch AlexDaniel: what syntax is that? 22:53
lizmat m: say WHAT 1/33
camelia rakudo-moar 463b6c: OUTPUT«(Rat)␤»
AlexDaniel autarch: not sure but I have seen it many times
lizmat m: say 1/33 .WHAT
camelia rakudo-moar 463b6c: OUTPUT«===SORRY!===␤Method call must either supply a name or have a child node that evaluates to the name␤»
lizmat :-)
RabidGravy it doesn't work everywhere
autarch m: say (1/33).WHAT
camelia rakudo-moar 463b6c: OUTPUT«(Rat)␤»
AlexDaniel lizmat: say <1/33> .WHAT
oops
lizmat m: say &WHAT.signature
camelia rakudo-moar 463b6c: OUTPUT«(Mu \x)␤»
AlexDaniel m: say <1/33> .WHAT 22:54
camelia rakudo-moar 463b6c: OUTPUT«===SORRY!===␤Method call must either supply a name or have a child node that evaluates to the name␤»
autarch m: say <1/33>.WHAT
camelia rakudo-moar 463b6c: OUTPUT«(Rat)␤»
autarch m: say <1/33>.perl
camelia rakudo-moar 463b6c: OUTPUT«<1/33>␤»
lizmat .WHAT is not really a method call, but codegenned afaik
AlexDaniel … which is why it is so often broken
RabidGravy so 22:55
m: say <1/33> * 33
camelia rakudo-moar 463b6c: OUTPUT«1␤»
RabidGravy right, so < > does something subtly different to qw() 22:57
strange
timotimo aye, < > also has :var 22:58
m: say qw:var(1/33).WHAT
camelia rakudo-moar 463b6c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ciTqEQg_RJ␤Invalid adverb value for :var(1/33)␤at /tmp/ciTqEQg_RJ:1␤------> 3say qw:var(1/33)7⏏5.WHAT␤»
timotimo er, yeah
m: say qw:var{1/33}.WHAT
camelia rakudo-moar 463b6c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XpBawHs3SJ␤Unrecognized adverb: :var␤at /tmp/XpBawHs3SJ:1␤------> 3say qw:var7⏏5{1/33}.WHAT␤»
timotimo hm, okay
RabidGravy I get ye drift 22:59
AlexDaniel “Literals specified without spaces in angle brackets are exempt from val() processing, so <1/2> produces a value that is Rat, while < 1/2 > produces a value that is both a Rat and a Str.” 23:00
m: say WHAT < 1/2 >
camelia rakudo-moar 463b6c: OUTPUT«(RatStr)␤»
AlexDaniel indeed
m: say WHAT <1/2>
camelia rakudo-moar 463b6c: OUTPUT«(Rat)␤»
timotimo ah
that, right.
AlexDaniel took a while to find this 23:01
so that's just a syntax for literals, nothing special :)
autarch ah 23:03
RabidGravy but it's still messed up in the .gist so all good 23:04
23:05 virtualsue left 23:07 kjs_ joined
timotimo there's now 130 videos up from fosdem. and i have already forgotten what the room name was for the perl devroom ... 23:07
AlexDaniel H.2214 ? 23:08
lizmat yup, that's the one
23:10 wamba left, JRaspass joined
AlexDaniel Should I use ‘skip’ or ‘todo’ in tests? What would be the reason to prefer one to another? 23:11
lizmat autarch: does your branch cover the failures in t/spec/S03-sequence/basic.t ? 23:12
argh and some more failures ?
autarch lizmat: ah, I didn't notice that
lizmat :-(
autarch it seems like tests shouldn't be relying on the exact .perl-ification on arbitrary classes though 23:13
dalek kudo/nom: ceb3c72 | lizmat++ | .gitignore:
Also ignore .precomp dirs, autarch++
kudo/nom: 58d3398 | lizmat++ | CREDITS:
Add Dave Rolsky to CREDITS, autarch++
23:14
lizmat autarch: patches welcome
autarch heh
lizmat I'm going to get some sleep, will be checking in again in ~ 12 hours from now 23:15
good night, #perl6!
timotimo OK, 2214 has no videos up yet
AlexDaniel timotimo: it wont surprise me if they get lost again 23:16
lizmat well, all of Sat morning's but 3 have been lost :-( (well, technically, not lost, just not recorded apparently) 23:17
good thing we were on Sun morning
23:17 colomon joined
lizmat really sleep now& 23:17
23:18 virtualsue joined
RabidGravy what was the qq adverb that stops { } interpolation? 23:24
ely-se :!c I think
RabidGravy indeed it is cheers! 23:25
ely-se or just use q, not qq 23:26
23:28 ecocode joined 23:29 ELBeavers is now known as ELBeavers_away
RabidGravy nah want regular $foo interpolation 23:30
23:30 ELBeavers_away is now known as ELBeavers
AlexDaniel m: my $x = 42; say Q:s‹hello $x› 23:31
camelia rakudo-moar 58d339: OUTPUT«hello 42␤»
AlexDaniel RabidGravy: ↑ consider this too
m: my $x = 42; say Qs‹hello $x›
camelia rakudo-moar 58d339: OUTPUT«hello 42␤»
RabidGravy I think the quoting docs could do with some pimping up 23:32
AlexDaniel RabidGravy: sure. Create an issue on github :) 23:33
RabidGravy or just do it 23:34
AlexDaniel design.perl6.org/S02.html#Adverbs_on_quotes
23:34 kjs_ left
AlexDaniel maybe it would even make sense to copy it straight from design docs 23:35
23:35 wamba joined
Guest45613 since perl6 can run on a jvm, is there tooling to produce a .jar file for distributing a perl6 program? 23:38
AlexDaniel j: my @a = gather { take $_ for (^10).hyper(:1batch).map({ sleep rand * 0.1; $_ }) }; say @a
camelia rakudo-jvm f99bdb: OUTPUT«take without gather␤ in block at /tmp/ToIV9WtBuj:1␤␤take without gather␤ in block at /tmp/ToIV9WtBuj:1␤␤take without gather␤ in block at /tmp/ToIV9WtBuj:1␤␤take without gather␤ in block at /tmp/ToIV9WtBuj:1␤␤take without gath…»
AlexDaniel m: my @a = gather { take $_ for (^10).hyper(:1batch).map({ sleep rand * 0.1; $_ }) }; say @a
camelia rakudo-moar 58d339: OUTPUT«take without gather␤ in block at /tmp/_Y1ChUwhek line 1␤␤[]␤»
timotimo ah, the for on the hyper list gets scheduled via the thread pool??
m: my @a = gather { take $_ for (^10).hyper(:1batch).map({ sleep rand * 0.1; $_ }).eager }; say @a 23:39
jnthn timotimo: Sure, since for is implemented in terms of .map
camelia rakudo-moar 58d339: OUTPUT«[]␤»
AlexDaniel timotimo: ?? I didin't understand a wor, but yes?
word*
timotimo heh
AlexDaniel m: .say for (^10).hyper(:1batch).map({ sleep rand * 0.3; $_ }) 23:40
camelia rakudo-moar 58d339: OUTPUT«0␤4␤2␤5␤3␤1␤8␤6␤7␤9␤»
AlexDaniel I'm trying to write a test for this ↑
but how can I gather it in that order?
RabidGravy I'll look at the quotes thing in the morning
AlexDaniel ah ok 23:45
m: my @a; @a.push($_) for (^10).hyper(:1batch).map({ sleep rand * 0.01; $_ }); say @a
camelia rakudo-moar 58d339: OUTPUT«[2 1]␤»
AlexDaniel good enough
23:45 kurahaupo joined 23:48 frederico joined, spider-mario joined 23:49 ecocode left
RabidGravy close enough for jazz 23:50
jnthn AlexDaniel: That's a data race on @a... 23:51
Maybe we should make for always mean "serial"...
AlexDaniel jnthn: so are you saying that it is not a bug? 23:52
jnthn AlexDaniel: tbh, so little of .hyper/.race are really fleshed out/tested it's hard to say yet :)
AlexDaniel jnthn: imo for should be serial, yes 23:53
ely-se
.oO(make '↻' an alias for 'while')
or loop
AlexDaniel or 「redo」 23:54
or 「nextsame」, or…
skids ror
jnthn AlexDaniel: Unless you explicitly hyper for @a { } or so, yes
RabidGravy RARR
jnthn AlexDaniel: That's my leaning 23:55
We'll get those fleshed out a good bit more in the coming months.
There just wasn't time before 6.c
AlexDaniel jnthn: if I didn't mean it to be serial then I'd be using 「race」 I guess 23:56
in this particular example
23:58 Sgeo joined, aliyev joined