»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by masak on 28 November 2015.
hankache good night masak 00:00
00:00 n0tjack joined
hankache hi RabidGravy 00:00
RabidGravy erp 00:01
00:03 hankache left 00:04 spider-mario left 00:06 n0tjack left 00:07 telex left 00:08 telex joined 00:17 ShimmerFairy joined 00:19 stmuk_ joined 00:22 stmuk left 00:25 csd_ joined 00:26 Su-Shee left 00:30 Psyche^_ joined 00:33 RabidGravy left 00:34 Psyche^ left 00:36 geraud left 00:48 geraud joined 00:49 AlexDaniel left, Su-Shee joined
dalek kudo-star-daily: aab2a3d | coke++ | log/ (2 files):
today (automated commit)
00:55
01:02 n0tjack joined 01:07 n0tjack left 01:09 BenGoldberg joined
gtodd hmm is #RT114946 closeable "with discussoin" or does it need a lot of code changes ? 01:10
rt.perl.org/Public/Bug/Display.html?id=114946 function parameters aren't readonly *aliases* 01:11
01:12 skids joined
gtodd it seems like something that needs to be made consistent rather than a deep diving code fix but ... :-\ 01:12
01:17 yeahnoob joined 01:21 lustlife joined 01:25 zengargoyle left 01:27 zengargoyle joined 01:36 Khisanth left 01:40 Khisanth joined 01:42 herby_ joined
herby_ good evening, everyone! 01:42
for hobby purposes, does it matter what extension I use for my perl6 files?
diakopter howdy
herby_ the perl6intro site says I should use pl6, but i've also seen to use p6 and pm6 01:43
and for whatever reason, my vim setup doesn't syntax highlight pl6
diakopter doesn't matter much, but the module loaders will look for .pm if you have dependencies
herby_ ok, thanks! 01:44
ShimmerFairy Yeah, putting a 6 in there is just nice, and depends on your preference, like the difference between .h or .hpp or .h++ or ... :) 01:45
yoleaux 1 Dec 2015 14:58Z <[Coke]> ShimmerFairy: yes, some dupes are not collapsing yet; the Lue's will be combined at some point. the aliases are from the logs. they won't be in the final result, only the "preferred" name (the one listed first).
herby_ wow, ok. to test, i renamed my perl 6 script to .pm and it worked just fine 01:47
learn something new every day :)
01:50 Averna joined
herby_ looking at rosettacode for parsing xml: rosettacode.org/wiki/XML/Input#Perl_6 01:53
geraud hum... p6doc is behaving strangely this morning 01:54
herby_ does the perl6 example give anyone else an error? i copied it exactly, after installing xml, and getting an error
Method 'name' not found for invocant of class 'XML::Text'
not sure if its a bug in the code or a bug in my setup
diakopter how exactly did you install 'xml' 01:55
herby_ panda install XML
terminal stated it installed successfully
diakopter sounds like the example is out of date 01:56
herby_ hmmmm 01:58
01:58 scottj left 02:03 n0tjack joined
dalek : e512afe | ShimmerFairy++ | misc/perl6advent-2015/schedule:
Oh hey, I'm on the schedule!

Talking about Unicode seems like it'd be worthwhile, no? :)
02:06
02:08 n0tjack left
dalek : 95132a3 | ShimmerFairy++ | docs/feather/syn_index.html:
Update search on design documents to current domain

Funny enough, I've had this edit resting in mu for a long while now, it just was forgotten. Whoops.
02:08
02:08 herby_ left 02:09 Axord joined
gtodd doc.perl6.org/type/Parameter isn't the .params example at the beginning inccorrect/typo'ed ? 02:12
it should be: say $param.type; and not: say $sig.type; 02:13
02:14 kaare_ joined 02:15 dfcarpenterak left
[Coke] added all the maintainers of the original RFCs to the listing of users. 02:15
02:16 Ben_Goldberg joined
[Coke] up to 840 entries. 02:16
gtodd should people be trolling through the docs looks for little typos one at a time or trying to find lots at once ... 02:17
02:17 Averna left 02:18 BenGoldberg left
[Coke] get a commit bit and then you can fix them as you find them? 02:19
dalek c: 127f4e3 | raiph++ | doc/Type/Parameter.pod:
Typo'd code
raiph gtodd++ # 127f4e3 02:21
gtodd raiph: I was assuming the above was a typo :-D
02:22 dayangkun joined
gtodd [Coke]: oops I think I have one for docs ... I was just worried I'd create needless churn or silly pull request queue 02:22
or introduce new erroros :-D
like that ---^ 02:23
02:24 FROGGS_ joined, jojotus left 02:26 jojotus joined
raiph gtodd: a series of tiny commits will spontaneously generate a new operating system that produces sexy error messages? 02:26
02:27 Zoffix joined, FROGGS left
gtodd cool 02:27
[Coke] ... crap. Just found mu's AUTHORS file. 02:28
Zoffix :) 02:30
02:31 Actualeyes joined 02:38 Su-Shee_ joined
[Coke] on the plus side, it covers most of the nick-only people left. 02:38
ShimmerFairy finds it funny that mu has a misc directory :P 02:39
02:41 Su-Shee left
Zoffix Yo dawg 02:43
[Coke] If someone wants to help out on the name manging, converting mu's AUTHORS file to a CREDITS file would be a great help. 02:45
*name mangling
ShimmerFairy
.oO( g++-names AUTHORS -o CREDITS )
02:47
diakopter lol 02:48
geekosaur grammar Names { ... } 02:49
02:49 dfcarpenterak joined
TimToady I'm sitting here trying to figure out why the samemark tests are failing, and discover it's using say "Ɨ" as its mark carrier 02:50
m: say "Ɨ".ords
camelia rakudo-moar a4ca12: OUTPUT«(407)␤»
TimToady which doesn't decompose, duh 02:51
dalek : a622557 | ShimmerFairy++ | AUTHORS:
Just Say No to BOMs in UTF-8

Also fixed my entry since I noticed it.
ShimmerFairy m: say "Ɨ".NFC
camelia rakudo-moar a4ca12: OUTPUT«NFC:0x<0197>␤»
ShimmerFairy m: say "Ɨ".NFD
camelia rakudo-moar a4ca12: OUTPUT«NFD:0x<0197>␤»
ShimmerFairy m: say "Ɨ".NFKD 02:52
camelia rakudo-moar a4ca12: OUTPUT«NFKD:0x<0197>␤»
02:52 BenGoldberg_ joined
ShimmerFairy well then :) 02:52
TimToady ShimmerFairy: I also notice a rnddim entry in there somewhere
ShimmerFairy Ah, yeah, on line 451 of the gist. 02:53
I think it's also present in my ShimmerFairy line, it just also appears there.
btw, [Coke]++ for gathering up all the contributors :)
[Coke]: I could maybe take a quick attempt at AUTHORS->CREDITS for mu, is the CREDITS in rakudo the format you want? 02:54
02:54 Ben_Goldberg left
ShimmerFairy afk tho 03:00
03:01 kid51 left
lucs Can I today "use" Perl5 modules in my Perl6 code? 03:02
konobi blog.8thlight.com/colin-jones/2015...-slow.html 03:03
lucs ("use", or whatever it takes)
[Coke] ShimmerFairy: yes, same as rakudo or parrot's.
lucs: see Inline::Perl5
lucs [Coke]: Thanks.
konobi "Ask DTrace: Why are my tests so slow?"
03:03 kaare_ left
cognominal m: grammar G { token TOP { a }}; say G.parse('ba', :top(1)) 03:04
camelia rakudo-moar a4ca12: OUTPUT«Unexpected named parameter 'top' passed␤ in block <unit> at /tmp/vetv4qt0Mb:1␤␤»
03:04 n0tjack joined
cognominal not sure what I am doing wrong here. Will sleep on it. 03:04
Juerd Did something change to Str.encode? Apparently it no longer matches a signature of Buf 03:05
lucs (Whoops, Inline::Perl5 still uses @*INC)
cognominal method parse($target, :$rule = 'TOP', Capture() :$args = \(), Mu :$actions = Mu, *%opt) { # it should slurp extra-parameters ? 03:06
konobi am hoping that blog entry might help out with some questions about performance, etc.
lucs (or maybe not -- I'm going to bed, I'll figure it out tomorrow)
03:08 n0tjack left
konobi (especially good for ruling out odd things from the OS, or bad behaviour from libraries) 03:09
03:10 noganex joined
raiph m: grammar G { token TOP { a }}; say G.parse('ba', :rule(1)) # cognominal 03:11
camelia rakudo-moar a4ca12: OUTPUT«Method '1' not found for invocant of class 'G'␤ in block <unit> at /tmp/u5qMdI7TuS:1␤␤»
raiph m: grammar G { token TOP { a }}; say G.parse('ba', :rule(TOP)) # cognominal
camelia rakudo-moar a4ca12: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VEqVE_ay82␤Undeclared name:␤ TOP used at line 1␤␤»
03:12 noganex_ left
cognominal m: grammar G { token TOP { a }}; say G.parse('ba', :pos(1)) 03:19
camelia rakudo-moar a4ca12: OUTPUT«Unexpected named parameter 'pos' passed␤ in block <unit> at /tmp/2NX6ZJbAut:1␤␤»
raiph m: grammar G { token TOP { b }}; say G.subparse('ba', :rule('TOP')) # cognominal ( .parse has implicit ^ and $ anchors, .subparse just ^ )
camelia rakudo-moar a4ca12: OUTPUT«「b」␤»
cognominal I want to match at pos 1
sorry for the first post
Juerd I have a multi method whcih is basically "multi method foo { .bar }", and it works. But say($_) results in a mere "(Any)" 03:20
I don't understand why the .bar call works like self.bar here. Can't reproduce it in oneliners either.
diakopter Juerd: did your rakudobrew/panda heal? 03:21
Juerd What does that mean? 03:22
diakopter could you update them and try again
Juerd Oh, I did already update 03:23
raiph m: grammar G { token TOP { a }}; say G.subparse('ba', :1c) # cognominal
camelia rakudo-moar a4ca12: OUTPUT«「a」␤»
Juerd github.com/Juerd/p6-mqtt/blob/mast...#L125-L131
At the Amsterdam.PM meeting, lizmat pointed out that this shouldn't work 03:24
cognominal I thought the :pos(0) as slurped named parameter would have been passed to .!cursor_init # really need to sleep on it.
Juerd I think I agree that it shouldn't work. I had assumed that methods would set $_ to self, but they don't. But... then why the .publish still work?!
s/why/why does/
03:25 lustlife` joined
b2gills It could be set in the function that calls the method 03:28
03:29 lustlife left
Juerd But then it wouldn't print as "(Any)" when I do say $_ 03:29
[Coke] Juerd: do you wish to appear as "juerd" in the release announcement? 03:30
03:30 [Sno] joined
[Coke] I'm happy to change it to your full name. 03:30
Juerd And S06 says that keyword declared code blocks are born with undefined $_; only non-routine blocks get $_ aliased to the outer lexical scope.
[Coke]: Juerd Waalboer is okay. I wonder why my name would be in there. 03:31
[Coke] You've committed something or were mentioned somewhere in the last 15 years. If you really want I can try to find out where :) 03:32
03:32 sno left
Juerd Oh, haha. I forgot that this month was special :) 03:33
Oohhhh. Found out something curious about the laggy data in the IO::Socket::Async thing, that may lead to a better insight 03:34
[Coke] updated. thanks.
Juerd This may eventually make my Net::MQTT usable
And it may have been my own mistake too 03:35
Even though several people looked at the code and found nothing wrong.
Let's see if I can figure this out :)
Yep, Fixed it. 03:37
03:37 vendethiel joined
Juerd feels ashamed for a newbie mistake 03:37
Buffered data, but only took one thing from the buffer, each time the buffer was appended to. But it could get multiple things appended at once. So it started lagging behind.
03:39 sufrostico left
Juerd timotimo: github.com/Juerd/p6-mqtt/commit/e8...95a856abe1 # Fixed it. Silly mistake... :( 03:40
03:42 lustlife` left 03:46 csd_ left
MadcapJake Just had a curious thought, not sure if anyone is in here right now, but where did the `++` thing come from? Like when you are praising someone's work or whatnot. I've only ever seen that in this irc channel. 03:55
actually all over Perl 6 communications, I've seen it
skids There used to be a karma bot that kept score when it saw username++
diakopter now your karma is only virtually counted 03:56
Juerd MadcapJake: A long, long time ago, in a ga... There used to be karma bots that actually kept score when you did word++ or word--.
Everything was karma'ed. People, channels, things.
And C had enormous karma in every channel that had a karma bot :)
MadcapJake haha wow, that's actually really cool, did it go the way of the jedi--er, dinosaurs? 03:57
Juerd There may still be channels that have karmabots. And who knows, maybe someone's silently still tracking karma right here, today :D
MadcapJake lol
flussence the bot disappeared and yoleaux replaced it iirc
diakopter karma jnthn 03:58
.karma jnthn
MadcapJake .help
yoleaux MadcapJake: I'm yoleaux. Type .commands to see what I can do, or see dpk.io/yoleaux for a quick guide.
Juerd Most karma bots have a syntax where parens can be used to delimit the topic if it contains whitespace or other non-word-characters: (foo bar)++
diakopter ?karma jnthn
MadcapJake .moon 03:59
yoleaux Last Quarter (0.697)
Juerd MadcapJake: It was completely normal++ to just have karma in regular sentences.
MadcapJake that's really fascinating
Juerd loved karma bots, but not the karma wars that happened.
Juerd loved (karma bots)++, but not the (karma wars)-- that happened. 04:00
04:00 vendethiel left 04:05 n0tjack joined, BenGoldberg joined 04:07 BenGoldberg_ left 04:09 n0tjack left
MadcapJake .rfc 10 04:10
yoleaux RFC 10 - Documentation conventions: tools.ietf.org/html/rfc10
MadcapJake there should be a `.syn` command for Perl6 synopses 04:11
.ety synopsis
yoleaux synopsis (n.): "1610s, "a general view, an outline," from Late Latin synopsis "a synopsis," from Greek synopsis "a general view," literally "a seeing altogether, a seeing all at once," from syn- "together" (see syn-) + opsis "sight, appearance," from PIE * …" — etymonline.com/index.php?term=synopsis
MadcapJake .mangle optimized for fun 04:12
yoleaux Funny Optimization
Juerd MadcapJake: p3rl.org/S01 etc
MadcapJake "Larry's First Law of Language Redesign: Everyone wants the colon." lol 04:14
.mangle Everyone wants the colon
yoleaux Everyone wants to Colon
MadcapJake what a weird command lol
konobi Juerd: howdy 04:16
Juerd Hello
konobi long times
MadcapJake .botsnack
yoleaux :D
synbot6 om nom nom
Juerd konobi: Apparently, 'cause I don't remember you. Sorry! :( 04:17
04:18 yqt left
konobi Juerd: catalyst/moose 04:19
Juerd I hate to admit it, but I don't think I've ever used those.
konobi and a yapc or so
Juerd YAPCs I've been to though :)
konobi and ye olde perl irc 04:20
Juerd Anyhow, hi there! :) 04:21
konobi was many many moons ago 04:22
Juerd How do you stop a Supply.interval? 04:23
MadcapJake don't you have to use Supplier to do that now 04:33
skids No just to create a raw Supply IRRC. 04:37
MadcapJake m: say Supply.^methods
camelia rakudo-moar a4ca12: OUTPUT«(new BUILD live serial tap act on-demand from-list interval serialize sanitize on-close map grep schedule-on start stable delayed do flat merge reduce produce migrate classify categorize Supply Channel list Promise wait unique squish rotor batch lines word…»
MadcapJake m: say Supplier.^methods 04:38
camelia rakudo-moar a4ca12: OUTPUT«(new BUILD emit done quit Supply unsanitized-supply)␤»
dj_goku .tell timotimo I see you made some recent commits here: github.com/tadzik/panda/tree/maste...JSON__Fast is there a reason this is in panda, but you have a separate repo? they are out of sync btw. 04:42
yoleaux dj_goku: I'll pass your message to timotimo.
Juerd Hmmm, huge memory leaks :( 04:43
MadcapJake hopes there is an advent article on how to use the new Supplier/Supply 04:45
skids Juerd: if S17 is up to date on Supply.interval, since it is an "on-demand" supply it stops when you .close the .tap that started it (the instance is really the Tap and the Supply is serving as a factory of sorts)
(Which is different from live supplies.)
Juerd Ah, I didn't know that the tap itself was a thing 04:46
MadcapJake: Basically, you use Supplier like you used Supply before, except for tapping, which now requires an intermediate call to the supplier's Supply method: $supplier = Supplier.new; $supplier.Supply.tap: { ... }; $supplier.emit: ...; 04:47
Think of the supplier as 'write' and the supply as 'read'. I don't know if this is accurate but it works for me :) 04:48
skids: I don't really understand the difference between ondemand and live. Do you know where I can read about that?
gfldex Juerd: github.com/rakudo/rakudo/blob/nom/.../Supply.pm 04:49
skids Well, there is somewhat out-of-date S17 stuff and jnthn's S17 gist gist.github.com/jnthn/a56fd4a22e7c43080078
Live supplies (virtually) start generating events when they are created, whether or not anything is listening, and things can start or stop listening by tapping them. 04:51
Juerd skids: That assumes the reader already knows the difference :)
Oh, an on-demand supply is gone if there is no tap left?
And is it a no-op until it has a tap?
skids on-demand supplies create a new thing for every .tap, so you can produce the same sequence for different taps at different times. 04:52
Juerd I think I get it 04:53
skids m: my $fl = Supply.from-list(^3); my $t1 = $fl.tap({ "T1 $_".say }); my $t2 = $fl.tap({ "T2 $_".say }); sleep 1; 04:56
camelia rakudo-moar a4ca12: OUTPUT«T1 0␤T1 1␤T1 2␤T2 0␤T2 1␤T2 2␤»
skids The mind-bender is .tap versus .do versus .act 04:57
Juerd 6am here, I'm off to bed. Maybe I'll understand things better after some sleep :)
Thanks though :)
uruwi_ Hello 05:03
Quick question.
05:03 mr-foobar left
uruwi_ Equivalent of cmd %~dpf0 in bash? 05:03
05:06 n0tjack joined
dj_goku uruwi_: is that current working dir of script on windows? 05:08
uruwi_: or is it the complete path of the script? 05:10
05:11 n0tjack left
dj_goku uruwi_: my guess is which so: `which which` 05:11
uruwi_ According to a reference: 05:12
It removes any quotes and gives the full path to the running program. 05:14
(actually I tried it myself) 05:17
dj_goku uruwi_: is there a reason you need bash? :D
stackoverflow.com/questions/4774054...-to-itself
05:24 BenGoldberg left 05:29 dj_goku left 05:35 Su-Shee_ is now known as Su-Shee 05:39 khw left
MadcapJake Juerd++ # thanks for the explanation on Supply/Supplier :) 05:40
skids m: say $*PROGRAM-NAME; say $*SPEC.catdir($*PROGRAM-NAME.IO.dirname, "other_file_in_same_dir"); say $*EXECUTABLE; 05:43
camelia rakudo-moar a4ca12: OUTPUT«/tmp/f22rbdSXFJ␤/tmp/other_file_in_same_dir␤"./rakudo-m-inst/bin/perl6-m".IO␤»
uruwi_ Hmm, I'm trying to get Perl6 to return an IO::Spec::Cygwin for $*SPEC, if that even ever happens. 05:44
05:45 geraud left 05:47 dj_goku joined 05:52 skids left 05:53 FROGGS_ left 06:07 n0tjack joined, csd_ joined 06:11 n0tjack left 06:12 csd_ left
hahainternet gfldex: a hell of an opening post for this year, jesus i need to re-read a few times i think 06:38
gfldex is the need to re-read a good thing? :->
hahainternet i think so, it's complicated but succinct and well explained 06:40
i'll let you know when i'm sure i know what's going on :D
gfldex well, it took me a while to write it. so it's just fair :)
hahainternet i suppose the only criticism i have is that it's a few paragraphs down where you really explain what you're demonstrating 06:41
also 'buildin' vs 'built-in' may be a minor error
uruwi_ Any reason why Find::Bundled isn't installable from panda?
hahainternet i'll let you know if i spot any others
"The type of the returned value if the type of $c-value" s/if/is probably 06:43
"force binding on it’s returned value" possessive its has no apostrophe
"does what is sayed on the tin" said rather than sayed 06:44
those are the only obvious ones i saw with a quick glance through 06:46
timotimo Juerd: i'm very happy it was such a silly mistake and not our async sockets being super wrong
yoleaux 04:42Z <dj_goku> timotimo: I see you made some recent commits here: github.com/tadzik/panda/tree/maste...JSON__Fast is there a reason this is in panda, but you have a separate repo? they are out of sync btw.
gfldex hahainternet: thanks, i fix it 06:47
hahainternet gfldex: no problem, if i can't help with code at least i can spot these :p 06:48
gfldex binding is one of those perl6 topics where you need to know what's going on under the hood to understand it
06:58 quester joined 06:59 Akagi201 joined 07:08 n0tjack joined 07:12 n0tjack left 07:13 sno joined, kjs_ joined, [Sno] left 07:34 domidumont joined
timotimo whew, caught up with backlog just in time to go AFK again 07:37
07:38 domidumont left
timotimo .tell dj_goku panda ships with JSON::Fast so that it can use it before it is able to install stuff from the ecosystem by itself; i asked tadzik to wait with updating pandas copy because SEQ was just about to get deprecated and that would have broken panda 07:39
yoleaux timotimo: I'll pass your message to dj_goku.
timotimo .tell dj_goku when all people can be assumed to have a new-enough rakudo, i'll tell tadzik to update JSON::Fast again so that the speed increase can be felt far and wide
yoleaux timotimo: I'll pass your message to dj_goku.
07:40 domidumont joined 07:42 molaf joined 07:46 sno left 07:47 CIAvash joined
dalek Iish: df1ce31 | hiroraba++ | lib/DBDish/TestMock/Connection.pm6:
Fixed failed test 05-mock.t
07:47
Iish: 5d5d012 | moritz++ | lib/DBDish/TestMock/Connection.pm6:
Merge pull request #36 from hiroraba/master

Fixed failed test 05-mock.t
moritz \o 07:48
travis-ci.org/perl6/DBIish/builds/94321391 "Cannot find method 'find_symbol'"
any idea what's going on here?
07:54 kjs_ left 07:57 FROGGS joined, kjs_ joined 07:58 mr-foobar joined 08:02 _mg_ joined
nine .tell Zoffix regarding gist.github.com/zoffixznet/7cd03ed84dbbb4db8fa3 you just mistyped MIME::Types. The MIME is all capitals! 08:06
yoleaux nine: I'll pass your message to Zoffix.
08:08 n0tjack joined 08:09 darutoko joined 08:11 guest______ joined
guest______ p6: say 3; 08:11
camelia rakudo-moar a4ca12: OUTPUT«3␤»
guest______ my @a = [0], -> @p { 0,@p Z+ @p,0;} .. * ; say @a[1]; 08:12
p6: my @a = [0], -> @p { 0,@p Z+ @p,0;} .. * ; say @a[1]; 08:13
camelia rakudo-moar a4ca12: OUTPUT«-> @p { #`(Block|76810808) ... }..Inf␤»
08:13 n0tjack left
guest______ p6: my @a = [1], -> @p { 0,@p Z+ @p,0;} .. * ; say @a[1]; 08:13
camelia rakudo-moar a4ca12: OUTPUT«-> @p { #`(Block|79460920) ... }..Inf␤»
guest______ p6: my @a = [1], -> @p { 0,@p Z+ @p,0;} ... * ; say @a[1]; 08:14
camelia rakudo-moar a4ca12: OUTPUT«(1 1)␤»
guest______ p6: my @a = [1], -> @p { 0,@p Z+ @p,0;} ... * ; say @a[2];
camelia rakudo-moar a4ca12: OUTPUT«===SORRY!===␤This Seq has already been iterated, and its values consumed␤(you might solve this by addding .cache on usages of the Seq, or␤by assigning the Seq into an array)␤»
jdv79 "The default for sub and method parameters is copy" - is that correct?
08:14 sno joined 08:15 bjz joined
guest______ p6: my @a = [1], -> @p { [0,@p Z+ @p,0] } ... * ; say @a[2]; 08:15
camelia rakudo-moar a4ca12: OUTPUT«[2 2]␤»
guest______ p6: my @a = [1], -> @p { [0,@p Z+ @p,0] } ... * ; say @a[1] 08:16
camelia rakudo-moar a4ca12: OUTPUT«[1 1]␤»
guest______ p6: my @a = [1], -> @p { [0,@p Z+ @p,0] } ... * ; say @a[2]
camelia rakudo-moar a4ca12: OUTPUT«[2 2]␤»
guest______ p6: my @a = [1], -> @p { [0,@p Z+ @p,0] } ... * ; say @a[2]
camelia rakudo-moar a4ca12: OUTPUT«[2 2]␤»
08:16 molaf left
guest______ p6: my @a = [1], -> @p { [0,@p Z+ @p,0] } ... * ; 08:17
camelia ( no output )
guest______ @a[0]
p6: say @a[0]
camelia rakudo-moar a4ca12: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tmpfile␤Variable '@a' is not declared␤at /tmp/tmpfile:1␤------> 3say 7⏏5@a[0]␤»
guest______ p6: my @a = [1], -> @p { [0,@p Z+ @p,0] } ... * ; say @[3]
camelia rakudo-moar a4ca12: OUTPUT«[3]␤»
guest______ p6: my @a = [1], -> @p { [0,@p Z+ @p,0] } ... * ; say @a[3]
camelia rakudo-moar a4ca12: OUTPUT«[2 2]␤»
guest______ p6: my @a; @a = [1]; say 0,@a Z+ @a,0 08:18
camelia rakudo-moar a4ca12: OUTPUT«(1 1)␤»
guest______ p6: my @a; @a = (1); say 0,@a Z+ @a,0
camelia rakudo-moar a4ca12: OUTPUT«(1 1)␤»
guest______ p6: my @a; @a = (1,1); say 0,@a Z+ @a,0
camelia rakudo-moar a4ca12: OUTPUT«(2 2)␤»
08:18 molaf joined 08:19 bjz_ joined
guest______ p6: my @a; @a = (1,1); say 0,@a 08:19
camelia rakudo-moar a4ca12: OUTPUT«0[1 1]␤»
guest______ p6: my @a; @a = [1,1]; say 0,@a
camelia rakudo-moar a4ca12: OUTPUT«0[1 1]␤»
guest______ p6: my @a; @a = [1,1]; say 0,!@a
camelia rakudo-moar a4ca12: OUTPUT«0False␤»
guest______ p6: my @a; @a = [1,1]; say 0,|@a
camelia rakudo-moar a4ca12: OUTPUT«011␤»
TimToady m: my @a; @a = (1,1); say 0,|@a Z+ |@a,0
camelia rakudo-moar a4ca12: OUTPUT«(1 2 1)␤»
guest______ p6: my @a; @a = [1,1]; say 0,|@a Z+ |@a,0
camelia rakudo-moar a4ca12: OUTPUT«(1 2 1)␤»
08:20 bjz left
guest______ p6: my @a; @a = [1,2,1]; say 0,|@a Z+ |@a,0 08:20
camelia rakudo-moar a4ca12: OUTPUT«(1 3 3 1)␤»
guest______ p6: my @a = [1], -> @p { [0,|@p Z+ |@p,0] } ... * ; say @a[3]
camelia rakudo-moar a4ca12: OUTPUT«[1 3 3 1]␤»
guest______ p6: my @a = [1], -> @p { [0,|@p Z+ |@p,0] } ... * ; say @a[3]
camelia rakudo-moar a4ca12: OUTPUT«[1 3 3 1]␤»
guest______ p6: my @a = [1], -> @p { [0,|@p Z+ |@p,0] } ... * ; say @a[4]
camelia rakudo-moar a4ca12: OUTPUT«[1 4 6 4 1]␤»
nine guest______: please /msg camelia for just playing around
TimToady also see rosettacode.org/wiki/Pascal's_triangle#Perl_6 08:21
FROGGS jdv79: no
jdv79: at least dont dont get what 'is copy' does, you dont get a writeable container
08:22 RabidGravy joined, ely-se joined
RabidGravy marning 08:23
guest______ thanks nine, @TimToady 08:25
TimToady has samemark and :mm working, but is too tired to finish the samespace/samecase/samemark refactor tonight (the current code doesn't do word-by-word correctly), will look at it again tomorrow 08:28
08:28 guest______ left
TimToady 😴 08:29
stmuk_ .tell Zoffix Recent Blog Posts on perl6.org is blank
yoleaux stmuk_: I'll pass your message to Zoffix.
jdv79 FROGGS: its in today's advent...
dalek ast: 8895d82 | LLFourn++ | S12-meta/exporthow.t:
add fudged EXPORTHOW EVAL tests

replace bogus test that should have failed with two fudged tests that actually do.
08:35
08:35 zakharyas joined
FROGGS gnight TimToady 08:36
jdv79: well, it is correct in a sense that you get a copy, though just not a writeable one :o)
08:37 abraxxa joined 08:39 domidumont left
[Tux] test 50000 23.650 23.537 08:39
test-t 50000 17.340 17.228
csv-parser 50000 26.643 26.531
08:40 pdcawley_ joined
FROGGS [Tux]: do you know that probably nobody knows what that means? 08:41
at least *I* dont know if it faster or slower now
[Tux] many have asked, so the people that care by now do :)
tux.nl/Talks/CSV6/speed4.html
17.34 is considered good 08:42
dalek ast: b7b486b | LLFourn++ | S12-meta/exporthow.t:
import the EXPORTHOW declarators for EVAL tests
[Tux] (for the time being)
08:42 pdcawley left
ely-se adventure calendar 08:43
[Tux] better even: 17.34 is the fastest *registered* timing ever 08:44
I have seen a high 16 once, but that has not been carved in the logs
at least it is a speedup factor of 14.7 since october 2014 :) 08:45
stmuk_ if anyone is desperate for a Advent calendar spot then they can have one of mine!
RabidGravy yeah, I gave one to autarch :) 08:47
FROGGS [Tux]: :o)
[Tux]: that's the information that ppl on this channel help to understand these timings
jdv79 gfldex: the "is copy" part of your advent post is wrong. default is ro. 08:50
gfldex jdv79: thanks, i fixed it 08:52
llfourn [Tux]: what is test and test-t? 08:53
08:54 csd_ joined
cognominal thx raiph++, did not notice that !cursor_init did not support :$pos and :$continue, probably a bug. 08:54
08:54 _mg_ left
[Tux] test is a reference for test-t: that is a CSV parser with no options. It was the starting point for test-t. 08:54
test-t is Text::CSV parsing 10000 lines of CSV with 5 fields each 08:55
llfourn [Tux]: thanks. Can I see the source for these tests or any more metrics? 08:56
I'm doing a talk on p6 for local sydney.pm so looking for some content reletated to speed improvement :)
[Tux] yes: github.com/Tux/CSV
tux.nl/Talks/CSV6/speed{,1,2,3,4}.html 08:57
timotimo llfourn, how much time left until that talk?
llfourn timotimo: it's on 16th 08:58
so plenty :D
[Tux]: thanks!
timotimo i could run some benchmarks for you from japhb/perl6-bench
left my desktop at home free for stuff like that
08:58 csd_ left
llfourn timotimo: that would be sweet! 08:59
timotimo ask me again in 4 hours?
llfourn timotimo: will do :)
timotimo actually i have a calendar that can do such a thing
k 09:00
appointment time!
llfourn thanks. I will remind you anyway :D 09:02
09:06 zakharyas left 09:09 [TuxCM] left, n0tjack joined, csd_ joined
RabidGravy ooh I just provoked 2015.11-163-g2897239 into a coredunp 09:13
09:13 Deepak joined, n0tjack left 09:14 kjs_ left, csd_ left 09:15 snarkyboojum joined 09:16 Deepak left 09:17 mdaq joined 09:18 rindolf joined 09:20 quester left
grondilu panda still broken? 09:22
09:23 lizmat joined
lizmat .botsnack 09:23
yoleaux :D
synbot6 om nom nom
09:23 Su-Shee_ joined 09:24 Su-Shee left 09:25 kjs_ joined 09:28 Su-Shee_ left 09:29 Su-Shee joined
DrForr Morning. All the hype finally getting to you? :) 09:29
09:29 _mg_ joined
DrForr looks sideways at snarkyboojum and wonders if it could be... 09:30
moritz the advent calendar had 980 visitors yesterday 09:31
nine grondilu: panda should be doing just fine
DrForr Niiice.
09:32 Skarsnik joined, yeahnoob left 09:33 snarkyboojum_ joined
snarkyboojum_ Web IRC weirdness 09:34
"If it could be", DrForr? :) 09:35
09:35 snarkyboojum left 09:36 telex left 09:38 cognominal left, telex joined
RabidGravy Hmm it doesn't segfault if all the (several thousand) tests pass 09:40
09:41 espadrine joined
RabidGravy maybe, testing *every possible value* isn't necessary now I know it works 09:42
09:44 bakedb joined, rurban joined
RabidGravy adds a "last if Bool.pick" in an inner loop 09:46
DrForr Just wondering if I knew you from somewhere else :) 09:47
09:48 Su-Shee left
snarkyboojum_ Where DrForr? 09:49
DrForr MAGnet for starters...
snarkyboojum_ probably not me... 09:50
09:50 Su-Shee joined
snarkyboojum_ I used to hang out here a bit a while ago though 09:50
RabidGravy is MAGnet still going?
DrForr Cool. Not stalking, just curious. 09:51
snarkyboojum_ :)
09:58 Su-Shee_ joined, Su-Shee left, Su-Shee_ is now known as Su-Shee 10:01 matt_ joined, matt_ is now known as Guest52175 10:07 domidumont joined 10:08 rurban left 10:09 dakkar joined 10:10 n0tjack joined
lizmat wlll be mostly offline until Saturday 10:12
10:13 lizmat left 10:15 n0tjack left
mrf_ gfldex: you able to remove some of the confusion in www.reddit.com/r/perl/comments/3v0..._calendar/ 10:17
grondilu failed install panda. What am I doing wrong? gist.github.com/grondilu/cab11f6a3d00b6e654ba 10:19
gfldex mrf_: do i get free hugs when i sign up on reddit? :-> 10:25
DrForr Careful what you ask for :)
mrf_ DrForr: :p
gfldex: Is that worth the lose of your immortal soul
gfldex i will do that later today 10:26
mrf_ gfldex: no worries.
10:27 pdcawley_ left
nine grondilu: how up to date is your panda? 10:28
10:31 dayangkun left
mrf_ is t/04-nativecall/11-cpp.t in rakudo a know failing test? 10:32
grondilu nine: I4ve just pulled it
las commit on Tue Dec 1 22:24:23 2015 +0100
oh I see on the previous commit: "Support --force flag to get around "is already installed" check" 10:33
grondilu tries that
10:33 kjs_ left 10:34 [TuxCM] joined
mrf_ kebab-case seems to be becoming fairly normal in p6 afaict 10:34
unless I have only seen a specific subset of code. Does anyone have a preference
10:35 pdcawley joined
grondilu failed. bootsrap.pl did not accept --force 10:35
nine grondilu: bootstrap.pl should already use --force to install panda
10:36 raiph left
grondilu well, as you can see in my gist I still get the "already install" death 10:37
*ed
10:38 kjs_ joined, [TuxCM] left 10:39 ely-se left, weihan joined 10:40 Guest52175 is now known as matt_ 10:41 zakharyas joined
Ulti "Testing Pod::Coverage" hangs forever in the panda build latest Rakudo from 5 mins ago 10:46
though CPU is 100% so might just be mega slow
nine Ulti: there's an open github issue on that in Pod::Coverage 10:47
Ulti okedoke
nine Looks like some endless recursion
Ulti I'll stop melting my macbook then :)
mrf_ grondilu: I was able to to a reinstall of panda on latest pull of rakudo. Realise thats not overly helpful buts its a data point 10:48
I am however getting "Could not find Shell::Command' errors when I try and use it. 10:49
10:50 moises joined 10:53 Perl6christmas joined
RabidGravy flatmap, I wanted flatmap 10:56
Ulti so turns out Pod::Coverage is now so core to most of the ecosystem its become impossible to install anything without it, is that in Star as a module identified as needing to work? 10:58
I +1 for it being included if it isn't alreadya
Ulti goes to see if he can fix this open issue 10:59
nine grondilu: I now know what's wrong! 11:00
grondilu: panda is loading outdated precompiled versions of Panda's own modules and those do not yet contain the --force support.
Skarsnik curli the breaker of installation
and Hello :) 11:01
nine I guess it's the bug I want to fix this evening.
RabidGravy It didn't work for me when I tried it, so that's at least 5% of the ecosystem that doesn't use it ;-) 11:02
Zoffix .botsnack
yoleaux 08:06Z <nine> Zoffix: regarding gist.github.com/zoffixznet/7cd03ed84dbbb4db8fa3 you just mistyped MIME::Types. The MIME is all capitals!
synbot6 om nom nom
yoleaux :D
08:29Z <stmuk_> Zoffix: Recent Blog Posts on perl6.org is blank
Zoffix stmuk_, You gotta be kidding me. This is what I get from Google now: "/* "responseDetails": "This API is no longer available."
11:02 Su-Shee_ joined 11:03 _mg_ left
RabidGravy bad Google 11:04
11:05 Su-Shee left
Zoffix I'm kinda thinking it's some sort of a glitch. Other sites show the same error. I see an article posted on May 15 talking about the API and I don't see any posts saying Google is discontinuing the service 11:05
"This API is officially deprecated".. k, I'll try another one later today 11:07
TEttinger what API is this? 11:10
Ulti no obvious recurse bugs I can see in Pod::Coverage::Full.parse looks like something scary in the meta model methods has changed that introduced an infinite recursive case, which is beyond me to debug by eye :'( 11:11
TEttinger (when google deprecates stuff they mean it)
Zoffix RSS Feed developers.google.com/feed/
11:11 n0tjack joined
TEttinger google just nuked google translate API 11:11
well, like a year ago
11:12 Su-Shee_ left, Su-Shee joined
Ulti before that they made it not free 11:13
unless thats what you mean
Zoffix We'll make our own API! With blackjack and hookers!
mrf_ Is anyone else getting t/04-nativecall/11-cpp.t failing on latest pull of rakudo when running make test.
Perl6christmas why YAPC are not as popular as PyCon and RubyCon? May be we need to change the name to PerlCon !! 11:14
11:14 lucasb joined
Perl6christmas PerlCon sounds great!! 11:14
Zoffix :/
lucs How much should I worry, after just having cloned and rebuilt rakudo from scratch, about this test error?: "t/04-nativecall/11-cpp.t ............. Dubious, test returned 255 (wstat 65280, 0xff00) Failed 5/21 subtests" 11:15
mrf_ lucs: I am getting the same error
TEttinger blog.superfeedr.com/google-feed-api-alternative/
11:15 n0tjack left
Skarsnik hm 11:16
mrf_ gist.github.com/ungrim97/ce323d11137f7beb7636 <-- t/04-nativecall/11-cpp.t failure
Skarsnik do you have a c++ compiler? (I don't remember if it's skipped or not
lucs Pretty sure I do. 11:17
mrf_ Skarsnik: that gist shows teh error
11:17 Su-Shee_ joined
mrf_ its that last test (line 8 of the gist) that fails 11:17
11:19 Su-Shee left
lucasb It seems there was some changes to NativeCall::Types yesterday, but I don't know if that's related 11:21
ilmari r: say 42 >> 64 11:25
camelia rakudo-moar a4ca12, rakudo-jvm e3c591: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tmpfile␤Unsupported use of >> to do right shift; in Perl 6 please use +> or ~>␤at /tmp/tmpfile:1␤------> 3say 42 >>7⏏5 64␤»
ilmari r: say 42 +> 64
camelia rakudo-moar a4ca12, rakudo-jvm e3c591: OUTPUT«0␤»
Skarsnik it's maybe this change the culprit
- my role TypedPointer[::TValue = void] is Pointer is repr('CPointer') {
+ my role TypedPointer[::TValue] {
mrf_ Skarsnik: that looks likely 11:26
11:27 kaare_ joined 11:28 rurban joined
ilmari r: my int $x = 64; say $x +> $x 11:28
camelia rakudo-moar a4ca12, rakudo-jvm e3c591: OUTPUT«64␤»
11:32 Perl6christmas left, hankache joined
hankache Hello #perl6 11:33
mrf_ .tell arnsholt test t/04-nativecall/11-cpp.t and it is possibly related to your commit 518b46feb9. Can you elaborate on whether the test needs to be altered? 11:35
yoleaux mrf_: I'll pass your message to arnsholt.
11:37 kid51 joined
hankache Quick question related to file extensions: 11:38
Is it .p6 or .pl6?
lucasb since new people are expect for the end of the year, I would suggest to include some advice in the channel's topic like "Do not use the evalbot as your personal REPL, only use it to show something to the rest of the channel", or something like that 11:39
lucs hankache: After minutes of deliberation with myself, I concluded: .pm -> .pm6, so .pl -> .pl6
Zoffix It's the 4th time I see a question about file extensions in the last 3 days here and on Hackernews 11:40
hankache lucs: this is what I thought.
lucs But both seem to be used, so, eh.
mrf_ now to get prove to understand .t6 :D
Zoffix :P
mrf_ yeah both seem used equally. I prefer pl6 for ^ reasons
hankache Zoffix: I saw a comment on HN. In the tutorial I said .pl6 but someone commented that vim only recognize p6 11:42
11:42 kid51 left
nine grondilu: oh, the bug is more devious than I thought! panda's bootstrap uses the installed Panda instead of the one you're trying to install because it puts %*CUSTOM_LIB<site> to the front of $PERL6LIB to force installation and precompilation there. Of course that also means that installed modules will be loaded. 11:42
mrf_ hankache: taht is true
Ulti in theory .pl and .pm should be fine since both perls know about use v6;
mrf_ of my vim anyway
Ulti but then you must put use v6; at the top of everything which is gross 11:43
hankache Should I keep it or change it to p6. I do not want to mislead people
lucs hankache: Um, my Vim recognizes .pl6, and if it didn't, I would make it.
11:43 ely-se joined
lucs (maybe I did make it) 11:43
11:44 rurban left
Ulti I've been using pl6 and pm6 11:44
hankache lucs good point. I like .pl6 11:45
11:45 _mg_ joined
mrf_ lucs: I think you made it. Would be nice if we can get that added as a default to vim 11:45
hankache Just making sure if there's some kind of consensus over extensions
FROGGS Skarsnik: which commit changed this line?
hankache Ok so pm6 pl6 11:46
Zoffix FROGGS, 518b46feb9 ?
hankache Pod6?
lucs FROGGS: 518b46feb9ae179cf7a73220673da5b9fbb01016
FROGGS uhh, I see
Ulti hankache might be worth seeing what the consensus in the ecosystem is
Zoffix And then add it to the FAQ
11:47 _mg_ left
Ulti I suspect people with a lot of p5 experience tend to pm6 and pl6 just because their eyes are used to .pl 11:47
Zoffix TBH, I'm not even sure what extensions I've used for scripts.
And the answer is... No extensions! :) github.com/zoffixznet/perl6-App-No...master/bin 11:48
mrf_ will submit a vim patch to add pl6 as perl6 format 11:49
11:50 dfcarpenterak left
hankache mrf_ ++ 11:50
lucs mrf_: Suggest .p6 too? (if it isn't already)
11:50 TEttinger left
mrf_ lucs: p6 is there as the default as is pm6. 11:51
Any other whilst I am at it
t6?
lol .pl is for both perl and prolog in vim :D 11:52
11:53 _mg_ joined
lucs mrf_: Right, thanks. 11:53
Woodi is .v6 taken ? :) 11:54
hankache mrf_ pod6
11:55 kid51 joined
mrf_ .pod maps to pod. Can add .pod6 as an ft of pod6 if thats sane 11:55
RabidGravy for reference I tend not to use a suffix at all for programs
mrf_ RabidGravy: I think thats normal for installed scripts/apps but not for other scripts. 11:56
ShimmerFairy mrf_: if .pod maps to a special Pod mode, then mapping .pod6 to that wouldn't be helpful :)
lucs Reminds me of Molson breweries who used to sell the exact same beer under the name "Canadian" outside Québec, and some other name in Québec, sure of the fact that drinkers of one would never touch the other, so no one would notice (and they didn't).
mrf_ Woodi: nop
ShimmerFairy (it'd be like trying to highlight Perl 6 with a P5 highlighter) 11:57
lucs (re. the .pl extension)
mrf_ ShimmerFairy: It maps to a filetype of pod (for syntax etc) so maping pod6 to pod6 filetype would owrk
hankache Specially if you want syntax highlighting to work out of the box
ShimmerFairy ah, ok :)
dalek : 9b06c81 | (Steve Mynott)++ | misc/perl6advent-2015/schedule:
free up one of my slots
11:58
lucs Woodi: What's .v6 for?
DrForr I highlight mine with marker pens. Makes a mess out of the screen, but that's why I have the plastic taped up.
RabidGravy :)
11:58 ely-se left, hankache left
mrf_ right I have added pod6 and pl6 should do for now. May add .t => perl and .t6 => perl6 as a seperate commit 11:59
lucs FROGGS: Is it the code or the test that needs repair? 12:01
(if the latter, I'll go ahead and install) 12:02
12:02 ab6tract joined, _mg_ left 12:03 kjs_ left
Woodi lucs: in case no one likes .pm6... 12:04
FROGGS lucs: the code
Woodi ..or .pl6
lucs FROGGS: Woopsie, okay, thanks.
Woodi: Oh :)
mrf_ github.com/vim/vim/pull/511 12:05
12:05 lucasb left
lucs Oh, Vim is git-based now? Cool. 12:05
ab6tract o/ #perl6 !
stmuk_ yeah they moved from hg a few months back 12:06
mrf_ lucs: yeah. Was surpised
ab6tract deepak++ raised an interesting point about potential filesystem encodings
i'm a bit surprised that it would not just get handled transparently at the OS layer 12:08
12:09 Su-Shee_ is now known as Su-Shee
ab6tract but it does point to a small issue with NFG.. i though NFG was a in internal representation that would then decompose out to the "right" thing 12:09
Skarsnik There is lot of usecase not directly on IO. Like running an executable 12:10
ab6tract if it's lossy, then it feels like we've broken
Skarsnik: but running an executable is done through io ...
anyway, i think it's an important wart to remove
if jnthn++ has any ideas i wouldn't mind trying to hack a branch 12:11
Skarsnik I mean outside the obvious open $filename;
ab6tract Skarsnik: gotcha
timotimo um
why do people think we have a problem with filenames and such? 12:12
12:12 n0tjack joined
Skarsnik I had issue with a qt progam when passing filepath as argument to another executable (using gtk) when I encounter stuff like é on Windows 12:12
ab6tract timotimo: www.deepakg.com/prog/2010/09/unicod...ilesystem/ 12:13
timotimo gfldex: if you put a $ into a signature, it doesn't make it a state variable
gfldex timotimo: what does it make it then?
timotimo gfldex: just an anonymous variable 12:14
ab6tract timotimo: also irclog.perlgeek.de/perl6/2015-12-01#i_11637359
gfldex i shall correct
timotimo we have the utf8-c8 encoding that round-trips invalid utf8 that you may find in filenames while still allowing us to have files that are utf8 be cleanly readable
Skarsnik timotimo, someone posted un example where a ls showed 2 file named 'filé' because there was a diff in the utf8 encoding, and loosing some codebyte could make you open the wrong file 12:15
12:16 n0tjack left
timotimo m: "hellö".NFD.perl.say; "hellö".NFC.perl.say 12:16
camelia rakudo-moar a4ca12: OUTPUT«Uni.new(0x0068, 0x0065, 0x006c, 0x006c, 0x006f, 0x0308).NFD␤Uni.new(0x0068, 0x0065, 0x006c, 0x006c, 0x00f6).NFC␤»
timotimo tries to create those two files locally 12:17
hm. right. 12:19
dir()>>.basename>>.codes.say will actually give 5 for both
nadim hi, given that @a = [1 .. 3] is the same as @q = [[[ 1.. 3 ]]], ow do I greate an array in an array in an array?
timotimo m: my @a = [1..3,]; say @a.perl 12:20
camelia rakudo-moar a4ca12: OUTPUT«[1..3,]␤»
timotimo m: my @a = [$[1..3]]; say @a.perl
camelia rakudo-moar a4ca12: OUTPUT«[[1, 2, 3],]␤»
timotimo m: my @a = [1..3.list,]; say @a.perl
camelia rakudo-moar a4ca12: OUTPUT«[1..1,]␤»
ab6tract m: say [[[ 1.. 3 ],],]
camelia rakudo-moar a4ca12: OUTPUT«[[[1 2 3]]]␤»
gfldex m: my @a = [[[1,2,3],],]; dd @a;
camelia rakudo-moar a4ca12: OUTPUT«Array $var = $[[[1, 2, 3],],]␤»
timotimo m: my @a = [(1..3).list,]; say @a.perl
camelia rakudo-moar a4ca12: OUTPUT«[(1, 2, 3),]␤»
ab6tract oh, trailing comma no longer significant?
12:21 bjz_ left
timotimo ab6tract: say uses .gist, so it doesn't give you something that necessarily round-trips 12:21
12:22 rindolf left
nadim timotimo: thanks, I tried a bunch of glyph combinations without success :) 12:22
timotimo :)
12:23 rindolf joined
nadim is there a reason why [[[ ... ]]] is not supported? apart making it easier to parse. 12:23
vytas getting following error when installing Grammar::Debugger pastebin.com/bjZJuwTE 12:24
timotimo nadim: it's the general "single argument rule". if there's a single thing inside [ ] (and other constructs) it will be iterated over to give the results 12:25
both the trailing comma and the initial $ will prevent that 12:26
arnsholt No, trailing comma is no longer significant, I think
yoleaux 11:35Z <mrf_> arnsholt: test t/04-nativecall/11-cpp.t and it is possibly related to your commit 518b46feb9. Can you elaborate on whether the test needs to be altered?
timotimo m: my @a = [1..3,]; say @a.perl; my @b = [1..3]; say @b.perl
camelia rakudo-moar a4ca12: OUTPUT«[1..3,]␤[1, 2, 3]␤»
timotimo arnsholt: is that so?
arnsholt Huh, apparently I'm wrong. 12:27
timotimo but you're still awesome :3
arnsholt Looking at S07 it looks like circumfix constructors and argument lists are different 12:28
timotimo could very well be
arnsholt I remembered a snippet from a discussion regarding argument lists
timotimo m: sub testit(+@test) { say @test.perl }; testit(1..2); testit(1..2,)
camelia rakudo-moar a4ca12: OUTPUT«[1, 2]␤[1, 2]␤»
timotimo and indeed it is so 12:29
m: sub testit(+@test) { say @test.perl }; testit([1..2]); testit([1..2,])
camelia rakudo-moar a4ca12: OUTPUT«[1, 2]␤[1..2,]␤»
timotimo if you add the [ ] back, you'll get the "trailing comma" semantic agai
arnsholt Which makes sense, I think. Even if I can't quite articulate why =)
timotimo well, in that case the array that you create is "the single argument" 12:30
nadim IMHO, a blog entry, another one, about complex data structures, flattening and the magic of some operations returning Seq and so would be welcome for the P5 community. It's been a headache to wrap ones mind around it so far. 12:32
12:32 rurban joined
arnsholt mrf_: Ooops, looks like I didn't run all the test. Sorry! 12:34
12:35 snarkyboojum_ left
arnsholt mrf_: And the fix is moving sub nativecast to the top of Types.pm. Running the tests (all of them, this time =) now 12:37
vytas did @*INC go away? 12:39
Skarsnik wait? why moving the position of the sub change something? x)
vytas, yes
there is a @*REPO now I think
12:39 risou_ is now known as risou_awy
vytas what is its replacement? 12:39
12:39 moises left, risou_awy is now known as risou
timotimo $*REPO i believe 12:39
moritz vytas: what do you want to do? 12:40
nadim $*REPO it is
timotimo but if you just want to add something to the beginning of @*INC, you should use "use lib 'folder'" instead
vytas moritz, installing PSGI fails because of github.com/supernovus/perl6-psgi/b...psgi-env.t
but i just found that there is pull request by stmuk_ that fixes it... but it's not yet merged 12:41
dalek kudo/nom: 9511ff2 | arnsholt++ | lib/NativeCall/Types.pm:
Move sub nativecast to the top of Types.pm.

This unbusts 11-cpp.t. mrf_++ for spotting the error.
12:42 kid51 left
lucs arnsholt: Thanks for fixing. 12:42
12:51 AlexDaniel joined
Skarsnik does DBIish still work? travis build still fail 12:53
and I don't have the last rakudo to test x) 12:54
AlexDaniel travis-ci.org/perl6/DBIish 12:55
same error
12:56 moises joined 12:57 _mg_ joined
Skarsnik I will blame github.com/perl6/DBIish/blob/maste...ysql.t#L64 13:00
I feel like curli does not like how DBIis is splitted 13:02
13:02 Akagi201 left
stmuk_ wasn't there a PR for DBIish? 13:03
Skarsnik it fix and earlier fail
*an
stmuk_ ah 13:04
13:05 kjs_ joined 13:06 ely-se joined
lucs Um, t/04-nativecall/16-rt125408.t fails, fixed by adding a use lib 'lib'; line to it. 13:07
13:07 kjs_ left
Skarsnik err 13:07
that should not be needed?
13:07 kjs_ joined
lucs Am I the first to experience this? 13:07
I'm building from scratch, so it hasn't been "install"ed yet.
vytas could someone help author here - github.com/teodozjan/pod6-coverage/issues/20 13:08
lucs Could that explain it?
Skarsnik lucs, I think make test is to blame, by not putting the -I lib to perl6 call
lucs Skarsnik: fpaste.scsys.co.uk/502283 13:09
Ah.
Skarsnik You should fill an issue for it x) 13:10
lucs Ok.
[Coke] m: say "the jvm build is days out of date?"
camelia rakudo-moar 9511ff: OUTPUT«the jvm build is days out of date?␤»
lucs Skarsnik: Um, push me in the right direction to open an issue please? 13:11
13:11 CIAvash left
[Coke] r: say "the jvm build is days out of date?" 13:12
camelia rakudo-moar 9511ff, rakudo-jvm e3c591: OUTPUT«the jvm build is days out of date?␤»
13:12 n0tjack joined
[Coke] so, moar is at Wed Dec 2 07:40:50 2015; jvm is at Sat Nov 28 23:10:43 2015 13:13
Skarsnik lucs, github.com/rakudo/rakudo reporting bugs, there is no issue stuff on rakudo apparently
moritz [Coke]: perlpunks.de/paste/show/565eee8f.a31.1ea 13:14
[Coke]: that's how the JVM build fails
stmuk_ panda seems to work on travis now!
lucs Skarsnik: It mentions <mailto: [email@hidden.address] I guess I'll try that. 13:15
u
[Coke] ah, related to precomp work. I haven't tried to run r-j locally in a few days.
13:17 n0tjack left, ely-se left
El_Che I looked yesterday at Azure to see if I could sping a windows VM to smoke rakudo. OMG. Azure is concentrated pain with a tablet interface. 13:19
13:19 ely-se joined
llfourn .tell timotimo you are probably asleep by now. Just poking you for benchmarks :D. No rush. 13:21
yoleaux llfourn: I'll pass your message to timotimo.
lucs Skarsnik: (Okay, bug report sent, thanks) 13:22
llfourn timotimo: err nvm I just confused myself about times. urgh you are probably awake :P 13:23
mrf_ arnsholt: thanks :D
arnsholt++
13:29 moises left
arnsholt Least I could do when I broke it =) 13:30
mrf_ lucs: whats that ticket number. Seems easy enough to fix Configure.pl to pass -Ilib to HARNESS
13:31 edehont joined
mrf_ arnsholt: You probably won't be surprised how many people wouldn't say that 13:31
lucs mrf_: 126785 13:32
13:33 domidumont1 joined
arnsholt mrf_: To be fair, it was pretty simple to fix too =) 13:33
mrf_ arnsholt: all the better. It was beyond my ken 13:35
lucs: link?
mrf_ has no idea where the rakudo issue tracker is
lucs: is the issue that it doesn't use its own libs when installing so only works after its already installed? 13:36
13:36 domidumont left
lucs mrf_: Here you go: rt.perl.org/Public/Bug/Display.html?id=126785 13:37
mrf_ lucs: thanks.
[Coke] RT #126785
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=126785
[Coke] ^^ bot magic.
lucs Aha, cool.
arnsholt mrf_: The magic trick was running the test with perl6 --ll-exception 13:40
mrf_ arnsholt: what does that do? 13:41
arnsholt If you set --ll-exception exception backtraces will include compiler-internal stuff, which is generally what you want when debugging the compiler, but not in normal user code
mrf_ arnsholt++ # useful info
colomon Dynamic variable @*INC not found ? 13:42
mrf_ colomon: in what?
Skarsnik colomon, it had been removed
mrf_ ^
colomon :( 13:43
moritz colomon: use lib if you just want to extend INC
arnsholt Went away in the library/precompilation refactor
colomon moritz: is that lexical?
13:43 domidumont1 left
moritz colomon: I think so 13:43
colomon … actually, maybe the code wasn’t relying on that anyway. hmmm.
mrf_ does use lib work at runtime or compile time (use lib $my_lib) 13:44
moritz mrf_: compile time
mrf_ moritz: how do you dynamically load libs then?
13:45 ZoffixW joined
moritz mrf_: through $*REPO somehow, though I don't know the details 13:45
Skarsnik use lib 'path to lib'; ?
mrf_ moritz: ok. Its not overly common in modules but application often add weird libs at runtime based on config 13:46
colomon hmmm, use lib seems to work nicely 13:47
but then in a later script 13:48
===SORRY!===
Could not find File::Temp:ver<True>:auth<True>:api<True> in:
/home/colomon/.perl6/2015.11-317-g9511ff2
/home/colomon/.rakudobrew/moar-nom/install/share/perl6/site
/home/colomon/.rakudobrew/moar-nom/install/share/perl6/vendor
/home/colomon/.rakudobrew/moar-nom/install/share/perl6
oh, wait, maybe that’s real!
lucs mrf_: Gah! I said t/04-nativecall/11-cpp.t in my bug report, but it's t/16-rt125408.t
colomon yeah, okay, that one was real. :) 13:49
ZoffixW Man, getting the feed back up is tricky :)
lucs copypastypo
ZoffixW Unless I'm willing to use Mojolicious version 5.54
colomon though huh, when I try to install again
==> Installing File::Temp
File::Temp:ver<0.0.2>:auth<Jonathan Scott Duff>:api<> already installed
mrf_ lucs: that ok. The issue is that it installs using the installed libs not the source libs
colomon I don’t like that in the least
mrf_ lucs: I am about to make a PR that fixes it 13:50
lucs mrf_: Yeah, that part remains true, still...
mrf_: Thanks.
arnsholt mrf_: I think the most detailed doc of how to do runtime library path modifications is jnthn++'s gist: gist.github.com/jnthn/47a42b2e86e7e552b2e2
mrf_ arnsholt: cool. Will take a look. Our old p5 application has an entire module designed to figure out dynamic libs. Its aweful 13:51
arnsholt There's also the code handling use lib, which is src/Perl6/World.nqp:783-802
colomon ah, no, use lib is not at all an adequate substitute for @*INC.push, becaue it’s happening at compile-time 13:52
:\
arnsholt From the looks of World.nqp it shouldn't be too complicated 13:53
moritz $*REPO = CompUnitRepo.new($path, :next-repo($*REPO)) 13:54
arnsholt Yeah, what moritz++ said
13:56 Akagi201 joined
mrf_ Can anyone add me to the RT list so I can take ownership of a ticket? 13:57
moritz mrf_: I think [Coke] can, and he needs to know your RT login 13:58
mrf_ [Coke]: can you add me (ungrim97@hotmail.com) to RT please so I can grab RT# 126785 14:01
14:02 Akagi201 left
stmuk_ mrf_++ 14:03
14:03 Akagi201 joined, Akagi201 left
mrf_ has already fixed the issue but... 14:03
hmm testing this will be hard. Whats the easiest way to blow away a rakudo install. 14:04
moritz mrf_: git clean -xdf # attention, deletes *all* untracked files
dalek href="https://perl6.org:">perl6.org: 182400e | (Zoffix Znet)++ | / (3 files):
Generate Recent Blog Posts JSON file on site build
moritz mrf_: and if you're really thorough, do the same in the nqp/ and nqp/MoarVM/ repos too 14:05
mrf_ moritz: Ahhh that install is in the rakudo dir of course
moritz++
mrf_ will git stash first
ZoffixW moritz, ^ that commit is kinda hackish (using perl of a different user), but I figure this way we don't need to mess with (and maintain) newer perl/perlbrew and all for a small thing 14:06
It'll make a json file that I'll use to display recent blog posts on the home page, now that Google disabled their Feed API
moritz ZoffixW: a slightly less hacky way would to be to source the perlbrewrw in a bash script and use that as a wrapper around the perl script 14:08
ZoffixW That would affect mowyw too and on perl 5.22 it spits a galore of warnings due to unescaped {} in regexes 14:09
14:09 cdg joined 14:10 molaf left
moritz I guess I should fix mowyw then 14:11
ZoffixW :D 14:12
colomon moritz: you’re suggesting I need to create a new CompUnitRepo? That does seem kind of reasonable, I guess...
14:12 ely-se left
moritz colomon: I actually just forward-engineered what I think the Perl6::World could would be in ordinary Perl 6 14:13
14:14 n0tjack joined 14:15 ely-se joined 14:18 n0tjack left
JimmyZ we need @*REPO.push ? 14:19
14:20 AlexDaniel left 14:22 krakan joined
[Coke] mrf_: added. 14:24
jdv79 afternoon
mrf_ [Coke]: Thanks 14:25
14:25 krakan left, krakan joined 14:26 zengargoylew joined
mrf_ Should all spec tests pass under "make spectest" for a fresh rakudo checkout 14:29
colomon moritz: Cannot modify an immutable CompUnit::Repository::Installation 14:31
moritz colomon: what exactly did you do? 14:32
colomon moritz: $*REPO = CompUnitRepo.new("$dir/lib", :next-repo($*REPO)); 14:33
dalek href="https://perl6.org:">perl6.org: c88ad4e | (Zoffix Znet)++ | source/js.js:
Fix Recent Blog Posts not displaying due to Google Feed API deprecation (stmuk++)
14:34
colomon instead of @*INC.push: “$dir/lib”
ZoffixW colomon, why not just: juse lib "$dir/lib"; ? 14:35
s/juse/use/;
moritz m: $*REPO = CompUnitRepo.new("bla/foo", :next-repo($*REPO));
camelia rakudo-moar 9511ff: OUTPUT«Cannot modify an immutable CompUnit::Repository::Installation␤ in block <unit> at /tmp/HjYxXHL8YZ:1␤␤»
moritz m: my $*REPO = CompUnitRepo.new("bla/foo", :next-repo($*REPO));
camelia rakudo-moar 9511ff: OUTPUT«Type check failed in binding $next-repo; expected CompUnit::Repository but got Any␤ in block <unit> at /tmp/tiUW5tNEbE:1␤␤»
moritz m: my $*REPO = CompUnitRepo.new(".", :next-repo($*REPO)); 14:36
camelia rakudo-moar 9511ff: OUTPUT«Type check failed in binding $next-repo; expected CompUnit::Repository but got Any␤ in block <unit> at /tmp/WPHJQ5YSxf:1␤␤»
moritz :(
[Coke] mrf: yes, they *should*.
mrf_ [Coke]: Damn 14:37
lucs [Coke]: "Shall" they too?
mrf_ though its worth pointing out that make spec test won't use the right libs I don't think
colomon ZoffixW: because use lib does it at compile time, when $dir is Nil 14:38
ZoffixW: or at least that’s what it looks like
ZoffixW Ah
lucs had a handful of failing spec tests a couple of days ago, but ignored them. 14:39
JimmyZ wonders what about EVAL "use lib '...'";
m: EVAL "use lib '.'"; 14:40
camelia ( no output )
moritz m: say $*REPO.repo-chain
camelia rakudo-moar 9511ff: OUTPUT«(inst#/home/camelia/.perl6/2015.11-317-g9511ff2 inst#/home/camelia/rakudo-m-inst-2/share/perl6/site inst#/home/camelia/rakudo-m-inst-2/share/perl6/vendor inst#/home/camelia/rakudo-m-inst-2/share/perl6)␤»
moritz m: EVAL 'use lib "."'; say $*REPO.repo-chain
camelia rakudo-moar 9511ff: OUTPUT«(file#/home/camelia inst#/home/camelia/.perl6/2015.11-317-g9511ff2 inst#/home/camelia/rakudo-m-inst-2/share/perl6/site inst#/home/camelia/rakudo-m-inst-2/share/perl6/vendor inst#/home/camelia/rakudo-m-inst-2/share/perl6)␤»
zengargoylew hrm. sorta hoped rakudobrew would go smoothly by now. :/
moritz seems 'use lib' isn't lexically scoped, and so the EVAL trick works. JimmyZ++
JimmyZ EVAL++ # powerful tool :) 14:42
zengargoylew maybe should've git pull'd rakudobrew first...
ab6tract timotimo: is say doesn't round trip, than neither does spurt, right? deepak has another test case that he will join the channel and share later tonight
*if 14:43
14:45 sufrostico joined
ZoffixW Yey \o/ recent blog posts back on perl6.org/ 14:46
Google Feed API? We don't need no API :P
MadcapJake ZoffixW++
The <read more> link opens an atom.xml file 14:47
ZoffixW Yeah, I know. Should it be opening something else? :)
(that file displays fine in my browser and I'm offered to subscribe)
MadcapJake maybe just pl6anet.org front page
oh, what browser are you using? 14:48
14:48 cygx joined
cygx m: say $*REPO.VAR.^name 14:48
camelia rakudo-moar 9511ff: OUTPUT«CompUnit::Repository::Installation␤»
cygx ^ no scalar container, thus no assignment
MadcapJake chromium-based browsers don't do that (maybe extensions add this but it's not default behavior)
cygx m: $*REPO := CompUnitRepo.new(".", :next-repo($*REPO));
camelia rakudo-moar 9511ff: OUTPUT«No contextual found with name '$*REPO'␤ in block <unit> at /tmp/HXxwifIRxR:1␤␤»
cygx not quite sure what's up with that one
ZoffixW MadcapJake, Palemoon: i.imgur.com/uGFYUYz.png 14:49
JimmyZ m: my $*REPO := CompUnitRepo.new(".", :next-repo($*REPO));
camelia rakudo-moar 9511ff: OUTPUT«Type check failed in binding $next-repo; expected CompUnit::Repository but got Any␤ in block <unit> at /tmp/bnuCAk40_7:1␤␤»
MadcapJake yeah, i love that feature of firefox-based browsers
[Coke] mrf_: Failures I know about: github.com/coke/perl6-roast-data/b....out#L4785 14:50
Note that I have one more failure on moar-jit than on moar-nojit
MadcapJake chromium browsers just show a big wall of text (used to show all the xml but now they at least show just the text)
colomon JimmyZ++ 14:51
ilmari ls 14:52
EWIN
[Coke] JimmyZ: I incorporated the list of authors you gave me into the list, and also pulled in the RFC uthors.
mrf_ [Coke]: I am just running against moar at the moment. (from --gen-moar). Got quite a few failures when using -Ilib
14:53 skids joined
mrf_ am checking without the change and will check the delta 14:53
JimmyZ [Coke]: noticed, Thanks ;)
14:55 csd_ joined
jdv79 so, what if i want to have a "use v6" line for lang detection but want to use the current version 14:55
ilmari what are the semantics supposed to be for shifting native ints by more than the word size?
$ ./nqp -e 'nqp::say(nqp::bitshiftl_i(1, 64))' 14:56
src/core/interp.c:748:65: runtime error: shift exponent 64 is too large for 64-bit type 'long int'
jdv79 from jnthn's post seems that's impossible
ilmari 1
(built with ubsan)
$ ./nqp -e 'nqp::say(nqp::bitshiftl_i(1, -1))' 14:58
src/core/interp.c:748:65: runtime error: shift exponent -1 is negative
-9223372036854775808
it's basically whatever the underlying CPU instruction does 14:59
nine Please don't use CompUnitRepo.new in user code. We _will_ remove it as soon as someone has a good idea where to move the code to.
colomon has smoke test running again...
ilmari on javascript the shift amount is interpreted modulo 32, on java they're modulo 64
dalek href="https://perl6.org:">perl6.org: cbc82a9 | (Zoffix Znet)++ | source/ (4 files):
Link to non-RSS Recent Blog Posts as well (MadcapJake++)
JimmyZ nine: we changed to use EVAL :P
nine Best course of action would of course be to implement $?REPO as suggested by jnthn++'s gist 15:00
moritz nine: what's the recommended way to add an include path or so at run time?
nine PROCESS::<$REPO> := CompUnit::Repository::FileSystem.new(:prefix</path/to/lib>, :next-repo($*REPO)); 15:01
ilmari also, the js backend only seems to implement left shift, not right shift, for native ints
ZoffixW ouch that's ugly
nine ZoffixW: then help design a better solution :) 15:02
15:02 havenwood left
nine ZoffixW: or implement support for $?REPO 15:02
dakkar or @*REPO?
ZoffixW nine, that's way over my head :) 15:03
So all I can do is unconstructively complain :)
nine I guess $?REPO is just about 15 lines of code of which most can be copy and pasted from elsewhere. It's just not on top of my TODO list
15:03 zakharyas left
timotimo llfourn: i'm awake, yeah :) 15:03
yoleaux 13:21Z <llfourn> timotimo: you are probably asleep by now. Just poking you for benchmarks :D. No rush.
15:03 raydiak_ left
llfourn timotimo: me too :) 15:04
JimmyZ oh, about CompUnitRepo, I wanted to suggest to rename it. but I didn't
15:04 havenwood joined, havenwood left, havenwood joined
nine ZoffixW: I started work on curli by pasting code from jnthn's gist to actual files and trying to hook the stuff up in baby steps. There is no "over my head", there's just a "haven't tried to figure it out yet". 15:04
JimmyZ: my first instinct is to just move the code to CompUnit::Repository. But that class represents a single repository. Somehow the code dealing with repositories in general feels out of place there. 15:05
JimmyZ: Maybe a CompUnit::RepositoryManager
CompUnit::RepositoryManager.repo-for('file#/foo/bar')?
15:06 edehont left, FROGGS left
nine Or...since the remaining code is about repo specifications: CompUnit::RepositorySpecification.new('file#/foo/bar').repository 15:06
Woodi nine: is CompUnit::* a bit like java class loader ? 15:07
JimmyZ @*REPO.push ?
nine Woodi: yes
Woodi: really performs the same job AFAIK
JimmyZ: there is now @*REPO. Repositories form a linked list
arnsholt s/now/no/ ? 15:08
nine arnsholt: correct
Woodi just WOW then :) so probably security stuff can be plugged too
15:09 domidumont joined
timotimo hmm 15:10
but i'm quite distracted right now
[Coke] nine++ again.
ShimmerFairy: You still thinking of tackling AUTHORS -> CREDITS ?
(btw, probably want to leave AUTHORS there for historical reasons)
Woodi as we just learned jnthn++ too :) 15:11
ShimmerFairy [Coke]: oh, sorry, forgot about it.
timotimo .tell japhb how about we let perl6-bench have a list or hash of test code (exitcode tells if usable) to actual code (or filename) so we can be compatible with different rakudo versions for all stuff
yoleaux timotimo: I'll pass your message to japhb.
15:13 rurban left
ilmari .ask TimToady what should the semantics for shifting native ints by negative or greater than width amounts be? it's undefined in C, and thus in the current moar 15:13
yoleaux ilmari: I'll pass your message to TimToady.
15:13 _mg_ left
[Coke] also, if someone is bored, I could use a sort function that 1) is mark insensitive, 2) prefers non latin, 3) prefers spaces, 4) prefers longer things, roughly in that order. 15:14
mrf_ [Coke]: t/spec/S17-scheduler/at.rakudo.moar not ok 13 - can we cancel (3)# TODO huh?
JimmyZ ilmari: github.com/MoarVM/MoarVM/issues/41
[Coke] I have most of this, but want something that would sort 唐鳳
15:14 n0tjack joined
[Coke] before Audrey Tang, e.g. 15:14
(whereas right now I'm only preferring Ingy Döt Net over Ingy Dot net) 15:15
gist.github.com/coke/63c7bbb82f075...pl6-L6-L67
timotimo ab6tract: spurt also won't round-trip; but you can slurp and spurt :bin so that you don't get surprised by things
[Coke] mrf_: if it's TODO'd, and "not ok", that's not an error. It's an expected failure. 15:16
arnsholt [Coke]: Where "prefer $a over $b" means "$a < $b"?
mrf_ [Coke]: Should that not skip under test harness...
[Coke] arnsholt: yup.
mrf_: no. todo tests are run.
otherwise how will you know when they are passing? 15:17
15:17 YP-QMUL-W joined
[Coke] -skip- tests aren't run, typically because they fail too horribly. 15:17
arnsholt "döt" sorting before "dot" is really weird. How are you sorting currently?
mrf_ [Coke]: ok. Thats fine. Just hard to tell in the make spectest run which are failing as todo and which are failing due to my stuff
[Coke] but todo's are just "wrong value", not "ZOMG ERROR"
15:17 raydiak_ joined
MadcapJake ZoffixW++ # Always love seeing the RSS icon! Looks really good! 15:17
[Coke] mrf_: todo tests -aren't failures-
ZoffixW \o/ 15:18
[Coke] how are you seeing them as failures?
mrf_ t/spec/S17-scheduler/at.rakudo.moar (Wstat: 256 Tests: 15 Failed: 0) Non-zero exit status: 1
[Coke] let me back up.
How are you running the tests?
15:18 Upasaka left
mrf_ make spectest 15:18
15:18 Upasaka joined 15:19 ZoffixW left
mrf_ I then ran ./perl6 -Ilib t/spec/S17-scheduler/at.rakudo.moar to get a more details explaination as to why. 15:19
15:19 n0tjack left
[Coke] if that's the only line, there were no explicitly failed tests, but the test file exited with a failing value. 15:19
that's not because you have a todo test that doesn't pass.
mrf_: are you running with a pristine rakudo or with local changes? 15:20
15:20 khw joined
[Coke] arnsholt: it's not the sort for showing all the names. it's the sort for picking the best name of a list of aliases for a person. 15:21
mrf_ [Coke]: pristine currently
[Coke]: gist.github.com/ungrim97/89e44d0bfc63f5448a25
[Coke] so Ingy has two names. I want the latin-ified one, not the ascii one.
mrf_: right, so all the tests passed individually, but the script didn't exit with a clean value.
as opposed to your copy of S17-supply/unique.t 15:22
JimmyZ [Coke]: so will you remove the emails and only keep one?
[Coke] which apparently aborted after running 5 tests, 2 of which failed, leaving 12 that weren't even run because it aborted.
mrf_ ahh ok
[Coke] JimmyZ: for example: Nat Tuck 「Chandon」 [email@hidden.address]
will only have "Nat Tuck" in the announcement. 15:23
15:23 rurban joined
JimmyZ ok :) 15:23
15:24 cpage left
[Coke] arnsholt: if you look in that gist, you can see lots of people with multiple names under the 「」; I'd like to do a better job picking. I did it with a sort, but it could be something that just checks each name. (oh, you ahve a codepoint > 1000 ? keep that) 15:25
15:29 cpage joined 15:30 weihan left 15:33 n0tjack joined 15:34 ab6tract left, mdaq left, domidumont left, matt_ left, DarthGandalf left, burnersk left, eiro left, hobbs left, pnu left, solarbunny left 15:35 MilkmanDan left, kjs_ left, kaare_ left, bakedb left, sno left, darutoko left, mr-foobar left, Khisanth left, pierrot left, kst left, Fleurety left, uruwi_ left, ggoebel7 left, MadcapJake left, emdashcomma left, g4 left, vytas left, Guest51288 left, synbot6 left, diakopter left, Exodist left, pyrimidine left, n0xff left, n0tjack left, zengargoylew left, pdcawley left, Actualeyes left, Axord left, lestrrat left, jferrero left, nadim left, aindilis left, domm left, cbk left, cgfbee left, ilbot3 left 15:36 brabo left, ingy left, Bucciarati left, johan left, retupmoca left, spaceships left, Hor|zon left, lucs left, pochi left, larion left, bhm left, yeltzooo left, ilbelkyr left, saaki left, jnthn left, nowan left, nine left, baest left, pecastro left, jdv79 left, tinita left, smash left, maddingue left, ponbiki left, El_Che left, inokenty left, vike left, atta left, freeze left, woodruffw left, Ulti left, garu left, salva left, rhr left, mls left, riatre left, KotH left, sergot left, cfloare left, gensym left, SHODAN left, risou left, cpage left, khw left, raydiak_ left, YP-QMUL-W left, havenwood left, csd_ left, skids left, cygx left, cdg left, dakkar left, espadrine left, Skarsnik left, RabidGravy left, dj_goku left, noganex left, Zoffix left, jojotus left, zengargoyle left, ShimmerFairy left, jevin_ left, colomon left, njmurphy left, sQuEE left, abaugher_ left, cpage_ left, xinming_ left, keix left 15:37 llfourn left, Praise left, Timbus left, rvchangue left, roguelazer left, skarn left, mspo left, Hotkeys left, skaji left, moznion left, oka^ left, hanekomu left, flaviusb left, clkao left, Gardner left, bitmap left, sammers left, cibs left, gugod left, boegel left, sivoais left, dg left, hahainternet left, diego_k left, sjohnson left, mattp__ left, zhmylove left, pRiVi left, awwaiid left, bowtie left, bbarker`` left, doublec left, confuseAcat left, crux left, literal left, avar left 15:38 wtw left, rindolf left, nebuchadnezzar left, dbohdan left, Util_ left, _sri_ left, tony-o_ left, ashleyde1 left, moritz left, mrf_ left, arnsholt left, xdbr left, [ptc] left, parisba left, eternaleye left, M-Illandan left, jantore left, chewie_1982 left, sjn left, Amnez777 left, luis left, advwp_ left, obra left, orevdiabl left, b2gills left, gtodd left, go|dfish left, DrPete_ left, ilmari left, isacloud left, sftp left, olinkl left, corbyhaas left, SmokeMachine__ left, {dpk} left, yoleaux left, ugexe left, jsimonet left, zemmihates left, chansen_ left, timotimo left, dylanwh left, yakudza left, huf left, DrForr left, Sgeo left, breinbaas left, f3ew left, tadzik left, daxim left, novapatch left, stux|RC-only left, Grrrr left, Gothmog_ left, leedo left 15:39 autarch left, gypsydave5 left, ab5tract left, gfldex left, erdic left, profan left, avalenn left, mephinet left, PotatoGim left, Spot__ left, Juerd left, dalek left, kipd left, mrsolo left, BinGOs left, hacst left, Humbedooh left, geekosaur left, [Tux] left, flussence left, integral left, samb1 left, JimmyZ left, ggherdov left, xnrand left, simcop2387 left, lsm-desktop left, dustinm` left, robinsmidsrod left, ribasushi_ left, Celelibi left, Psyche^_ left 15:40 cbk joined, nadim joined 15:41 erdic joined, gfldex joined, ab5tract joined, gypsydave5 joined, autarch joined, leedo joined, Gothmog_ joined, Grrrr joined, novapatch joined, daxim joined, tadzik joined, f3ew joined, breinbaas joined, Sgeo joined, DrForr joined, huf joined, yakudza joined, profan joined, cgfbee joined, ggherdov joined, Psyche^ joined, eiro joined, burnersk joined, DarthGandalf joined, matt_ joined, domidumont joined, corbyhaas joined, olinkl joined, sftp joined, isacloud joined, ilmari joined, DrPete_ joined, go|dfish joined, gtodd joined, b2gills joined, orevdiabl joined, obra joined, advwp_ joined, luis joined, sjn joined, chewie_1982 joined, jantore joined, M-Illandan joined, eternaleye joined, parisba joined, [ptc] joined, xdbr joined, arnsholt joined, moritz joined, mrf_ joined, ashleyde1 joined, tony-o_ joined, _sri_ joined, dbohdan joined, Util_ joined, nebuchadnezzar joined, n0xff joined, pyrimidine joined, Exodist joined, diakopter joined, synbot6 joined, Guest51288 joined, vytas joined, g4 joined, emdashcomma joined, MadcapJake joined, ggoebel7 joined, uruwi_ joined, Fleurety joined, kst joined, pierrot joined, Khisanth joined, mr-foobar joined, darutoko joined, sno joined, bakedb joined, kaare_ joined, kjs_ joined, Amnez777 joined, bitmap joined, Gardner joined, clkao joined, flaviusb joined, hanekomu joined, oka^ joined, skaji joined, moznion joined, Hotkeys joined, mspo joined, skarn joined, roguelazer joined, rvchangue joined, Timbus joined, Praise joined, llfourn joined, keix joined, xinming_ joined, cpage_ joined, abaugher_ joined, sQuEE joined, njmurphy joined, colomon joined, jevin_ joined, ShimmerFairy joined, zengargoyle joined, jojotus joined, Zoffix joined, noganex joined, dj_goku joined, RabidGravy joined, Skarsnik joined, espadrine joined, dakkar joined, cdg joined, skids joined, csd_ joined, havenwood joined, YP-QMUL-W joined, raydiak_ joined, khw joined, cpage joined, dustinm` joined, gugod joined, boegel joined, sivoais joined, dg joined, hahainternet joined, diego_k joined 15:51 gugod left, boegel left, sivoais left, dg left, hahainternet left, diego_k left, yakudza left, huf left, DrForr left, Sgeo left, breinbaas left, f3ew left, tadzik left, daxim left, novapatch left, Grrrr left, Gothmog_ left, leedo left, autarch left, gypsydave5 left, ab5tract left, gfldex left, erdic left, profan left, domidumont left, matt_ left, DarthGandalf left, burnersk left, eiro left, nebuchadnezzar left, dbohdan left, Util_ left, _sri_ left, tony-o_ left, ashleyde1 left, moritz left, mrf_ left, arnsholt left 15:52 xdbr left, [ptc] left, parisba left, eternaleye left, M-Illandan left, jantore left, chewie_1982 left, sjn left, luis left, advwp_ left, obra left, orevdiabl left, b2gills left, gtodd left, go|dfish left, DrPete_ left, ilmari left, isacloud left, sftp left, olinkl left, corbyhaas left, kjs_ left, kaare_ left, bakedb left, sno left, darutoko left, mr-foobar left, Khisanth left, pierrot left, kst left, Fleurety left, uruwi_ left, ggoebel7 left, MadcapJake left, emdashcomma left, g4 left, vytas left, Guest51288 left, synbot6 left, diakopter left, Exodist left, pyrimidine left, n0xff left, cgfbee left, Psyche^ left, Amnez777 left, ggherdov left, dustinm` left, cpage left, khw left, raydiak_ left, YP-QMUL-W left, havenwood left, csd_ left, skids left, cdg left, dakkar left, espadrine left, Skarsnik left 15:53 RabidGravy left, dj_goku left, noganex left, Zoffix left, jojotus left, zengargoyle left, ShimmerFairy left, jevin_ left, colomon left, njmurphy left, sQuEE left, abaugher_ left, cpage_ left, xinming_ left, keix left, llfourn left, Praise left, Timbus left, rvchangue left, roguelazer left, skarn left, mspo left, Hotkeys left, skaji left, moznion left, oka^ left, hanekomu left, flaviusb left, clkao left, Gardner left, bitmap left, telex left
[Coke] wow, ton of rakudo-m spectest failures on os x. 16:01
16:01 pmurias joined, pmurias left
[Coke] hurls gist.github.com/coke/736e58d75f51f3cf6f5a 16:01
japhb .botsnack 16:02
Um, really? I can't get my messages? I am now sad. 16:03
[Coke]: I think we may be netsplit ... 16:05
16:07 ely-se left
nadim hi, is it even possible to have a Nil? since it transforms to an Any (or other) can one hold an Any and know that it's a Nil? 16:08
[Coke] m: my $a = Nil; say $a.WHAT; say $a.perl; 16:09
camelia rakudo-moar 9511ff: OUTPUT«(Any)␤Any␤»
[Coke] m: say Nil.WHAT; say Nil.perl; 16:10
camelia rakudo-moar 9511ff: OUTPUT«Nil␤Nil␤»
nadim thnaks 16:11
16:13 ely-se joined
japhb Bleah, it seems to be an even split, people and bots. 16:13
mst epic netsplat, yes 16:15
16:16 ely-se left
japhb What's the current procedure for dealing with such on FreeNode? It's been a blessedly long time since I've had to .... 16:17
mst dealing? 16:20
"hold on and wait for the opers to duct tape it back together" 16:21
there's not a lot we -can- do
TimToady m: my $a is default(Nil) = Nil; say $a.WHAT; say $a.perl; 16:22
camelia rakudo-moar 9511ff: OUTPUT«Nil␤Nil␤»
TimToady nadim: ^^ is how you allow a variable to store Nil
16:23 lichtkind joined
TimToady m: my \a = Nil; say a.WHAT; say a.perl; 16:23
camelia rakudo-moar 9511ff: OUTPUT«Nil␤Nil␤»
TimToady you can also use the SSA form 16:24
nadim I'm writting a dumper, I would have liked to display Nil but when I get my hands on it it is already an Any. 16:25
I'll test with the input you gave me. 16:26
16:28 ribasushi joined, jme` joined, stux|RC-only joined, n0tjack joined, zengargoylew joined, pdcawley joined, Actualeyes joined, Axord joined, lestrrat joined, jferrero joined, aindilis joined, domm joined, ilbot3 joined, brabo joined, ingy joined, Bucciarati joined, johan joined, retupmoca joined, spaceships joined, lucs joined, Hor|zon joined, pochi joined, larion joined, bhm joined, yeltzooo joined, ilbelkyr joined, saaki joined, jnthn joined, nowan joined, nine joined, pecastro joined, jdv79 joined, tinita joined, smash joined, maddingue joined, ponbiki joined, El_Che joined, inokenty joined, vike joined, atta joined, woodruffw joined, freeze joined, Ulti joined, garu joined, salva joined, rhr joined, mls joined, riatre joined, gensym joined, KotH joined, sergot joined, cfloare joined, SHODAN joined, risou joined 16:29 n0tjack left 16:30 n0tjack joined 16:31 lucasb joined 16:32 stux|RC-only left
n0tjack ah, nm, tr/// still works; I was getting confused with the Pair-style tr from the advent calendar. 16:32
16:32 sufrostico left
nadim Given a variable, is it possible to introspect where it was declared? I asked for the $a variable in the example above and it says it coes from Nil :) 16:35
n0tjack say $a.WHENCE; 16:36
(kidding)
16:42 Fleurety_ joined 16:45 Fleurety_ left 16:47 uruwi joined, zakharyas joined, pmurias joined, telex joined, robinsmidsrod joined, lsm-desktop joined, simcop2387 joined, xnrand joined, JimmyZ joined, samb1 joined, integral joined, flussence joined, [Tux] joined, geekosaur joined, Humbedooh joined, hacst joined, BinGOs joined, mrsolo joined, kipd joined, dalek joined, Juerd joined, Spot__ joined, PotatoGim joined, mephinet joined, avalenn joined, MilkmanDan joined, dylanwh joined, timotimo joined, chansen_ joined, zemmihates joined, jsimonet joined, ugexe joined, yoleaux joined, {dpk} joined, SmokeMachine__ joined, wtw joined, avar joined, literal joined, confuseAcat joined, crux joined, doublec joined, bbarker`` joined, bowtie joined, awwaiid joined, pRiVi joined, zhmylove joined, mattp__ joined, orwell.freenode.net sets mode: +vv dalek yoleaux, sjohnson joined, baest joined, mdaq joined, solarbunny joined, pnu joined, hobbs joined, cibs joined, sammers joined, erdic joined, gfldex joined, ab5tract joined, gypsydave5 joined, autarch joined, leedo joined, Gothmog_ joined, Grrrr joined, novapatch joined, daxim joined, tadzik joined, f3ew joined, breinbaas joined, Sgeo joined, DrForr joined, huf joined, yakudza joined, profan joined, cgfbee joined, ggherdov joined, Psyche^ joined, eiro joined, burnersk joined, DarthGandalf joined, matt_ joined, domidumont joined, corbyhaas joined, olinkl joined, sftp joined, isacloud joined, ilmari joined, DrPete_ joined, go|dfish joined, gtodd joined, b2gills joined, orevdiabl joined, obra joined, advwp_ joined, luis joined, sjn joined, chewie_1982 joined, jantore joined, M-Illandan joined, eternaleye joined, parisba joined, [ptc] joined, xdbr joined, arnsholt joined, moritz joined, mrf_ joined, ashleyde1 joined, tony-o_ joined, _sri_ joined, dbohdan joined, Util_ joined, nebuchadnezzar joined, n0xff joined, pyrimidine joined, Exodist joined, diakopter joined, synbot6 joined, Guest51288 joined, vytas joined, g4 joined, emdashcomma joined, MadcapJake joined, ggoebel7 joined, kst joined, pierrot joined, Khisanth joined, mr-foobar joined, darutoko joined, sno joined, bakedb joined, kaare_ joined, bitmap joined, Gardner joined, clkao joined, flaviusb joined, hanekomu joined, oka^ joined, skaji joined, moznion joined, Hotkeys joined, mspo joined, skarn joined, roguelazer joined, rvchangue joined, Timbus joined, Praise joined, llfourn joined, keix joined, xinming_ joined, cpage_ joined, abaugher_ joined, sQuEE joined, colomon joined, jevin_ joined, ShimmerFairy joined, zengargoyle joined, jojotus joined, Zoffix joined, noganex joined, dj_goku joined, RabidGravy joined, Skarsnik joined, espadrine joined, dakkar joined, cdg joined, skids joined, csd_ joined, havenwood joined, YP-QMUL-W joined, raydiak_ joined, khw joined, cpage joined, dustinm` joined, gugod joined, boegel joined, dg joined, hahainternet joined, diego_k joined
ugexe i would hope installing from a read-only location would be possible 16:48
timotimo huh
well, that's not installing. that's running
but we shouldn't fail like that
a failure to lock the lockfile should just cause us to ignore the repo henceforth
ugexe Failed to open file /home/nickl/perl6/supply-toys/lib/.precomp/.lock: permission denied
timotimo if i wasn't deep in moarvm work right now, i'd take a look myself
it's probably rather easy. will you have a quick look?
mrf_ 126785
16:48 camelia left, ribasushi left
mrf_ RT 126785 16:48
RT# 126785
Argh
TimToady Excess Flood from camelia? huh... 16:49
yoleaux 15:13Z <ilmari> TimToady: what should the semantics for shifting native ints by negative or greater than width amounts be? it's undefined in C, and thus in the current moar
16:49 camelia joined
flussence
.oO( IWBNI "rt.perl.org/126785" worked, like it does in Bugzilla )
16:50
16:50 ilbot3 left
ugexe i also managed to get it to create folders named `some-modules.pm6` when incorrectly doing something along the lines of `use lib "lib/some-modules.pm6"` 16:50
16:51 ilbot3 joined
timotimo urgh 16:51
so we should look if the folder exists before trying to create it to get the .precomp folder, eh?
TimToady .tell ilmari I suspect if C has good performance reasons for leaving large shifts undefined, we should probably do so as well 16:52
yoleaux TimToady: I'll pass your message to ilmari.
ilmari TimToady: that's undefined behaviour as in nasal daemons
yoleaux 16:52Z <TimToady> ilmari: I suspect if C has good performance reasons for leaving large shifts undefined, we should probably do so as well
16:52 larion left
ilmari not even implementation-defined or hardware-defined 16:52
TimToady well, if they don't have good reasons, then we shouldn't :) 16:53
ugexe yes, although those 2 problems may not be related (im just investigating artifacts im now noticing)
ilmari the result of shifting negative numbers is implementation-defined
16:53 CIAvash joined
ilmari TimToady: perl5 recently changed it to saturate the shift amount to wordsize and have negative shifts invert the direction 16:53
TimToady the performance problem arises when you have to put guards on your CPU instructions to catch negative or overflow and deal with them 16:54
and we don't much care when we're using boxed types, because the extra overhead is negligible in that case, but when we're using native types, eventually we might care 16:55
but we could opt for safety by default, and turn off checks by pragma
ilmari github.com/Perl/perl5/blob/blead/p...2068-L2092
TimToady on the make-it-work-right-first principle 16:56
ilmari both java and js have defined behaviour for this (only with different word sizes)
actually, I'm not sure shifting by a negative amount is defined in either
TimToady word-size should also probably be pragmatcially modifiable
16:56 sivoais joined
TimToady at least for rotate 16:56
ilmari it's currently hardcoded to 64 in moar and jvm, and 32 in js 16:57
for native types, taht is
pmurias for js I just use the js shifts
dalek kudo/nom: e0a9f9b | (Stefan Seifert)++ | tools/build/install-core-dist.pl:
Remove bogus use lib from install-core-dist.pl

Looks like some leftover from the origin of the script as test file.
TimToady the question is whether using native types to begin with is already saying "use native semantics" 16:58
pmurias which when given the right operand bigger than 32 uses only the low five bits
16:58 lizmat joined
TimToady where "native" potentially means "non-portable" 16:58
16:58 abraxxa left
ilmari pmurias: that's what the jvm and moar do as well, but they use explicit 64bit integers 16:58
long and MVMint64, respectively
TimToady: non-portable is okay, the problem is undefined (as in nasal demons) behaviour 16:59
non-portable as in implementation-defined
16:59 lucasb left
grondilu m: sub { 1, 2 ... * }() 16:59
camelia rakudo-moar 3975f8: OUTPUT«(timeout)» 17:00
grondilu m: sub { 1, 2 ... * }
camelia ( no output )
ilmari m: (1, 2 ... *)
camelia ( no output )
ilmari m: say (1, 2 ... *)
grondilu ^that fails if I put a newline just before '...'
camelia rakudo-moar 3975f8: OUTPUT«(...)␤»
TimToady we usually know the size of the word, given p6 natives are declared int32 or int64, and if just 'int', it's 32 or 64, with local shift semantics
not saying that very clearly...
grondilu oh no it doesn't with this simple example 17:01
ilmari TimToady: the shift ops in moar use the .i64 part of the register, and in java the functions take and return longs, which are 64bit
jnthn evening, #perl6
TimToady trying to say that if we're working in "int", we should use implementation-defined semantics, and with "int32" or "int64", force correct semantics regardless of architecture by default
n0tjack m: say "ABABABA" ~~ tr/A/Q/;
camelia rakudo-moar 3975f8: OUTPUT«Cannot modify an immutable Str␤ in block <unit> at /tmp/idyQDsiZL8:1␤␤»
n0tjack m: my $s = "ABABABA"; say $s ~~ tr/A/Q/; 17:02
camelia rakudo-moar 3975f8: OUTPUT«StrDistance.new(before => "ABABABA", after => "QBQBQBQ")␤»
17:02 lucasb joined
MadcapJake does nativecall have an unsigned long type? 17:02
ilmari our native ulong is Int is ctype("long") is unsigned is repr("P6int") { }; 17:03
MadcapJake awesome
17:03 raiph joined
jnthn TimToady: Since we do computations at full width in general, and then store at smaller widths, not sure the size thingy will really work out 17:03
17:04 sivoais left
TimToady well, we can always just do like C, and claim it's undefined, and let people work out when they can cheat :) 17:04
jnthn ;) 17:05
hoelzro o/ #perl6
MadcapJake if a c header file says `int`, should I assume that's an `int32` or `int64`? (total C n00b)
TimToady MadcapJake: not on a PDP-11 :0
pmurias hoelzro: \o
TimToady :)
hoelzro o/ pmurias
17:06 Celelibi joined
zengargoylew always took int to mean we don't know/care as long as all the int are the same int 17:06
MadcapJake i think my machine is a bit newer than that :P, so what do i do? Can i just leave it as `int` and let Perl 6 or NativeCall figure it out? Or is that not possible? 17:07
grondilu weird behavior: significant newline: gist.github.com/grondilu/b0d01187de72f277625d
hoelzro nine: how does the new curli stuff handle helper .so files created by a dist? I installed Linenoise, but I can't find liblinenoise.so anywhere
TimToady int used to mean what it means in P6, 'the longest integer that will run at full speed', but then they invented 'long' :) 17:08
ugexe hoelzro: maybe related to %?RESOURCES ?
17:09 larion joined
TimToady
.oO(but that was an int time ago...)
17:09
hoelzro heh
ugexe: I'll look at %?RESOURCES, thanks
jnthn fwiw, `spurt slurp('foo'), 'bar'` is not promised to round-trip at byte level.
MadcapJake yeah, plus a few functions I'm wrapping use both `int` and `long`, if there's one thing that's really alien to me in C it's numbers.
jnthn (Not a bug, just a consequence of the Perl 6 string model)
The darn file system non-normalization thing is a pain. :/ 17:10
nine hoelzro: #3 on my TODO. Just starting to test my fix for #1 17:11
yoleaux 16:23Z <mrf_> nine: I am not sure i understand you comments on my PR
TimToady maybe it'd be worthwhile to have Blob.slurp/spurt
jnthn We already have :bin on slurp
hoelzro nine: excellent, thanks! what's #1, if I may ask?
jnthn Which gives a Buf
and you can spurt a Buf
TimToady okay
jnthn But if you want byte level identity you'd better work with bytes :)
TimToady hard to keep track of this language, it keeps changing :)
jnthn Don't think that's changed for a while ;) 17:12
nine hoelzro: half-missing check if transitive dependencies of a precomp file are up to date
hoelzro: we only check the precomp files but don't compare with their source
hoelzro ah ha
jnthn I'm half tempted to just replace the utf-8 clean 8-bit thing with an ASCII clean 8-bit thing
17:12 ribasushi joined
TimToady ASCIZ ftw! 17:13
jnthn Because otherwise we're going to have to go worrying about when normalization would canonically re-ordrer.
Which is a layer violation, architecturally.
And it seems people want to make a big deal out of exceedingly rare things. 17:15
.oO( If y'all used Windows they'd be so rare they'd not happen :P )
TimToady m: say SAMECASE "a","b"
camelia rakudo-moar e0a9f9: OUTPUT«5===SORRY!5=== Error while compiling /tmp/9C5JeczF2J␤Undeclared name:␤ SAMECASE used at line 1␤␤»
lucasb grondilu: strange indeed. seems like the '...' is getting parsed as the yada yada (fail) operator, instead of sequence constructor
TimToady if someone wanted to tweak levenshtein to be case insensitive, that's be cool
mst jnthn: 7-bit ASCII ftw
TimToady or to could all case mismatches as a single change 17:16
probably LHF for some definition of LH
jnthn mst: If that's what POSIX offered we'd be fine. But it doesn't. It offers a bunch of bytes that you've no idea how to interpret. 17:17
TimToady it's iso-8859-mumble
Juerd jnthn: fyi: The problem with the mqtt module was in the module itself, not in supplies or IO::Socket::Async. 17:18
jnthn Juerd: Saw that in the backlog. Phew. :) 17:19
Juerd jnthn: Yea. Sorry :)
jnthn Juerd: BTW, if you didn't get the answer, you .close the Tap you get from a Supply.inerval to stop the flow
17:19 patrickz joined
Juerd jnthn: I hadn't noticed the answer. Thanks for repeating :) 17:19
jnthn Well, I couldn't tell if you'd figured it out or not from the backlog :) 17:20
17:20 zakharyas left
Juerd Now that Net::MQTT works fine, I should probably add it to the ecosystem :) 17:21
17:21 Amnez777 joined, Amnez777 left
Juerd It's not completely finished yet, but it is usable 17:21
jnthn It's fast enough for you now?
nine jnthn: thank you for suggesting a directory per compiler-id in precomp store. This way I can change the repo format without backwards compatibility hassle :)
jnthn ;-)
Juerd Well, not fast enough for what I originally intended. Perl 6 itself doesn't quite handle huge amounts of data efficiently yet.
17:21 Amnez777 joined, Amnez777 left, Amnez777 joined
Juerd But it's fast enough for *most* things done with MQTT, I'm sure. 17:21
dalek kudo/nom: 704c585 | (Stefan Seifert)++ | src/core/CompUnit/ (3 files):
Check precomp files of dependencies against their source

Before loading a precomp file, we already checked if its newer than all its dependencies. But we only checked the precomp files of the dependencies.
Now we also check if those precomp files are actually newer than their sources. This fixes strange errors when chaning the source of a dependency of a precompiled module.
nine hoelzro: #1 done :) 17:22
hoelzro \o/
nine++
jnthn nine: I'd expected we'd make use of that some years down the line, not some days down the line. But, cool. :D
Juerd The difference in speed between the (functionally identical!) test suites of p5/Net::MQTT::Simple and p6/Net::MQTT is huge.
jnthn Juerd: Yeah, we've a good amount of optimization work to go. :)
lucs These precomp ideas, are there docs about them I could read?
nine lucs: gist.github.com/jnthn/47a42b2e86e7e552b2e2 17:23
lucs Thanks
jnthn nine++ # bet that patch fixed a lot of issues
Juerd real 0m0.189s 17:24
nine jnthn: I just added the paths to the source files to the .deps files. That way I don't have to read a lot of .src files just to find out which files to stat()
Juerd real 0m10.136s
p5 vs p6 :|
Looking forward to the future, though :)
17:26 booq joined, booq left
pmurias jnthn: shouldn't slurp roundtrip on unix? 17:26
zengargoylew not sure where to start in fixing Algorithm::Trie::libdatrie. looks like LibraryMake or Find::Bundled or something else uses @*INC. 17:27
jnthn pmurias: no
pmurias jnthn: or at least on linux
jnthn Str is a grapheme-level construct. that implies normalized.
*That
filenames and other stuff from the OS needs to round-trip 17:28
Woodi that normalization non-uniques is OS- or FS-specific ?
jnthn Woodi: FS, though some OS only have FS that lack the problem :) 17:29
17:31 uruwi left
pmurias jnthn: but if we slurp and then spew it should roundtrip? 17:31
jnthn Juerd: I suspect an amount of that is extra startup time, and an amount of it is test compilation time.
pmurias: Not unless you use :bin
Juerd jnthn: Both amounts, but not large amounts. Time to first line of output is only 0.5 s 17:32
jnthn Juerd: ah, it's one big test file?
Juerd Yes
github.com/Juerd/Net-MQTT-Simple/b.../t/regex.t versus github.com/Juerd/p6-mqtt/blob/master/t/regex.t 17:33
Woodi problem is becouse IO layer is "simple". and it is simple becouse this such things are rare/just discovered. but in the future can be more differences... maybe then general approach/lower-IO-layer can be crafted ?
Juerd Note that the function tested, filter-as-regex, is not a pure translation
pmurias jnthn: so a given beat of printed text can be separated into graphemes in multiple different ways?
Woodi anyway: do shell do not have such problems ?
17:33 stux|RC-only joined
Woodi grr... don't* ? 17:33
Juerd The number of tests is 560. It's the only code I have at this point that allows for a comparison because it's almost identical. 17:34
jnthn pmurias: Multiple codepoint streams can map to the same graphemes, yes.
Juerd I could just be unlucky to run into the most un-optimized parts :)
jnthn And it's normal for input to be normalized.
Pepole act like Perl 6 is the only language where this happens :P 17:35
Juerd Of course, it's the only language we use! ;)
jnthn :)
pmurias jnthn: I meant to ask about first spewing and then slurping, sorry
17:35 uruwi joined
jnthn I'm just surprised people are surprised, is all. :) 17:35
pmurias: Oh...
pmurias: Well, if you spurt (spew? :P) something in a Str and then slurp it then yeah, it's going to lead to the same graphemes. :) 17:36
Juerd In my experience, only very few actual programmers are actual polyglots.
patrickz .seen jdv
yoleaux I haven't seen jdv around.
jnthn pmurias: And if you spew it again, the same byte sequence.
Juerd A lot of people know a quite a few language, none of them well. Only a few people know multiple languages well.
s/langauge/languages/
TimToady just as most of the data of the world is turning into UTF-8 by accident, eventually all the data of the world will have turned into NFC by accident :)
Juerd TimToady: Most text data is UTF-8 and processed and passed as byte arrays :| 17:37
arnsholt jnthn: I'm confused about shaped arrays again. Is the shape (or at least of part of it available to the type at declaration-time? It's available in .new, but that's too late for CArray to compose in the dimensions into the type
Juerd Even with Perl 5, where actual decoding into an internal representation (which happens to resemble utf8 quite closely ;)) is possible, a lot of code is still just passing text strings around without ever decoding or encoding them. 17:38
jnthn arnsholt: The number of dimensions is part of the type
Juerd But with languages like PHP, you don't even have the option of having actual unicody semantics. Some functions handle Unicody stuff, but most of the time, 1 byte = 1 character. :( 17:39
At least C is completely honest about not caring :)
jnthn :) 17:40
nine Funny. The "panda's bootstrap uses the installed Panda modules" bug has been there since 2012. I guess it just hasn't been that much of a problem.
jnthn :)
MadcapJake how would I represent a typedef with NativeCall?
jnthn Depends what it's def'in' 17:41
timotimo jnthn: it's just kinda weird to be able to have invalid utf8 characters in filenames round-trip properly, but then choke on non-normalized composed characters ...
17:41 rindolf joined
jnthn timotimo: it doesn't choke, it just can't round-trip them 17:42
arnsholt jnthn: Right, right. Where in the type is it stored though? Or rather, can I get at it somehow from a method ^parameterize or the like?
jnthn Valid UTF-8 can still be non-normalized
17:42 ZoffixW joined
patrickz .tell jdv79 Is p6-CPAN still a thing? If yes, how does that play with HTTP support being removed from zef? 17:42
timotimo jnthn: that's bad enough :)
yoleaux patrickz: I'll pass your message to jdv79.
17:42 molaf joined
timotimo jnthn: imagine we build a diff tool that claims hellö and the other hellö have equal contents just because we accidentally open one of both files each time ... 17:42
ugexe So CompUnit::PrecompilationStore::File does not provide a fallback for using a module in a read only directory, so it fails trying to create the lock. Could it be better if (in a read only directory) it just skip precompiling, or use a different fallback temp path for the generated files?
17:43 hankache joined
timotimo ... we should probably introduce an API to get at directory contents with Buf instead of Str ... 17:43
ugexe patrickz: i have a zef refactor going on with plugin stuff, and one is for HTTP
timotimo and then use utf8-c8 to display to the user what the file name is, perhaps?
hankache hola #perl6
ZoffixW Well, my 2-day messing about trying to make a P6 web app ended in failure :( Can't get POST params with Bailador :/
jnthn Trouble is, people are going to want to work with them as strings anyway
hankache m: say -True; 17:44
camelia rakudo-moar 704c58: OUTPUT«-1␤»
jnthn And then we'll end up with them decoding them into things that won't round-trip
So we'll just have everyone writing the same issue into their programs.
hankache the above line should return -1? or 0?
jnthn -1
m: say +True 17:45
camelia rakudo-moar 704c58: OUTPUT«1␤»
jnthn m: say -+True
camelia rakudo-moar 704c58: OUTPUT«-1␤»
jnthn Because that.
hankache thanks jnthn
nine Pushed github.com/tadzik/panda/commit/40a...c108f91a74 Fix bootstrap.pl loading the outdated installed Panda
17:45 dakkar left
flussence .tell stmuk pl6anet.org's atom feed is linked to from the front page of perl6.org now; since people whose browsers don't understand feeds may be clicking it, here's a bit of css to make it readable in them (if you want it): gist.github.com/flussence/ed0b12992514d26afef0 17:45
yoleaux flussence: I'll pass your message to stmuk.
hankache i thought -True == False == 0
nine This must be one of the most trivial fixes ever.
Juerd hankache: - is for numbers, not for booleans. By using - on a boolean, you coerce it to a number. 17:46
hankache thank you for the clarification
Juerd hankache: Did you mean !True?
Er, that looks weird. Did you mean "!True"?
TimToady or did you mean 1/True? :P
hankache Juerd i guess i got lost between -True and !True, I thought they were the same thing 17:47
Juerd Ooh, can we have an error message for dividing by False? :)
Woodi precondition: *user* have 2 files named helo*... a) rare; b) user problem realy ;) c) if filehandles are used and not closed then no problem
Juerd It will spark new discussions amongst mathematicians
ilmari m: say 1/False
camelia rakudo-moar 704c58: OUTPUT«Attempt to divide 1 by zero using div␤ in block <unit> at /tmp/EKODjuDoID:1␤␤Actually thrown at:␤ in block <unit> at /tmp/EKODjuDoID:1␤␤»
17:48 Actualeyes left
patrickz ugexe: Awesome! :-D 17:48
hankache TimToady :P 17:50
nine hoelzro: #2 down. I fear and hope that the most straight forward way to fix the "find your .so file" issue is finally implementing %?RESOURCES
hoelzro that's probably The Right Way To Do It
jnthn ugexe: The FileSystem comp unit repo was more intended for development than production, and in development you'll likely have write permissoins. What were you wanting to use it for? I wonder if we just want an alternative CompUnit::Repository that doesn't try to precompile at all, rather than trying/failing every time. 17:52
n0tjack m: say so so True; 17:53
camelia rakudo-moar 704c58: OUTPUT«True␤»
TimToady m: say not so not so True
camelia rakudo-moar 704c58: OUTPUT«True␤»
17:54 hankache left, noam joined
ugexe jnthn: reading modules off a sdcard 17:56
jnthn Well, depends if we want it to Just Work with -Ilib I guess :) 17:57
nine We can certainly not make it fail just because it couldn't write precomp files 17:58
17:59 n0tjack left
nine Should be LHF suitable for anyone who needs that feature. 17:59
MadcapJake as far as typedefs, would something like this work: constant KeySym = uint;
jnthn MadcapJake: Yes, thing so 18:00
*think
back later & 18:02
18:03 domidumont1 joined 18:05 pmurias left 18:06 domidumont left 18:07 n0tjack joined
lichtkind later jonathan 18:11
knows anyone if NSA arrived?
ZoffixW cries "Bailador:ver<*>:auth<>:api<> already installed"
ugexe use --force for now 18:12
ZoffixW lichtkind, is it the supply stuff? I believe so
ugexe, don't have that
TimToady lichtkind: fixed-size arrays, but not ragged
lichtkind Native shaped array ints basically a moar and perl 6 feature
ZoffixW oh
lichtkind thanks tim
TimToady the name's toady 18:13
tim is just the family name :)
ZoffixW :P
18:13 gtodd left
lichtkind planning an article here 18:13
nine Oh boy. Seems like language modules loaders are in need of a redesign, too.
lichtkind the zen master lives in the now
MadcapJake anyone know a good example of a multi that dispatches on a named arg e.g., `f(:up, "foo"); f(:down, "bar");` 18:14
flussence starts poking at this Pod::Coverage thing to try and get it to work...
nine ZoffixW: you can always --force it
ZoffixW nine, but I don't have that option
panda --force install . just prints usage instructions 18:15
(╯°□°)╯︵ ┻━┻
Enough P6 web stuff for me for today :) If you're not enjoying it; it's not worth doing lol :) 18:16
18:16 mohae joined
nine ZoffixW: how old is your panda? 18:18
lucasb is it relevant to put --force after the install arg, as in "panda install --force" ?
ZoffixW nine, I built it yesterday at 14:06 of whatever time zone the IRC log uses: irclog.perlgeek.de/perl6/2015-12-01#i_11634091 18:19
lichtkind but mr today good your present : would you find it a fair representation to say that maybe perl 6 greatest feature is the ability to reduce complexity by bridging gaps of campatibiliy borders adn in the heads of developers?
nine ZoffixW: that's ancient! That version probably got loaded into the mainframe via punch cards
ZoffixW lol
masak lichtkind: ...as supposed to which successful programming language or piece of software...? ;) 18:20
TimToady thinks Perl 6 has no greatest feature, which is its greatest feature...
masak opposed*
TimToady languages with greatest features tend to be horrible for other things 18:21
18:21 Deepak joined
lichtkind hai masak 18:21
MadcapJake anyone able to lead me to an example of a multi that dispatches on a named arg? I'm not finding anything like that on examples.perl6.org or doc.perl6.org
n0tjack another newb question: how do I upgrade to the latest Rakudo*? I tried brew upgrade rakudo-star, but it complains I already have 2015.09 installed (I want to upgrade to 2015.11). 18:22
18:22 Deepak left
n0tjack OSX, in case that wasn't implied by brew 18:22
lichtkind i tend to agree but i ment it its greatest aim
18:22 Deepak joined
ZoffixW MadcapJake, github.com/zoffixznet/perl6-Color/...or.pm6#L27 18:22
n0tjack MadcapJake: I don't know of any examples off the top of my head, but I might be able to come up with one if you describe your higher-level goal.
lichtkind masak: my line of thought is the perl 4 could glue together all things you used on the chell 18:23
and perl 6 can vial dsl and it felixibility glue it on interneal level any software together
Deepak Hi All, I thought a bit about Perl6's default behaviour of using graphemes, and found it concerning in one place 18:24
gist.github.com/deepakg/a2f19e077ee8696bc3da
would appreciate your thoughts
18:24 uruwi left
Juerd Deepak: Could you give a one-line summary, or teaser? 18:24
ilmari MadcapJake: github.com/rakudo/rakudo/blob/nom/...1350-L1357
mspo from the gist: Synopsis: 18:25
Perl6 converts code-points to graphemes. Unfortunately, this might cause some code-points to not round-trip between reading and writing a text file.
ZoffixW MadcapJake, and actually I have a ton of those multi's there. Just check out the possible usage statements :) github.com/zoffixznet/perl6-Color#new
MadcapJake I'm writing a wrapper for X11 XTest, and I want to make a nice Perl6ish interface, the python interface has two default args to key events (for up and down events) `up = True, down = True` which I thought would be an easy usecase for a multi, and using dispatching on `:up` and `:down`
n0tjack Deepak: graphemes are an abstraction, which means the implementation is inaccessible to you. if you care about your file as a byte stream, rather than a character (grapheme) stream, use a Buf. 18:26
lucasb m: multi f(:$up!) { '^^^' }; multi f(:$down!) { 'vvv' }; say f(:foo), f(:bar) # for MadcapJake, do you mean something like this?
camelia rakudo-moar 704c58: OUTPUT«Cannot call f(:foo); none of these signatures match:␤ (:$up!)␤ (:$down!)␤ in block <unit> at /tmp/C1tfqzrfG8:1␤␤»
18:26 spider-mario joined
lucasb m: multi f(:$up!) { '^^^' }; multi f(:$down!) { 'vvv' }; say f(:up), f(:down) 18:26
camelia rakudo-moar 704c58: OUTPUT«^^^vvv␤»
MadcapJake lucasb: yeah that's exactly what I mean! so simple, I thought it'd be more complicated than that :D 18:27
ZoffixW lucasb, what does the "!" do there?
ilmari m: say $*IN.slurp(:bin)
camelia rakudo-moar 704c58: OUTPUT«Method 'slurp' not found for invocant of class 'IO::Handle'␤ in block <unit> at /tmp/TiF3DJ9I9f:1␤␤»
n0tjack ZoffixW: means it's a mandatory named arg
ZoffixW Ah
Deepak there is still definitely an element of surprise here - I don't want to treat a text file as binary stream
lucasb ZoffixW: yep, required
MadcapJake what does the `|` do in a proto's signature?
n0tjack MadcapJake: flattens the arg list
lichtkind i ment it in a way that quintessential task of any programmer is reducing complexity 18:28
MadcapJake n0tjack: but what about when it's `(|)` as the arg list?
n0tjack MadcapJake: I forget, lemme check real quick
Juerd Summary of Deepak's concern: unicode does not round-trip bytes, so writing the "same" data back actually writes the normalized data, which may have different code points.
s/bytes/bytes or codepoints/ 18:29
lichtkind MadcapJake it enforces a context
MadcapJake what's that mean? o_O 18:30
lucasb MadcapJake: It's just a placeholder that matches any argument list
n0tjack MadcapJake: I think it means "any call to this function, no matter how invoked"
MadcapJake: it's the catch-all
MadcapJake oh ok, so it's like, "place all multi arguments here"
n0tjack I think so, I'm still learning
Juerd I share that concern because most software isn't aware of anything above codepoints, if they even have support for more than bytes, and the different data may actually be considered inequal to older data. But I think that the only way to ever resolve this, is to simply continue to use explicit binary modes for communication with anything that is processed by such software.
ZoffixW MadcapJake, if you saw that in my module, I believe I added it so that the default constructor would not be triggered. 18:31
But I just copy-pasted it from someone who gave it to me in the channel and the comment was "it would be nice if this stuff was actually documented" :) 18:32
MadcapJake ZoffixW: it was in the rakudo core string proto that I saw `(|)`
ZoffixW Ah
MadcapJake yeah that isn't documented in language/functions (should be)
n0tjack I honestly can't find where tr/// is documented
the search function on docs.perl6.org is ... finicky
Juerd Deepak: I think your example does highlight a bug or missing feature in (git) diff
ugexe foo(:$bar, |c) { do-work($bar); nextsame(|c) } foo(:bar(1), 2, 4, "asdf"); # nextsame(2, 4, "asdf") 18:33
MadcapJake n0tjack: I know it's briefly discussed in the regex synopsis
masak lichtkind: it's not clear to me that what you're saying means anything in particular. though I hasten to add that this may very well be a limitation in my comprehension of what you're saying.
lichtkind: but I don't feel you're expressing something measurable/observable/refutable.
MadcapJake ugexe: i think that's different from when it's used in a proto's signature though
Juerd Deepak: A similar problem occurs when some troll replaces a semicolon with a greek question mark, or a latin 'e' with a cyrillic 'е'...
18:34 ribasushi left
ugexe MadcapJake: how so 18:34
MadcapJake ugexe: github.com/rakudo/rakudo/blob/nom/...r.pm#L1350
ugexe i mean, why do you think thats different
masak m: say "e" lt "е" 18:35
camelia rakudo-moar 704c58: OUTPUT«True␤»
masak m: say "e" eq "е"
camelia rakudo-moar 704c58: OUTPUT«False␤»
dalek : e516122 | (Matthew Wilson)++ | misc/perl6advent-2015/schedule:
move to later slot
MadcapJake I thought that prefacing a variable with `|` flattened it (inside a signature) but in that proto signature the `|` isn't prefacing any variable
masak proposes the new programming language eeеeе
MadcapJake prefixing* xD
flussence signatures are different to normal p6 syntax 18:36
ilmari m: "eе".uninames.say
camelia rakudo-moar 704c58: OUTPUT«(LATIN SMALL LETTER E CYRILLIC SMALL LETTER IE)␤»
18:36 lucasb left
lichtkind masak well i meant if a language is so chanable it can bridge cultural borders, welcomes concise syntax but also if you can theoretically include parsers for other languages as p6grammars you have an internal in-vom communication without to rely on too much architecture 18:37
so signature o a slang?
ugexe MadcapJake: you dont have to capture whatever | results in (|c)
18:37 espadrine left
lichtkind so signature are a slang? 18:37
MadcapJake right so `|` seems to have three usecases, prefixing variables inside signatures (flattens), longest match `or` in regex, and something else in proto signatures?
ilmari MadcapJake: the proto is only necessary because the Str class is being compiled during bootstrap
Deepak well, reading from a file is just one place where this would affect us, another case would be reading names of directory on mac os where all filenames are always stored in the NFD form 18:38
MadcapJake but even the example in the language/function doc has a `|` at the end of the proto's signature doc.perl6.org/language/functions#proto
ilmari m: class Foo { multi method foo(Bool:D :$foo) { "so $foo" }; multi method foo(Str:D :$foo) { "str $foo" } }; my Foo $f .= new; say [ $f.foo(:foo), $f.foo(:foo("foo")) ]
camelia rakudo-moar 704c58: OUTPUT«[so True str foo]␤»
Deepak sorry, haven't played with Perl6 a whole lot yet, but what would readdir return 18:39
18:39 supernovus joined
arnsholt Bah. Including debug prints in the Metamodel code breaks precomp stuff, somehow >.< 18:39
diakopter masak: eeeeee
supernovus Hi #perl6
lichtkind hai supernovus 18:40
nine arnsholt: including any prints in a module breaks precompilation :( I'm using say to communicate dependencies back to the process that started precomp
ugexe MadcapJake: that example is what i pasted above. it means it must contain $reason and $name, and any number of other arguments are ok in addition. if your proto does not need to define an argument for every multi it will dispatch to it would just use (|) signature
nine arnsholt: there is plenty of room for improvement on that one
ZoffixW nine++ updating panda added --force 18:41
MadcapJake ok so then the `|` in a proto signature *does* do something different
ugexe and i dont think | is flattening inside a signature
18:41 ribasushi joined
ugexe its doing the same thing as if it was a regular method/subroutine 18:41
ZoffixW supernovus, oh hai :) You have a few PRs waiting BTW :)
n0tjack MadcapJake: the docs say "This is often used in proto definitions (like proto foo (|) {*}) to indicate that the routine's multi definitions can have any type constraints."
18:41 mrsolo left, isacloud left, parisba left
masak diakopter: no, "eeеeе". the name is important. 18:42
arnsholt nine: That explains it, yeah!
supernovus ZoffixW: thanks for letting me know, I really should check my catchall account more often.
arnsholt nine: Actually, what bits of code should I look at regarding that? I may have an idea...
diakopter masak: it's like FVEY except five Es
supernovus Cool, a bunch of the pull requests were part of what I was coming to ask about (removing @*INC). Merging them now. 18:43
nine arnsholt: CompUnit::PrecompilationRepository::precompile and the say statements in CompUnit::Repository::Installation and CompUnit::Repository::FileSystem
MadcapJake n0tjack: that is kind of bizarre to me, does it desugar to something or is it a special-cased kind of thing?
18:44 sivoais joined
n0tjack MadcapJake: I don't think it's a special case, but ultimately I'm too new to give you any insights 18:44
MadcapJake doc.perl6.org/routine/proto not found on server :(
ugexe think of it like *%_, *@_
18:45 Peter_R joined, uruwi joined 18:46 Ch0c0late joined
MadcapJake I added an issue to perl6/doc: github.com/perl6/doc/issues/218 18:48
ZoffixW MadcapJake++ 18:49
Juerd jnthn: I can reproduce the hanging on calling a non-existing method. Will now golf. 18:50
hoelzro m: flat [(18, 16, 24), (3, 20, 20)] 18:51
camelia ( no output )
18:51 sivoais left
hoelzro m: say flat [(18, 16, 24), (3, 20, 20)] 18:51
camelia rakudo-moar 704c58: OUTPUT«((18 16 24) (3 20 20))␤»
hoelzro how do I get flat to create a 6-element list out of that 2-element one? 18:52
I thought that flat would make that [18, 16, 24, 3, 20, 20]
TimToady arrays itemize their elements
m: flat ((18, 16, 24), (3, 20, 20)) 18:53
camelia ( no output )
TimToady m: say flat ((18, 16, 24), (3, 20, 20))
camelia rakudo-moar 704c58: OUTPUT«(18 16 24 3 20 20)␤»
TimToady easiest solution, don't put it into an Array :)
hoelzro ah ha
thanks TimToady!
supernovus Hmm, I pulled the changes to HTTP::Easy, and now the Travis build is failing: travis-ci.org/supernovus/perl6-htt...s/94466716 It claims that PSGI isn't in the module ecosystem, but it should be...
nine I wonder if we actually need language module loaders. They could also just be plain normal CompUnit::Repositories and part of the $*REPO chain. We'd just have to make sure :from is properly respected by all repos and that the precomp stores are handled properly.
Skarsnik nice broke everything! x) 18:55
hoelzro @ vars are Arrays by default, right?
Juerd Yes. Not just by default, but always, iirc
lichtkind masak is the christmas date doable ?
18:56 bpmedley joined
diakopter wut 18:56
TimToady
.oO(people should keep their personal lives off the channel :)
18:57
18:57 isacloud joined
ZoffixW supernovus, could it be this stuff? github.com/supernovus/perl6-http-e...vis.yml#L8 18:59
s/this/because of this/;
supernovus, this is what .travis.yml I use; seems to work fine github.com/zoffixznet/perl6-Color/...travis.yml
supernovus ZoffixW: It doesn't even get to that part. It dies in the 'panda installdeps .' portion. 19:00
19:00 parisba joined
ZoffixW Oh :( 19:00
No idea.
19:00 znpy joined
diakopter supernovus: looks like it didn't reinstall rakudobrew 19:00
19:00 parisba is now known as Guest33799
MadcapJake how can i check if a string is in an array? 19:00
ZoffixW MadcapJake, grep?
Also, wouldn't ~~ also work? 19:01
MadcapJake really? neat!
arnsholt nine: Cheers! I'll keep you posted!
nine arnsholt: yeah!
ZoffixW m: my @a = "zoof", "zof", "zoffix"; say so "zoffix" ~~ any @a;
camelia rakudo-moar 704c58: OUTPUT«True␤»
ZoffixW m: my @a = "zoof", "zof", "zoffi"; say so "zoffix" ~~ any @a;
camelia rakudo-moar 704c58: OUTPUT«False␤»
ZoffixW MadcapJake, ^ this seems to work 19:02
supernovus ZoffixW: That seems a reasonable .travis.yml, some of the 'script' stuff seems to be for older releases, I'm going to clean it up and try again.
flussence figured out what's wrong with Pod::Coverage - it works by doing qqx/$*EXECUTABLE-NAME --doc/ which loses any -Ilib on the original command line...
nine m: my @a = "zoof", "zof", "zoffix"; say so "zoffix" eq any @a;
camelia rakudo-moar 704c58: OUTPUT«True␤»
ilmari m: my @a = "zoof", "zof", "zoffix"; say so "zoffix" eq any @a;
camelia rakudo-moar 704c58: OUTPUT«True␤»
ilmari nine: ⁵ :)
ZoffixW :o
supernovus Could it also be because I renamed META.info to META6.json on the PSGI repository?
MadcapJake ah yeah `eq` is string equality 19:03
19:03 vendethiel joined
ZoffixW supernovus, nope. This repo has META6.json, but its status is passing: github.com/hoelzro/p6-algorithm-elo 19:03
19:04 mrsolo_ joined, mrsolo_ is now known as mrsolo
supernovus ZoffixW: Well, I'll try simplifying the .travis.yml on HTTP::Easy and see if it works better. 19:06
MadcapJake when in a for loop, if I assign to $_, will it assign to the item of the array? 19:08
mspo ~ $ perl6 --doc
>
should that do something?
MadcapJake m: my @a = 'a', 'b', 'c'; for @a { $_ = $_.uc }; say @a 19:09
camelia rakudo-moar 704c58: OUTPUT«[A B C]␤»
hoelzro m: say flat ((1, 2, 3), (4, 5, 6)); my @d = ((1, 2, 3), (4, 5, 6)); say flat @d;
camelia rakudo-moar 704c58: OUTPUT«(1 2 3 4 5 6)␤((1 2 3) (4 5 6))␤»
MadcapJake oh sweet, it didn't work in my terminal (I think $_ is a special shell var)
hoelzro is there a way I can convince @d to flatten so that the second output has the flattened contents like the first output?
mspo are you using single quotes?
[Coke] docs - doc.perl6.org/language/unicode_entry should mention how to use named characters or codepoints to generate a string.
Juerd I can't find on perl6.org where you can report bugs. 19:10
MadcapJake i used double that time because I didn't want to type double quotes around all the letters xD
Skarsnik supernovus, Ho hello, I think there is a leak in XML::Element.elements gist.github.com/Skarsnik/5dfb0dce3b517f13d767 kept growing in memory :( 19:11
ilmari m: my @a = <a b c>; for @a { $_ .= uc }; say @a
camelia rakudo-moar 704c58: OUTPUT«[A B C]␤»
mspo m: my @a = <<a B c>>; for @a { $_ = $_.uc }; say @a;
camelia rakudo-moar 704c58: OUTPUT«[A B C]␤»
MadcapJake mspo: yep that was it :P shell fail!
DrForr Juerd: [email@hidden.address] # but if it's not mentioned there it should be.
mspo ilmari: nice
ilmari m: my @a = <a b c>; for @a { .= uc }; say @a
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/iooDQNJMzQ␤Preceding context expects a term, but found infix .= instead␤at /tmp/iooDQNJMzQ:1␤------> 3my @a = <a b c>; for @a { .=7⏏5 uc }; say @a␤»
MadcapJake ilmari: always forget about that lovely .= operator
Juerd DrForr: Thanks!
DrForr It may be @perl.org, its been a while since I've had occasion to use it. 19:12
Juerd [email@hidden.address] according to google 19:13
flussence `perl6 -Mtrace` only goes one file level deep, not very useful when Pod::Coverage's test file is 3 lines long...
[Coke] m: say "hi\c[WORD JOINER]world"
camelia rakudo-moar 704c58: OUTPUT«hi⁠world␤»
DrForr Like I said :)
Juerd Sent! 19:14
19:14 FROGGS joined
diakopter without the plural 19:14
dalek kudo/resources: 2c916e3 | (Stefan Seifert)++ | src/ (2 files):
Make CompUnit objects available to higher level loading code

Perl6::World's self.do_pragma_or_load_module now has access to the CompUnit object instead of just the low level CompUnit::Handle. This way we have access to all the other properties, like .distribution.
flussence and `perl6-debug-m` doesn't work at all, looks like I'll have to do this the good old php way.
n0tjack m: my $a=92; say <<b $a c>>; 19:15
camelia rakudo-moar 704c58: OUTPUT«(b 92 c)␤»
ZoffixW :o
flussence *sigh*... adding debug prints makes the code break differently
Juerd jnthn: Golfed the mysteriously halting code, reported bug. rt.perl.org/Public/Bug/Display.html?id=126787
jnthn Juerd: Thanks. :)
Juerd Didn't really golf all the way because I thought it'd be annoying without the extra whitespace ;) 19:16
n0tjack m: my @a=(92,12,13); say <<b @a c>>;
camelia rakudo-moar 704c58: OUTPUT«(b @a c)␤»
n0tjack m: my @a=(92,12,13); say <<b @a[] c>>;
camelia rakudo-moar 704c58: OUTPUT«(b 92 12 13 c)␤»
n0tjack heh
uruwi Yep, one of the weak points 19:17
n0tjack uruwi: well, i understand why: now @ is almost as common as F or H
though I while the [] suffix is somewhat mnemonic, it's a bit unintuitive
Juerd I can definetely live without interpolating @foo[], %foo<>, etc, as long as we can keep {}. It's great! 19:18
supernovus Nope, still dies with "Dependency PSGI is not present in the module ecosystem". How odd. 19:19
19:19 sivoais joined
ZoffixW weird 19:20
jnthn Juerd: Yes, bug golfing is more concept golfing than character golfing. 19:21
Juerd Once you're done with the graphemes, you can move on to normalizing concepts ;)
We need that abstraction, so we can count the number of concepts, in order to have concept golfing competitions! ;) 19:22
MadcapJake any way to define something inside a proto and have it accessible in the multis?
jnthn calls FUD on "this will be a source of hard-to track down bugs", fwiw.
Juerd Hmmm. I do wonder what golfed Perl 6 would look like.
jnthn: What is? Or would be? 19:23
jnthn Juerd: gist.github.com/deepakg/a2f19e077e...e1-txt-L31
Juerd Oh, that one 19:24
Anyone with md5sum can track the bugs down, but I do doubt that people will be used to that kind of debugging.
jnthn Yes, other tools maybe don't support Unicode as well as they should.
ZoffixW Man, I'm unlucky -_-
jnthn One would hope the trend will be towards them doing s.
ZoffixW Another panda installation issue gist.github.com/zoffixznet/ab2f79eba1495e5b9318
Juerd But it's a skill they'll quickly pick up :P
jnthn *so
Juerd will, for now, refrain from using é in passwords. 19:25
MadcapJake what if I did a state variable inside a proto, would it be accessible in the dispatched multis? 19:26
jnthn MadcapJake: Only if you declared it dynamic.
19:26 uruwi left
jnthn state $*FOO or so 19:26
nine ZoffixW: /home/zoffix/.rakudobrew/moar-nom/install/share/perl6/site/sources should have been installed by rakudo's make install!?
jnthn dinner &
Juerd Bon apetit
MadcapJake jnthn: any downsides to doing that? Or should I just repeat the logic in each multi? 19:27
ZoffixW nine, it's there and has a bunch of stuff in it: gist.github.com/zoffixznet/1ea1b1cc490612dc2ce2
MadcapJake, have a helper sub you call in the multis? 19:28
MadcapJake oh that's good, thanks ZoffixW!
nine ZoffixW: oh, so it probably can't find the source file
ZoffixW: /var/www/tmp/p6high.xtatik.org/.panda-work/1449084519_1/lib/Text/VimColour seems to be missing the file extension?
19:29 kjk joined
Skarsnik why not prefix these sha with their filename? x) 19:29
nine ZoffixW: yep, the extension is missing in github.com/stmuk/p6-Text-VimColour.../META.info
ZoffixW Aha!
nine, thanks. Nice bug tracing :)
I'll submit a pr
nine Skarsnik: I need to be able to look the files up while having only the SHA
Skarsnik I think Test::Meta should a mandatory test x) 19:30
+be
19:31 uruwi joined
flussence okay, I've narrowed down Pod::Coverage's infinite loop to Pod/Coverage/Full &parse-exports — it's doing something weird with introspection on JSON::Tiny/Test/Test::Coverage that ends up self-referencing. I've no idea *what* it's supposed to do but hopefully someone smarter will be able to take it from there :) 19:31
supernovus bbl 19:32
19:32 Deepak left, supernovus left
ZoffixW .tell stmuk_ sent you a PR: github.com/stmuk/p6-Text-VimColour/pull/11 19:32
yoleaux ZoffixW: I'll pass your message to stmuk_.
flussence
.oO( if only that method had some documentation )
timotimo ooooh supernovus is (was) here! 19:33
19:33 olinkl left, Ch0c0late left, SmokeMachine__ left, kipd left
kjk what's perl6's equivalent of a 'finally' block found in other programming languages? 19:34
Skarsnik LAST { } ?
19:34 lestrrat left
kjk I tried that, but it won't be run...: try { say "hohoh"; LAST { say "done!" } } 19:35
19:35 raiph left
kjk only outputs "hohoh" 19:35
timotimo Juerd: you said "@ vars are always Arrays"; not quite true, because now we have the "is" trait on variables work properly! <3
19:35 domidumont joined
timotimo m: my @foobar is Buf[int]; say @foobar.perl 19:35
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Qq5RZ__NWx␤Can't use unknown trait 'is ' in a variable declaration.␤at /tmp/Qq5RZ__NWx:1␤------> 3my @foobar is Buf[int]7⏏5; say @foobar.perl␤ expecting any of:␤ TypeObject␤ d…»
19:35 domidumont1 left
timotimo uhm 19:36
forget i said anything, i guess?
Juerd kjk: LEAVE 19:37
19:37 ggherdov left
Juerd kjk: No, don't go. Stay! 19:37
timotimo hahaha
19:37 cdg left
Juerd kjk: I meant: instead of LAST, use LEAVE. 19:37
diakopter XD
19:37 _mg_ joined
kjk lol 19:37
Skarsnik kjk, I don't remember, finaly will be always executed?
timotimo perhaps NEXT should be called STAY instead?
Juerd m: try { say 1; die; say 2; LEAVE { say 3 } }
camelia rakudo-moar 704c58: OUTPUT«1␤3␤»
kjk Skarsnik: yah, i thought a 'finally' block is supposed to be run regardless if there's an exception or not 19:38
n0tjack why are phasers all CAPITALIZED?
Juerd n0tjack: Makes them stand out
n0tjack why should they stand out more than flow control?
or die etc?
moritz are there any volunteers for tomorrow's advent post?
timotimo because it's WEIRD flow control
19:38 lestrrat joined
Juerd n0tjack: I personally wouldn't mind having RETURN and DIE... :) 19:39
moritz or maybe somebody who has a slot later, but already finished his post, could do it earlier?
n0tjack Juerd: I want OHNOOOOOOOOOE
Juerd n0tjack: But I'm quite happy with phasers being uc, because we don't use them quite as often as return and die, and it's harder to recognise leave { ... } as something special, than it is to recognise LEAVE { ... }
timotimo n0tjack: can be made with a slang :)
Slang::Phasers::Humor 19:40
n0tjack Has anyone done a LOLCAT slang?
Juerd The word 'slang' is weird to me. Slang is dutch for 'snake', so it makes me think of Python.
Skarsnik I want HAZ in NC
ZoffixW Juerd, "Sub LANGuage" :)
moritz, do you mean the 4th? I might be done with mine by then. I have a day off tomorrow.
Juerd ZoffixW: Sub as in inferior? :P
kjk Juerd: thanks! that worked 19:41
ZoffixW Juerd, Sub as in subsystem
Juerd Obviously inferior to a supersystem.
ZoffixW heh
moritz ZoffixW: yes, the 4th, not tomorrow, sorry
ZoffixW: and yes, that would be awesome
Juerd They never did release "The Adventures of Subman", did they? 19:42
ZoffixW K, I'll finish the article off tomorrow morning (EST time)
Juerd kjk: And the great thing about having a LEAVE phaser instead of "finally", is that it'll work for any block.
Hotkeys ZoffixW: slang is slang for sub language? 19:43
:P
ZoffixW :P
19:43 Deepak joined
Juerd m: say 1; die; say 2; LEAVE { say 3 } 19:43
camelia rakudo-moar 704c58: OUTPUT«1␤3␤Died␤ in block <unit> at /tmp/X9n_0qPl08:1␤␤»
[Coke] can we bundle the http-proxy aware client with panda before christmas?
kjk Juerd: awesome! just need some getting used to lol
Juerd Even though it died, we still get the 3! :)
zengargoylew dunno, i've used LAST in loops quite a bit.
dalek : 32f17f4 | (Matthew Wilson)++ | misc/perl6advent-2015/schedule:
Update schedule
moritz diakopter: thanks 19:44
ZoffixW diakopter, thanks
moritz, you owe me a coke
:)
MadcapJake Why would I get a "no 'self' available" error inside a proto inside a class?
Juerd zengargoylew: Can you give an example? I couldn't wrap my head around why you'd want LAST instead of just having that code after the loop's body.
moritz ZoffixW: come to the German Perl Workshop 2016 and I'll gladly buy you one
ZoffixW That's too far both temporally and geographically :) 19:45
moritz Juerd: the advantage of LAST is that it's inside the lexical scope of the loop
[Coke] ZoffixW, moritz: how did I get roped into this? ;)
zengargoylew Juerd: that's pretty much it... but it can avoid a test if the loop doesn't need to execute. like putting a '.' at the end of something.
ZoffixW :P
Skarsnik Juerd, if you break the loop with a last?
moritz Juerd: so you don't have to leak variables out of the loop just to print them afterwards, for example
Juerd moritz: I can see how that's useful.
zengargoylew: I don't quite understand what you mean by test if the loop doesn't need to execute.
uruwi Apologies for interrupting.
19:46 mobo joined
zengargoylew moritz++ that's also what i've used them for. 19:46
uruwi If Find::Bundled is in the ecosystem, shouldn't it be installable by Panda?
Juerd Skarsnik: Code after the loop is also executed if the loop is exited with last.
zengargoylew for @stuff -> { say $_; LAST { say "did stuff" } }
FROGGS uruwi: that's the plan, yes 19:47
zengargoylew no @stuff, no 'did stuff'
19:47 Deepak left
zengargoylew vs say 'did stuff' if @stuff; 19:47
uruwi FROGGS: Plan?
FROGGS uruwi: the basic idea of putting stuff in the ecosystem
19:48 yqt joined
MadcapJake I am getting an error that @!presses is used where no 'self' is available: github.com/MadcapJake/p6-xtest/blo...st.pm6#L98 19:48
Juerd zengargoylew: Ooooh! Now I get it! That's great :)
kjk is there currently anyway to not fail a decode? i.e., if mybuf.decode('utf-8') fails to decode something that's acutally not encoded in utf-8, substitute it with some '?' character or silently ignore such failures
Skarsnik there is a new encoding for that I think? 19:49
flussence m: say Buf.new(|(^256).roll(40)).decode('utf8-c8').perl
camelia rakudo-moar 704c58: OUTPUT«(signal ABRT)*** Error in `/home/camelia/rakudo-m-inst-2/bin/moar': munmap_chunk(): invalid pointer: 0x0000000003c46d60 ***␤======= Backtrace: =========␤/lib64/libc.so.6(+0x730bf)[0x7f34bcf870bf]␤/lib64/libc.so.6(+0x7892e)[0x7f34bcf8c92e]␤/home/cam…»
19:49 mobo left
flussence guess not :D 19:49
zengargoylew for @tests { state $c; $c++ if my_test($_); LAST { is $c, @tests.elems, 'passed all tests' } } 19:50
moritz kjk: method encode has a :replacement named argument; I don't think decode has the same
kjk flussence and moritz: ic...:( thanks 19:51
Juerd Nope, no :replacement yet :(
IMHO utf8-c8 should be the default for decode.
MadcapJake figured it out, I didn't know that my proto needed to also be a method :P
19:51 ZoffixW left
uruwi m: say Buf.new(|(^256).roll(40)).decode.perl 19:52
camelia rakudo-moar 704c58: OUTPUT«Malformed UTF-8 at line 1 col 1␤ in block <unit> at /tmp/isKSc_QtT2:1␤␤»
leedo flussence: poking about Pod::Coverage::Full, it seems like the require ::($!toload); fails, which may be leading to further errors
Juerd I have .decode("utf8-c8") everywhere, and 0 occurrences of bare .decode, because I simply don't want my code to die on malformed input.
uruwi m: say Buf.new(|(^256).roll(40)).decode('utf8-c8').perl
camelia rakudo-moar 704c58: OUTPUT«(signal ABRT)*** Error in `/home/camelia/rakudo-m-inst-2/bin/moar': munmap_chunk(): invalid pointer: 0x0000000003c7edf0 ***␤======= Backtrace: =========␤/lib64/libc.so.6(+0x730bf)[0x7ff0cfb090bf]␤/lib64/libc.so.6(+0x7892e)[0x7ff0cfb0e92e]␤/home/cam…»
19:52 brrt joined
Juerd m: Buf.new(123, 65).decode("utf8-c8").say 19:52
camelia rakudo-moar 704c58: OUTPUT«{A␤»
Juerd Heh, 123 is too low.
m: Buf.new(200, 65).decode("utf8-c8").say
camelia rakudo-moar 704c58: OUTPUT«A␤»
Juerd m: Buf.new(200, 65).decode("utf8").say 19:53
camelia rakudo-moar 704c58: OUTPUT«Malformed UTF-8 at line 1 col 1␤ in block <unit> at /tmp/nNqFeHyAty:1␤␤»
brrt \o #perl6
Juerd Hi brrt
brrt hi Juerd
19:54 chansen_ left, pnu left
n0tjack I love how flexible and intuitive array/hash slicing is in p6 19:54
timotimo except when you have a lazy sequence that's longer than the array you're slicing :) 19:55
n0tjack haven't hit that hurdle yet :)
I'm not used to lazy lists, so I don' tuse them much (yet)
timotimo it has recently(ish) been made more intuitive-ish 19:56
m: my @a = <hi you there>; .say for @a[^10]
camelia rakudo-moar 704c58: OUTPUT«hi␤you␤there␤(Any)␤(Any)␤(Any)␤(Any)␤(Any)␤(Any)␤(Any)␤»
timotimo m: my @a = <hi you there>; .say for @a[lazy ^10]
camelia rakudo-moar 704c58: OUTPUT«hi␤you␤there␤»
19:57 ribasushi left
timotimo ^- lazy sequences will automatically truncate when reaching (past) the end 19:57
nine Ok, I need help. How can I get a %?RESOURCES variable into currently compiling code?
timotimo is $*W.install_lexical_symbol the right thing for you, nine? 19:58
19:59 khw left, Spot__ left, zemmihates left, corbyhaas left, clkao left
timotimo oh 19:59
make_variable_from_parts knows about a few $? variables
$?LINE and $?FILE
&?BLOCK and &?ROUTINE
that could very well be the right thing for %?RESOURCES 20:00
Juerd My simple MQTT program uses hundreds of MBs of memory, ever increasing. Is there a way to figure out where this is all going?
nine timotimo: yes. Yet I'm struggling to get the information there to make it accessible
timotimo Juerd: the --profile output will tell you where things get allocated, but that may not be granular enough
nine: don't forget you can just generate code there that looks stuff up, or calls a sub from the core to get the data together
Juerd Heh, --profile segfaults after a second :) 20:01
timotimo Juerd: urgh! i forgot you are using multi-threaded stuff
that's NYI
Juerd Oh
Skarsnik could be interesting to have access to some GC value, like the amount of ram curently used, nb item alloc/free? could make for more fine profiling maybe 20:02
timotimo well, all we need is an op (extop even) that gives you access to the ThreadContext. after that, you can do everything with NativeCall. just have to make extra sure the GC doesn't jump in between doing things, otherwise you'll blow up spectacularly :D 20:03
mspo -XX:-PrintGCDetails -XX:-PrintGCTimeStamps :) 20:04
MadcapJake Why can't I access attributes inside a proto method? I am getting "cannot look up attributes in a type object" for this line: github.com/MadcapJake/p6-xtest/blo...st.pm6#L96
timotimo MadcapJake: sounds like someone/something is invoking that method on an undefined value
20:04 chansen_ joined
timotimo MadcapJake: you can put XTest:D: at the beginning of your signature to force calling it on defined values only 20:05
20:06 SmokeMachine__ joined
MadcapJake can you do that for CPointer's too? 20:06
timotimo sure
20:07 ribasushi joined
MadcapJake i'm not sure what's undefined though :( 20:07
timotimo the backtrace doesn't tell you?
oh. it could also be that @!presses is undefined 20:08
Skarsnik It's sad I don't manage to compile the clang branch of smokegen (the tool to build kde/qt binding) that look so promissing to generate binding x) pastebin.com/19RAKtfN && pastebin.com/0WjdK5LR :(
MadcapJake error was in my test code :P 20:09
timotimo glad to hear you found it :)
brrt (for some reason i can't install Devel::REPL for perl5 :-()
timotimo then get Reply instead
20:10 ZoffixW joined
timotimo brrt: ^ 20:10
ZoffixW Hey. I'm trying to make a hash where $0 is a key and $1 is value. Can't figure it out :S
m: my $m = "foo=bar\nber=beer\nbor=boor" ~~ m:g/^^(\w+)'='(\w+)/; say $m.chunks
camelia rakudo-moar 704c58: OUTPUT«Method 'chunks' not found for invocant of class 'List'␤ in block <unit> at /tmp/kEfeZ7q8wt:1␤␤»
brrt Reply doesn't have readline
20:10 clkao joined
brrt or should i install that seprately 20:10
timotimo it does not? 20:11
mst was like "damn, son, Reply is so much better than Devel::REPL!"
so i just thought it'd be the best thing ever
masak m: "foobar" ~~ /(...)(...)/; my %h = ~$0 => ~$1; say $h.perl
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/yW2N_3t3sk␤Variable '$h' is not declared. Did you mean '%h'?␤at /tmp/yW2N_3t3sk:1␤------> 3~ /(...)(...)/; my %h = ~$0 => ~$1; say 7⏏5$h.perl␤»
masak m: "foobar" ~~ /(...)(...)/; my %h = ~$0 => ~$1; say %h.perl
camelia rakudo-moar 704c58: OUTPUT«{:foo("bar")}␤»
MadcapJake does NativeCall work with .h files? or only .so files?
masak ZoffixW: ^^
mst Reply does have readline
ilmari brrt: it does, asl ong as you have Term::ReadLine::Gnu installed
timotimo MadcapJake: only .so files and .dll and .dylib
MadcapJake hrrm, well now I don't know what to do, I need to access /usr/include/X11/Xlib.h 20:12
ZoffixW m: "foo=bar\nber=beer\nbor=boor" ~~ m:g/^^(\w+)'='(\w+)/; my %h = ~$0 => ~$1; say %h.perl
camelia rakudo-moar 704c58: OUTPUT«{"foo=bar" => "ber=beer"}␤»
brrt oh really
MadcapJake oh i just need to find the right name I think
brrt oh, thanks!
timotimo MadcapJake: we have a C parser, i think
mst note that even Eval::WithLexicals' tinyrepl has readline support if you install ::Gnu 20:13
20:13 ggherdov joined
ZoffixW m: my %h; for ( "foo=bar\nber=beer\nbor=boor" ~~ m:g/^^(\w+)'='(\w+)/ ) -> $m { %h{$m[0]} = $m[1]; }; say %h 20:13
camelia rakudo-moar 704c58: OUTPUT«ber => 「beer」, bor => 「boor」, foo => 「bar」␤»
mst which is what I use, because I don't actually use any of the features in more clever things
ZoffixW This works, I guess
mst but Reply is a much better standard answer
20:14 zakharyas joined
ZoffixW misses the P5 version; my %h = "foo=barnber=beernbor=boor" =~ /^(w+)=(w+)/mg 20:14
20:14 pnu joined
MadcapJake how do I get grep to find a literal `.` I tried backslash but it's still giving me any character 20:15
(grep in shell)
moritz MadcapJake: grep -F .
timotimo m: my %res = flat "foo=bar\nber=beer\nbor=boor".comb(/^(\w+)\=(\w+)$/, :match); say %res.perl
camelia rakudo-moar 704c58: OUTPUT«{}␤»
timotimo m: say "foo=bar\nber=beer\nbor=boor".comb(/^(\w+)\=(\w+)$/, :match).perl
camelia rakudo-moar 704c58: OUTPUT«()␤»
timotimo m: say "foo=bar\nber=beer\nbor=boor".comb(/^(\w+)\=(\w+)/, :match).perl 20:16
camelia rakudo-moar 704c58: OUTPUT«(Match.new(ast => Any, list => (Match.new(ast => Any, list => (), hash => Map.new(()), orig => "foo=bar\nber=beer\nbor=boor", to => 3, from => 0), Match.new(ast => Any, list => (), hash => Map.new(()), orig => "foo=bar\nber=beer\nbor=boor", to => 7, from =…»
timotimo m: say (flat "foo=bar\nber=beer\nbor=boor".comb(/^(\w+)\=(\w+)/, :match)).perl
camelia rakudo-moar 704c58: OUTPUT«(Match.new(ast => Any, list => (Match.new(ast => Any, list => (), hash => Map.new(()), orig => "foo=bar\nber=beer\nbor=boor", to => 3, from => 0), Match.new(ast => Any, list => (), hash => Map.new(()), orig => "foo=bar\nber=beer\nbor=boor", to => 7, from =…»
timotimo m: say %(flat "foo=bar\nber=beer\nbor=boor".comb(/^(\w+)\=(\w+)/, :match)).perl
camelia rakudo-moar 704c58: OUTPUT«Odd number of elements found where hash initializer expected␤ in block <unit> at /tmp/r8r6Agh9qo:1␤␤»
timotimo hmm.
m: say %(flat "foo=bar\nber=beer\nbor=boor".comb(/^(\w+)\=(\w+)/, :match)>>.list).perl
camelia rakudo-moar 704c58: OUTPUT«{:foo(Match.new(ast => Any, list => (), hash => Map.new(()), orig => "foo=bar\nber=beer\nbor=boor", to => 7, from => 4))}␤»
moritz timotimo: need ^^ instead of ^ for one
timotimo m)
MadcapJake ok so there's actually no xlib.so file...
timotimo moritz: good point
ZoffixW Oh, I forgot about comb
mst ilmari: isn't Term::ReadLine::Perl5 also usable?
timotimo m: say %(flat "foo=bar\nber=beer\nbor=boor".comb(/^^(\w+)\=(\w+)$$/, :match)>>.list>>.Str).perl 20:17
camelia rakudo-moar 704c58: OUTPUT«Odd number of elements found where hash initializer expected␤ in block <unit> at /tmp/QV0v0u7cVz:1␤␤»
timotimo m: say (flat "foo=bar\nber=beer\nbor=boor".comb(/^^(\w+)\=(\w+)$$/, :match)>>.list>>.Str).perl
camelia rakudo-moar 704c58: OUTPUT«($("foo", "bar"), $("ber", "beer"), $("bor", "boor")).Seq␤»
timotimo oh, is that so.
ilmari mst: no idea, I always use ::Gnu
timotimo m: say ("foo=bar\nber=beer\nbor=boor".comb(/^^(\w+)\=(\w+)$$/, :match)>>.list>>.Str>>.flat).perl
camelia rakudo-moar 704c58: OUTPUT«($(("foo",).Seq, ("bar",).Seq), $(("ber",).Seq, ("beer",).Seq), $(("bor",).Seq, ("boor",).Seq))␤»
timotimo m: say %("foo=bar\nber=beer\nbor=boor".comb(/^^(\w+)\=(\w+)$$/, :match)>>.list>>.Str>>.flat).perl
camelia rakudo-moar 704c58: OUTPUT«Odd number of elements found where hash initializer expected␤ in block <unit> at /tmp/N5igqhqy4M:1␤␤»
mst ilmari: same, hence my hoping you'd know ;)
20:17 _nadim joined
timotimo >:( 20:17
ZoffixW :)\
20:17 nadim left
timotimo m: say %(gather "foo=bar\nber=beer\nbor=boor".comb(/^^(\w+)\=(\w+)$$/, :match)>>.list>>.Str>>.take).perl 20:17
camelia rakudo-moar 704c58: OUTPUT«{:ber("beer"), :bor("boor"), :foo("bar")}␤»
timotimo there you go. it's terrible, but it works
ZoffixW Thanks :) That's terrible :) 20:18
timotimo here's a much shorter one:
m: say %("foo=bar\nber=beer\nbor=boor".comb(/(\w+)/)).perl
camelia rakudo-moar 704c58: OUTPUT«{:ber("beer"), :bor("boor"), :foo("bar")}␤»
jnthn MadcapJake: Factoring stuff out into a proto isn't a bad idea, no. That's why we allow it. :)
timotimo m: say %("foo=bar\nber=beer\nbor=boor".comb(/\w+/)).perl
camelia rakudo-moar 704c58: OUTPUT«{:ber("beer"), :bor("boor"), :foo("bar")}␤»
MadcapJake so is there a route I can take to use header files, I can't find any xlib.so files on my machine. 20:19
20:19 Spot__ joined
ilmari MadcapJake: xlib? do you mean libx11? 20:19
libX11, rather
timotimo MadcapJake: libX11.so
MadcapJake oh i'm a dufus apparently xD
timotimo MadcapJake: but libxcb is probably something nicer to bind anyway 20:20
ilmari although if you're doing things from scratch... what timotimo said
MadcapJake well I already wrote nativecall wrappers for xlib.h, I wonder if that'll just work with libx11.so
timotimo xcb probably also comes with "binding implementor friendly" data or docs
20:20 telex left, darutoko left
timotimo as long as the names that are to be found in xlib.h are provided by libX11.so, that's fine. nm can tell you (dunno which flags to pass for that) 20:21
MadcapJake cool, well let me try libx11.so and then if that doesn't work I'll go from there, this wrapper is really small
ilmari aiui large parts of xcb is generated from XML protocol descriptiosn
20:22 corbyhaas joined, telex joined 20:24 brrt left
jnthn TimToady: Did you happen to think any more on Rxx thunkery? 20:24
timotimo MadcapJake: if libX11 doesn't give you what you want, perhaps try ldd (which xmessage) or something ;) 20:25
for example, is libXt perhaps the library you use for the "XTest" extension? who knows! 20:26
20:26 Ch0c0late joined
MadcapJake to be clear, my ultimate goal is to be able to programmatically run keyboard commands 20:26
nine jnthn: what exactly was your plan with CompUnit if I may ask? It contains a lot of interesting information, but how would one access it? 20:27
MadcapJake timotimo: thanks for the refs, i'll check those out
20:28 domidumont left
jnthn nine: I was meant to have a plan? /o\ 20:28
nine: Is the use case you have in mind needing access to it within the compunit itself?
nine jnthn: well, %?RESOURCES could benefit from it 20:29
But it's kind a hard to access a CompUnit that's not even assembled yet since for that we need the CompUnit::Handle which means that we already have to compile the code. 20:30
jnthn Yeah. I mean, I was expecting we'd have a way to query all the loaded compunits.
ZoffixW Is there any way to make my grammar work? It only works if I remove all lines that do not start with a dot:
m: gist.github.com/zoffixznet/4b066b9928a6a89e8dae
camelia rakudo-moar 704c58: OUTPUT«(Any)␤»
nine Oh, yes, $*REPO.loaded
jnthn That walks the chain too? 20:31
zengargoylew MadcapJake: do you know how to do what you are trying to do? suggesting looking at a program `xdotool` which lets you programatically (or manually) simulate keyboard input and mouse activity
nine jnthn: no, but that would be the simple part.
Ok, so assuming that we don't want to make the whole CompUnit available, I still have to figure out how to get the %?RESOURCES from the Repository to the code in Perl6::Actions 20:32
jnthn OK, so what's missing is how a given file can ask for its compunit object.
20:32 kipd joined
MadcapJake zengargoylew: yeah i saw that but it seems to require you to specify the window, and I just want to run the keyboard shortcut. I might just take another look at that 20:33
nine I just thought if you meant the CompUnit to be available from within the computation unit during compilation, we'd have to remove the is required. We don't have to just for %?RESOURCES
jnthn Yes, true
I'm not sure we need the CompUnit object to be reachable from there, tbh 20:34
But we still need a way to map the current file to a dist, so we can find its resources
ZoffixW Figured it out:
m: gist.github.com/zoffixznet/514bc71d256f386c9969
jnthn I'm a tad concerned how this'll work out with FileSystem 20:35
camelia rakudo-moar 704c58: OUTPUT«Constant => color: #0000c0; text-decoration: underline; ␤Comment => color: #c00000; font-weight: bold; ␤Special => color: #c000c0; font-weight: bold; ␤Identifier => color: #804000; text-decoration: underline; ␤Statement => color: #008080; font-weig…»
jnthn Since people will want to get at their resources while in development too
20:35 raiph joined
jnthn So that also needs considering into it. 20:35
Dunno if there was already a solution on that one... 20:36
mst bah, brrt has already gone
timotimo: you inspired me: shadow.cat/blog/matt-s-trout/mstpan-17/
hopefully people who go via that page won't forget ::Gnu
TimToady If it weren't for the long compile times, I'd never get any backlogging done... :) 20:37
ZoffixW heh
arnsholt nine: Question: What's the purpose of the embedded script snippet in CompUnit::Repository::Installation? I can't quite make sense of it 20:38
ab5tract can valid utf be provided in a non-NFD-or-NFC form?
mst TimToady: <obligatory xkcd> 20:39
jnthn ab5tract: UTF-whatever is about bytes => codepoints, NF* is about codepoints => codepoints
20:39 CIAvash left
timotimo mst: REPL is also a four-letter-word :D 20:40
ab5tract jnthn: interesting... who ever guessed this would be hard? :)
jnthn ab5tract: Certainly you could end up with UTF-* that decodes to codepoints that are neither in NFD nor NFC.
mst timotimo: that's not a word, it's an ETLA
n0tjack how does one enhashulate a list of Pairs? like <a 1 b 2 c 2>.pairup is a list of pairs but not a hash - I wanna hash it
(anonymously)
jnthn .hash ? :)
n0tjack damn you perl6
mst always best to remain anonymous when making a hash of things
ab5tract ok. i was going to float a proposal to have a code-point form flag that would enum to NFC/NFD for easy roundtripping
20:40 chansen_ left
flussence 're.pl is still the best name for a perl REPL ever' ~~ s/ perl// # IMO :) 20:40
timotimo n0tjack: just %(...) it 20:41
n0tjack I should just try typing the obvious function name before asking any questions :/
mst flussence: well, but you'd lose the .pl gag
ab5tract but naive solutions don't seem to cover these darn character encodings very well :)
mst which was have the [fp]un
n0tjack thanks jnthn, timotimo
mst s/have/half/
_nadim is it possible to get, from the parser, where an object was declared? 20:42
ab5tract i think it makes sense that if you want byte-for-byte behavior, you need to go Buf
MadcapJake libxtst (xtest, i believe) is in my /user/share/docs but there is no .so file for some reason :(
ab5tract it just stinks to have to caveat our "absolutely awesome Unicode support!" with anything at all, no matter how trivial 20:43
nine arnsholt: that's the code for the wrapper scripts (like the installed panda script) that look up the location of the real script code and run that.
20:43 empT joined, olinkl joined
timotimo do we have file and line methods on code objects now in rakudo? 20:43
20:43 Begi joined
jnthn ab5tract: The problem isn't our Unicode support, it's thing that say they support it, but then don't understand that comparison cannot be done at byte level without normalizing. 20:43
timotimo m: say &infix:<+>.^methods 20:44
camelia rakudo-moar 704c58: OUTPUT«(<anon> IS_PURE <anon> <anon> <anon> soft <anon> <anon> yada perl <anon> onlystar candidates unwrap wrap <anon> <anon> package leave <anon> <anon> cando <anon> <anon> <anon> <anon> multi <anon> <anon> add_phaser phasers assuming WHY set_why perl of <anon> …»
jnthn *things
timotimo m: say &infix:<+>.^methods.grep(*.name ne '<anon>')
camelia rakudo-moar 704c58: OUTPUT«(IS_PURE soft yada perl onlystar candidates unwrap wrap package leave cando multi add_phaser phasers assuming WHY set_why perl of returns fire_phasers has-phasers count line file of ACCEPTS signature Str arity returns new outer static_id)␤»
20:44 dalek left
timotimo _nadim: you can .^find_method('new').file and .^find_method('new').line :) 20:44
20:44 dalek joined, ChanServ sets mode: +v dalek
MadcapJake lol stupid case-sensitive linux commands :P it was there all along as Xtst instead of xtst... o_O 20:45
timotimo (if it actually defines a new method.. though you will probably get the proto method new that lives inside Any or Mu)
jnthn ab5tract: That's question #1 in the Unicode normalization FAQ. :) unicode.org/faq/normalization.html#1
ab5tract jnthn: totally. and that's where "Unicode" hits the wall of 'crap I need to be ones and zeros' anyway. there was a time where I equated UTF-* and Unicode..
empT question about sub MAIN ... can named args be extracted (in a manner similar to @*ARGS)
ab5tract that didn't turn out very well :)
timotimo empT: you mean like when using a slurpy hash with the *%foo syntax?
empT i guess. in many scripts i like to just dump the args (& names) at start of execution for debug mode so i can tell from log/output how it was run. 20:46
_nadim timotimo: trying it, thanks
zengargoylew MadcapJake: i'm thinking that keypresses are *always* sent to a window. it's just the root window vs a normal visible window. IIRC... been ages since i've done X stuff. 20:47
20:47 muraiki joined
ab5tract jnthn: in fact I can imagine a library that "solves" the roundtripping question by having an object that "has Buf $!original; has Str $!normalized;" 20:47
timotimo m: say Hash.^can('new').perl
camelia rakudo-moar 704c58: OUTPUT«(method new (Map $: *@args, *%_) { #`(Method|68551192) ... }, method new (Mu $: | is raw) { #`(Method|67645472) ... })␤»
20:47 ZoffixW left
timotimo _nadim: .^can will give you multiple candidates, that may help you more than .^find_method 20:47
hehe, hehe. "can"didates 20:48
ab5tract where if you change that object's Str in any way, you have already broken roundtrip expectations for that var and the normalized form is fine to print out
or spurt, or what have you
MadcapJake zengargoylew: ok maybe that was my misunderstanding, xdotool has you enter a string WM_CLASS I believe (or something like that)
ab5tract jnthn: or am I again being too naive? :) 20:49
clarification: I'm not arguing for that to be in core, save for the arguable use case in IO* 20:50
jnthn ab5tract: You would need to make sure it does the right thing on output. :) 20:51
But yes, could probably do something like that, but you'd need to consider how to handle string operations on it too
Oh, but you already said that :) 20:52
And I only read the highlighted lines :)
20:52 zemmihates joined
empT timotim: yeah, say i have sub MAIN(Int :$nstart = 1, Int :$pnstart = 100, ...etc...) { ... I'd like to easily dump the values of all args, overridden or not 20:52
ab5tract but ... if i put a Buf as the filename arg to spurt, won't it cast it to Str anyway? hmmm 20:53
20:53 chansen_ joined
ab5tract to the source! 20:54
mst UTSL
ab5tract :) 20:55
for once, with rakudo, I can
mst I do it with the perl5 VM sometimes, but you do kinda have to be a masochist for that one
ab5tract haven't had that luxury with programming languages before
mst: problem is, Perl convinced me very quickly that I had no reason to maintain interest in C 20:56
for personal reasons, of course
I'm just not a hotrodder or a register junky
Skarsnik C with some libs (like glibs) is not bad to write
mst I learned C to write qmail extensions
ab5tract Skarsnik: I don't mean to imply it 20:57
mst I am ... atypical
20:57 zengargoylew left
ab5tract please keep in mind that I am talking about C 89 20:57
and playing with Perl before understanding character pointers
it was like "why bother?"
mst note also that I can read C quite well, but can't really write it
ab5tract that was in '97
arnsholt nine: Oh, it looks up the location of the perl6 program?
mst it's just useful when you're trying to figure out how the guts of something work
timotimo empT: in general, you can get that by putting a |capture argument at the very beginning; i don't know if the introspection understands that to provide proper USAGE text for you, though 20:58
ab5tract contrast that with Perl 6, where I've actually learned a fair bit of the language by looking at the _implementation_ of the language...
timotimo m: say foo(|c, :$nam1, :$nam2) { say c.hash.perl }; foo(:nam1(10), :nam2<foo>);
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7DLVHyxhXt␤Variable '$nam1' is not declared␤at /tmp/7DLVHyxhXt:1␤------> 3say foo(|c, :7⏏5$nam1, :$nam2) { say c.hash.perl }; foo(␤»
ab5tract mst: certainly so :)
timotimo wat %)
MadcapJake oi, now I need to fgure out how to get a MIT-MAGIC-COOKIE-1 key...
timotimo m: say foo(|c, :$nam, :$nam) { say c.hash.perl }; foo(:nam(10), :nam<foo>); 20:59
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/WKbB1XobLY␤Variable '$nam' is not declared␤at /tmp/WKbB1XobLY:1␤------> 3say foo(|c, :7⏏5$nam, :$nam) { say c.hash.perl }; foo(:n␤»
timotimo apparently that's not how
m: say foo(|c (:$nam, :$nam)) { say c.hash.perl }; foo(:nam(10), :nam<foo>);
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/umNFRqWb4B␤Variable '$nam' is not declared␤at /tmp/umNFRqWb4B:1␤------> 3say foo(|c (:7⏏5$nam, :$nam)) { say c.hash.perl }; foo(:␤»
timotimo oooh
i put "say" instead of "sub"
that's dumb :D
m: sub foo(|c, :$nam, :$nam) { say c.hash.perl }; foo(:nam(10), :nam<foo>);
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/NTw5cQJ7cJ␤Redeclaration of symbol $nam␤at /tmp/NTw5cQJ7cJ:1␤------> 3sub foo(|c, :$nam, :$nam7⏏5) { say c.hash.perl }; foo(:nam(10), :na␤ expecting any of:␤ shape declaration␤»
timotimo m: sub foo(|c, :$nam, :$nom) { say c.hash.perl }; foo(:nam(10), :nom<foo>);
camelia rakudo-moar 704c58: OUTPUT«Map.new((:nam(10),:nom("foo")))␤»
21:02 _mg_ left, sno left 21:03 espadrine joined
ab5tract it's true that one learns a lot more about Perl 5 by digging into the internals 21:04
21:05 leont joined
ab5tract but it doesn't necessarily teach you lessons in Perl 5 the language, and unfortunately my relative proficiency in Perl 5 doesn't cut much mustard when it comes to core hacking 21:05
leont What does «Missing or wrong version of dependency '<unit-outer>'» mean?
yoleaux 27 Nov 2015 12:11Z <jnthn> leont: I fixed a Proc::Async issue that could cause data loss in various cases, which was quite likely responsible for your harness issues.
leont jnthn: awesome!
ingy [Coke]: Ingy döt Net (lower case d) 21:06
ab5tract jnthn++ # Proc::Async fixes!
leont Was busy fixing TAP::Harness for the Supplier changes, expecting to update the PR today or tomorrow 21:07
timotimo wtf, dependency "unit-outer"?!
21:08 _dolmen_ joined
_nadim I have a script, it uses a local module where i declare a few classes and muti subs. The multi subs from are not used, instead the script multi sub(Any) catches everything. when i move the multi sub from the module to the script, it works fine. I thought multi subs did not need to be exported! 21:09
jnthn _nadim: They need to be exported.
flussence how do I do «use newline :crlf;» on current rakudo?
21:09 Guest33799 is now known as parisba
_nadim I guess it has changed since 2009! 21:09
flussence m: use newline :crlf;
camelia rakudo-moar 704c58: OUTPUT«===SORRY!===␤Could not find newline:ver<True>:auth<True>:api<True> in:␤ /home/camelia/.perl6/2015.11-321-g704c585␤ /home/camelia/rakudo-m-inst-2/share/perl6/site␤ /home/camelia/rakudo-m-inst-2/share/perl6/vendor␤ /home/camelia/rakudo-…»
timotimo m: use nl :crlf; 21:10
camelia rakudo-moar 704c58: OUTPUT«===SORRY!===␤Could not find nl:ver<True>:auth<True>:api<True> in:␤ /home/camelia/.perl6/2015.11-321-g704c585␤ /home/camelia/rakudo-m-inst-2/share/perl6/site␤ /home/camelia/rakudo-m-inst-2/share/perl6/vendor␤ /home/camelia/rakudo-m-ins…»
timotimo hmm
MadcapJake Why would I get "Cannot assign to an immutable value" inside a class, appending to @!presses? I've never even assigned anything to it (class A { has @!presses; })
flussence if I just have to put it on all my IO::Socket constructors, I guess I can do that instead... 21:11
timotimo m: class T { has @!presses; sub addpress($test) { @!presses.append($test) } }; T.new.addpress("hi") 21:12
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xqlrVy07PF␤Variable @!presses used where no 'self' is available␤at /tmp/xqlrVy07PF:1␤------> 3presses; sub addpress($test) { @!presses7⏏5.append($test) } }; T.new.addpress("hi")␤»
jnthn _nadim: It was once speculated multi would export implicitly, but we thought better of it :)
timotimo m: class T { has @!presses; method addpress($test) { @!presses.append($test) } }; T.new.addpress("hi")
camelia ( no output )
21:13 colomon left
_nadim jnthn: am happy you did, I do multi sub do_something is export (Dog $g) but I now I get the error "missing block" after 'export' 21:13
jnthn is export comes after the signature 21:14
leont Did anything change regarding typed arrays? I'm getting an error I didn't use to get
_nadim thanks, I need to find something more current
empT timotmo: thx. am trying some variations on that capture for MAIN now.
MadcapJake m: class A { has @!presses; method add($s) { push @!presses, $s } method say() { say @!presses } } my $a = A.new; $a.add('a'); $a.say 21:15
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kT8rwmJ2Ag␤Strange text after block (missing semicolon or comma?)␤at /tmp/kT8rwmJ2Ag:1␤------> 3s; method add($s) { push @!presses, $s }7⏏5 method say() { say @!presses } } my $a ␤ expecting an…»
MadcapJake m: class A { has @!presses; method add($s) { push @!presses, $s }; method say() { say @!presses } } my $a = A.new; $a.add('a'); $a.say
camelia rakudo-moar 704c58: OUTPUT«5===SORRY!5=== Error while compiling /tmp/h6xJDUdtCE␤Strange text after block (missing semicolon or comma?)␤at /tmp/h6xJDUdtCE:1␤------> 3, $s }; method say() { say @!presses } }7⏏5 my $a = A.new; $a.add('a'); $a.say␤ expecting any of:…»
jnthn leont: We implemented shaped arrays. Also fixed a flattening inconsistency between object construction and variable assignment.
nine arnsholt: no, not the perl6 executable. The bin/panda of panda's repository will be installed into the sources directory with the SHA as file name. The generated wrapper script tries to find this file in sources/ of some repository and runs it 21:16
timotimo empT: good luck!
leont I'm not getting «Type check failed in assignment to @!handlers; expected TAP::Harness::SourceHandler but got Array», on code that worked a few weeks ago
nine arnsholt: I actually have no idea why we have this indirection
_nadim jnthn: works like a charm, at this speed I will have a P6 module by next week. after a lot of sweat, frustration and joy.
leont Probably I did something wrong in the first place, but I'm not yet sure what
timotimo leont: where do i find this version of that code?
jnthn leont: I suspect the assignment consistency fix 21:17
leont: Trowing in an @(...) or a .list in the thing you're passing to the constructor would do it
nine wonders why noone so far has been annoyed enough to strip the useless :ver<True>:auth<True>:api<True> from the "Could not find" messages...
jdv79 is the auth/ver/api stuff ready for a test drive?
yoleaux 17:42Z <patrickz> jdv79: Is p6-CPAN still a thing? If yes, how does that play with HTTP support being removed from zef?
jnthn It's probably in a Scalar container, which we no longer disregard
[Coke] ingy: it was just an example; See gist.github.com/coke/63c7bbb82f075...s-out-L491 21:18
21:18 cdg joined
arnsholt nine: Oh. I think I see. It's mostly incidental to the question of precompilation though, I suppose? 21:18
nine arnsholt: yes and I'm not sure we even want to keep it this way
jdv79 patrickz: sure. talk to ugexe:)
dalek c: f1013a6 | (Anthony Parsons)++ | doc/Type/IO/Socket/INET.pod:
Fix inconsistent references to :$nl-in
arnsholt nine: I'll leave that yak for someone else to shave, right now =) 21:19
FROGGS nine: you ask why we have wrappers for scripts like panda?
nine FROGGS: yes
FROGGS nine: well, imagine you install Panda v1 and Panda v1.1
leont Seems it was «has SourceHandler @.handlers = SourceHandler::Perl6.new();» that was at fault
FROGGS nine: how do you run the right bin/panda when only one can be in PATH? 21:20
MadcapJake what's immutable in this line: github.com/MadcapJake/p6-xtest/blo...st.pm6#L96
jnthn FROGGS: Do you know much about the idea for %?RESOURCES?
FROGGS: Of note, was there a plan for how it'd work out with file system repos?
leont Can't seem to fix it without getting rid of the type :-/ 21:21
timotimo MadcapJake: $_ in the line before
MadcapJake: you'll need -> $_ is copy {
jnthn leont: That's...really odd
21:21 kjk left
FROGGS jnthn: I know something, dunno if I know much 21:21
timotimo MadcapJake: otherwise ~= won't work
jnthn nine++ is pondering how we implement %?RESOURCES, and when I started thinking about it I realized I had no idea how it would work with the filesystem case, when there's no distribution objects around... 21:22
FROGGS jnthn: and in case we keep the META6.json of the installed dist, it can potentially work for CURF too
ahh
if there is no dist obj then we won't be lucky
jnthn Ah, the idea was to have one of those...somewhere?
nine We could just map $cwd/resources into the %?RESOURCES hash 21:23
FROGGS I'm not sure, but it is the only way to fake a dist object
nine: probably 21:24
21:24 Begi left
arnsholt Hmm. What's the best idiom for checking for the existence of a dynamically scoped variable? 21:24
FROGGS m: say $*FLUBBER ~~ Failure 21:25
camelia rakudo-moar 704c58: OUTPUT«True␤»
jnthn Do you care about existence or definedness?
nine Or rather $repo.prefix ~ '/../resources' which sucks but would actually map to the common distribution layout where we will have lib/ and resources/
arnsholt jnthn: Existence
21:25 molaf left
jnthn Then probably have to check for Failure as FROGGS showed 21:25
m: say $*FLUBBER.WHAT 21:26
camelia rakudo-moar 704c58: OUTPUT«(Failure)␤»
jnthn m: say $*FLUBBER.exception.WHAT
camelia rakudo-moar 704c58: OUTPUT«(NotFound)␤»
jnthn m: say $*FLUBBER.exception.WHO
camelia rakudo-moar 704c58: OUTPUT«X::Dynamic::NotFound␤»
jnthn If you need to be super-robust there's also that
arnsholt Yeah, that works. I assumed looking up a contextual that didn't exist would throw an exception, but Failure I can work with =)
Cheers!
FROGGS nine: sounds like a good idea to me 21:27
gnight
21:27 FROGGS left 21:28 Su-Shee left, empT left 21:31 rindolf left
dalek kudo/nom: cd45c61 | jnthn++ | src/core/Block.pm:
Stop phaser loop swallowing loop exceptions.

Fixes use of last inside of a NEXT phaser in for loops, map, etc.
21:31
21:31 empT joined
dalek ast: 93b1a6d | jnthn++ | S04-phasers/next.t:
Tests for RT #123731, and related tests.
21:32
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=123731
jnthn had 2 abortive attempts at fixing that before hitting on the actual fix, which was a quarter the size of the previous two attempts...
21:32 nowan left, Begi joined
nine jnthn: all 's well that ends well :) 21:33
muraiki jnthn: did you have a chance to look at the potential-bug-with-GC that was causing long-running processes to stall?
jnthn muraiki: Not yet; had bits of time, but not with enough brane to debug concurrent GC issues :( 21:34
(Doing some travel/teaching at the moment)
21:34 colomon joined
muraiki jnthn: sorry, if I had any idea of how to do that I'd help out. :) 21:35
leont !@#$%^&*
21:35 nowan joined
leont The line numbers of my errors are all wrong, because it's in an async block, and I can't get the right line numbers out of it somehow :-/ 21:35
muraiki m: !@#$%^&* 21:36
camelia rakudo-moar 704c58: OUTPUT«WARNINGS:␤Useless use of "!" in expression "!@" in sink context (line 1)␤»
jnthn Perl... :P
nine Well #!@!$%^&* is valid Python, too ;)
jnthn :D 21:37
nine jnthn: would you frown upon using a dynamic variable to pass the resources hash from the Repository to Perl6::Actions?
21:38 kaare_ left
jnthn nine: Umm...how do we get from there to Perl6::Actions? 21:38
nine: Don't we pre-comp in a nested process? 21:39
nine oh....of course
leont It seems Array.max now returns an array instead of a scalar, that would explain some of the issues I'm seeing…
jnthn m: say [1..10].max 21:40
camelia rakudo-moar 704c58: OUTPUT«10␤»
jnthn m: say [1..10].max.perl
camelia rakudo-moar 704c58: OUTPUT«10␤»
jnthn m: say [1..10].max.WHAT
camelia rakudo-moar 704c58: OUTPUT«(Int)␤»
nine Seems like I've used up my first two attemps at doing this already
jnthn :)
Third time lucky today
I wonder if we can use the compunit's SC handle to map to a CompUnit object kept in a hash in a CompUnit::Repository 21:42
leont tries to reproduce a small test case
jnthn It could also emit that during precomp
nine Well while my first attempt was completely useless as it was a totally wrong direction, it at least led me to a plan to have module loaders for other languges be just CompUnit::Repositories, too.
21:42 hudo joined
arnsholt jnthn: With a bit of luck, I'll have a patch soonish that removes the process boundary when precomping 21:43
nine That would change the landscape completely!
arnsholt Well, first I'll have to get it to work =) 21:45
21:45 domidumont joined 21:47 n0tjack left
ab5tract jnthn: proof of concept seems to work alright github.com/ab5tract/p6-playground/...undtrip.pm 21:47
now, does say automatically put the object into .Str, or should one do ~ to be safe? 21:48
geekosaur say does .gist which produces a Str
21:48 Peter_R left
timotimo Juerd: your bug about promises and errors is interesting. it is actually about "what do we do if a promise is broken that nobody is awaiting or .then-ing" 21:49
ab5tract geekosaur: thanks
21:49 cognominal joined
timotimo Juerd: because if you .keep the promise first, then await $promise.then: { ... }, you'll get the exception thrown 21:50
Juerd: if you don't mind, i'll rename the ticket
21:50 Deepak joined, Peter_R joined 21:51 patrickz left, TEttinger joined
Juerd timotimo: I don't understand much of what you're saying and I'm fine with any steps you take that can eventually help resolve the issue :) 21:51
leont totally doesn't get why he's observing a list when his small example isn't
21:51 znpy left
MadcapJake Why does per6-debug-m throw a `could not find Debugger...` error? 21:51
oh i probably need to update rakudo/perl6 eh? 21:52
21:52 Begi left, skids left
timotimo Juerd: i'm going with "user error" or "misunderstand how promises are supposed to work" here, with a side of "docs may need improvement" 21:53
nine MadcapJake: I think you need to install Debugger::UI::CommandLine 21:54
ab5tract yeah that unfortunately does not ship with core
Juerd Are you saying that 'then' is like 'try', in that it hides errors by design?
timotimo nine, MadcapJake, i think at the very moment the perl6 debugger isn't working
ab5tract feels awkward to install a broken tool in a way :/
timotimo ab5tract: IMO that's for rakudo star, not for core ...
ab5tract it also is not currently able to do much with threads
timotimo Juerd: .then gives back another promise
Juerd: that is the key here. if you don't listen to what that promise evaluates to, you won't notice when it gets broken. 21:55
Juerd In that case I think some syntactic sugar is needed for the very common use case of just wanting to execute bar after foo is done.
Having to do things to catch exceptions myself, in a way that is easily overlooked or forgotten, feels like a bad idea. 21:56
It's like the whole returning undef thing we just got rid of. 21:57
timotimo if you don't await the promise, you're bound to not notice when promises hang or explode
Juerd Or actually, the "or die" thing.
timotimo in general you're expected to be awaiting all your stuff :)
21:57 patrickz joined
leont Awesome. Rakudobrew claims to install panda, but then its dependencies aren't there! 21:57
nine Ok, I'll leave this now and start fresh tomorrow. Good night!
leont "Could not find Shell::Command:ver<True>:auth<True>:api<True> in:" 21:58
timotimo nine: have a good rest!
nine arnsholt: please keep me posted about any progress or non-progress :)
leont No idea what's going on
timotimo leont: did you recently nuke your rakudo install dir?
leont I didn't, should I?
jnthn Rest wile, nine++
*well
timotimo i did after the curli branch got merged and that made things smoother for me
Juerd timotimo: I think that big mistakes like calling non-existent methods should at the very least complain on stderr, but preferrably halt all threads.
leont What do I need to delete exactly? 21:59
21:59 n0tjack joined
Juerd timotimo: Alternatively, if everything needs to be await'ed, then that should be enforced... 21:59
21:59 lizmat left
Juerd This mistake, if it is one, is too easy to make. 21:59
timotimo leont: "which perl6" ought to point you (indirectly perhaps) to a folder somewhere install/bin/
leont: i deleted that whole install/ folder and re-built everything
leont: btu rakudobrew has a "nuke" option, too
jnthn: should we do something about promises that get broken when nobody is awaiting them or has a .then installed on them? 22:00
ab5tract timotimo: than perl6-debug-m should not ship with core
*then
timotimo like sink thta exception into the scheduler's "unhandled exception handler"
ab5tract: but perl6-debug-m can take any frontend, not just the commandline one!
ab5tract true
very true
my apologies :) 22:01
Juerd afk # off to bed
timotimo all other 0 of them!
jnthn timotimo: If you have a "then" then you are meant to use the first Promise's result inside of it 22:02
dalek rl6-most-wanted: 04b1d08 | Demayl++ | most-wanted/modules.md:
Add Email::Valid as WIP
rl6-most-wanted: 400b132 | labster++ | most-wanted/modules.md:
Merge pull request #8 from Demayl/master

Add Email::Valid as WIP
timotimo jnthn: right. what if you don't have a "then"?
jnthn Sinking a Promise debatably should sign it up to an unhandled thing
timotimo jnthn: juerd's example has a promise that gets kept and an error in the block that's passed to the .then
22:02 domidumont left
timotimo i can implement that :) 22:03
22:03 disco91 joined
jnthn To do one thing then another, await first-thing; await second-thing; is better though 22:03
Skarsnik should something like gist.github.com/Skarsnik/16222eb1acbe1e5f7f75 should keep the same memory size and not grow like it does? x)
22:04 znpy joined, patrickz left
timotimo Skarsnik: you mean the loop that assigns $foo to the new variable causes growth? 22:05
Skarsnik yes
timotimo that's kind of bad :) 22:06
jnthn perl6-debug-m is only in the Rakudo repo at all becaues it was getting hard to maintain outside of there because we don't have a good enough API yet
22:06 lizmat joined
lizmat .botsnack 22:06
yoleaux :D
synbot6 om nom nom
jnthn Once we have the slang/macro QTree API it can be booted back out again. 22:07
Skarsnik timotimo, I have a big leak with a script that do lookup on a XML tree (with the XML module) and I suspect it the same stuff, a big nested struct that get copied and never freed
22:08 patrickz joined 22:09 zakharyas left
Skarsnik I should had added more data, the vm I work in only have 2GB x) 22:09
22:09 n0tjack left
ab5tract jnthn: that makes sense. i hadn't tied masak++'s efforts on macros with consequences to the debugging stack, but the potential benefits are obvious 22:10
timotimo Skarsnik: just assigning that thing there shouldn't increase memory usage ;(
Skarsnik: it shouldn't do a copy at all
22:10 Deepak left
ab5tract i'm likely out for the night 22:10
have a great *, all! o/
timotimo gnite ab5tract 22:11
dalek : 074940b | coke++ | CREDITS:
snapshot AUTHORS as CREDITS

needed to put the 2015.12 announcement together
[Coke] .tell ShimmerFairy did the credits conversion, you're off the hook. 22:12
yoleaux [Coke]: I'll pass your message to ShimmerFairy.
jnthn Phew, think I nailed the other phasers bug in the xmas list too 22:14
lizmat jnthn++ :-)
Skarsnik nice, how many bug left? x)
jnthn spectest time
22:14 colomon left
timotimo \o/ 22:14
jnthn 20 when I'm done with this one 22:15
22:15 mohij joined 22:16 n0tjack joined 22:17 patrickz left
pyrimidine [Coke]: on AUTHORS, 'Chris Fields' is pyrimidine (me) 22:18
[Coke]: and thx for adding me (I think I was in there from the parrot days, maybe first pass implementation of .trans) 22:19
[Coke]: shoulda asked, would you like that as a pull request? 22:21
leont still doesn't get what's going on with this .max, but adding a [0] after it seems to fix is :-s
dalek osystem: 4af6cf6 | (Kamil Kułaga)++ | META.list:
author renamed metafile
22:22
arnsholt leont: Sounds like maybe you've inadvertently created a list of lists?
RabidGravy jnthn, you'll be delighted to know that New Supply is really leak free, been running my forthcoming experimental cron thingy for two and a half hours with nary an impact on resources :)
[Coke] pyrimidine: PR is best for mu stuff, yes. (note that CREDITS is what i'm using for right now, and there I care about matching up nicks with names - and your nick is not in the list, but your name is (so you're fine for nwo) 22:23
timotimo leont: i think you have a list of arrays there and you're getting the biggest one from .max
dalek osystem: 8bb4b0e | (Kamil Kułaga)++ | META.list:
author renamed metafile
[Coke] gist.github.com/coke/63c7bbb82f075c7bb1f5 now includes all the information from MU's CREDITS (nee AUTHORS) file. up to 889 people.
jnthn RabidGravy: Nice. It was leaky before, or not known? 22:24
timotimo Skarsnik: i'll try to have a look later; thanks for giving such a small test case <3
RabidGravy dunno, never run anything that long before
leont It seems you're right, but that means .max is distributive (I'm doing «@!handlers.max(*.can-handle($name));», apparently that method doesn't get called on the array) 22:25
RabidGravy also interval() seems rock solid, triggering an event spot on every minnute for all that time
jnthn cool :) 22:26
jnthn is always happy to get reports about things that *do* work 22:27
('cus compiler hackers normally just hear lots about the ones that don't ;))
dalek kudo/nom: f0a96da | jnthn++ | src/ (2 files):
Fix FIRST in loop/while/until.
pyrimidine [Coke]: thx, will add a PR then :) 22:28
dalek ast: e220ab9 | jnthn++ | S04-phasers/first.t:
More tests for FIRST, including RT #121147.
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=121147
RabidGravy (it would have dropped some if they didn't hit the right second as it is grepping for DateTime.now.seconds.Int == 0)
22:28 yqt left
leont found it, seems I should have made that argument () instead of [] 22:29
Skarsnik hm, should I spawn a process to run some code that leak and kill it/respawn a new one to have the code going? Will that work?
RabidGravy that's a solution :)
22:30 sno joined
dalek ast: a74506c | jnthn++ | S04-phasers/next.t:
Add missing RT ticket label.
22:31
flussence I don't know if this is a sane request or not, so I'll ask: could CU:R:FileSystem prefer to put everything in "{$OS-specific-cache-dir}/perl6/" before $*CWD.child('.precomp') ? Or would that make everything explode horribly?
timotimo Skarsnik: did you ever see if it actually gets past create-stuff($foo, 500);? 22:32
Skarsnik hm, I did not test that lol
timotimo do you have an idea how many things you're creating there?
the one with $cpt == 500 will create 500 of $cpt == 499
jnthn OK, now we're down to 20 xmas RTs. :) 22:33
timotimo every one of the 500 $cpt == 499's will create 500 $cpt == 498
Skarsnik damn let me retest that
timotimo m: say "that's { 500 ** 500 } objects"
camelia rakudo-moar f0a96d: OUTPUT«that's 305493636349960468205197939321361769978940274057232666389361390928129162652472045770185723510801522825687515269359046715531785342780428396973513311420091788963072442053377285222203558881953188370081650866793017948791366338993705251636497892270212003…»
timotimo does that fit in you rram?
22:33 colomon joined
Skarsnik m: say 50 ** 50 22:34
camelia rakudo-moar f0a96d: OUTPUT«8881784197001252323389053344726562500000000000000000000000000000000000000000000000000␤»
Skarsnik that still a lot x)
jnthn Buy more RAM... :P 22:35
leont Given a Supplier, is it good or bad to call the Supply method more than once?
timotimo not a problem, leont
jnthn leont: "depends"
timotimo oh
jnthn leont: The semantics around it are a little interesting, though useful :)
leont: Each .Supply call gives you a freshly sanitized supply
m: my $sup = Supplier.new; my $s = $sup.Supply; $s.tap({ .say }); $s.emit(1); $s.done(); $s.tap({ .say }); $s.emit(2); 22:36
camelia rakudo-moar f0a96d: OUTPUT«Method 'emit' not found for invocant of class 'Supply'␤ in block <unit> at /tmp/lyneMCRb4V:1␤␤»
jnthn oops
22:37 hankache joined
jnthn m: my $sup = Supplier.new; my $s = $sup.Supply; $s.tap({ .say }); $sup.emit(1); $sup.done(); $s.tap({ .say }); $sup.emit(2); 22:37
camelia rakudo-moar f0a96d: OUTPUT«1␤»
22:37 quester joined, quester left, quester joined, quester left
jnthn m: my $sup = Supplier.new; $sup.Supply.tap({ .say }); $sup.emit(1); $sup.done(); $sup.Supply.tap({ .say }); $sup.emit(2); 22:37
camelia rakudo-moar f0a96d: OUTPUT«1␤2␤»
jnthn Those who capture the difference.
leont I see…
22:38 yqt joined
timotimo what do those who capture the difference do, jnthn? 22:38
jnthn *two
Skarsnik timotimo, this was leaking after the parsing done: gist.github.com/Skarsnik/5dfb0dce3b517f13d767 :( (and quite a lot)
jnthn timotimo: Multiply!
timotimo oooh
jnthn leont: If you only ever emit, of course, then there's no difference. :)
leont: .sanitize just enforces the supply grammar 22:39
emit* [done|quit]
timotimo Skarsnik: in that case it'd probably really be interesting to get info for the different kinds of allocators we have.
jnthn OK, teaching tomorrow, so time to get a good 8 hours sleep in 22:40
22:40 quester joined
jnthn loves that the course is located in the hotel he's staying in :) 22:40
leont It kind of matters in one case, will think about this. Thanks :-)
jnthn np
Happy hacking
'night all 22:41
timotimo gnite jnthn :)
Skarsnik: if we had that kind of stat, we could see if there's things being malloc'd by an external library that don't get freed, for example
Skarsnik: anyway, that script of yours won't leak after it has finished creating stuff, so that's one worry off my back
still have no idea what's wrong with your xml stuff :(
Skarsnik well XML is purely perl6
22:41 empT_ joined 22:42 empT left
timotimo oh? all of that? 22:42
i thought you have a C binding there!
Skarsnik The html parser is a binding
timotimo Gumbo, yeah
Skarsnik but all the memory it use get freed
timotimo oh? how can you tell?
22:43 lestrrat left
Skarsnik well the Clib came with a gumbo_delete that free its internal stuff and it called at the end of the parse-html, all it remained are the xml object 22:44
timotimo oh, so that recursively cleans out everything? well, that's good.
did you give me a --profile of that script running? or should i try to reproduce locally? 22:45
(though i'm running lots and lots of spec tests, so a bit low on ram and cpu time to try that)
Skarsnik try with HTML::Parser::HTML
*XML
they share the same interface x) 22:46
22:46 lestrrat joined
timotimo OK 22:46
Skarsnik I tried to skip this step, but xml can't load the xml saved 22:47
it probably does not like the javascript in the middle of it or something
timotimo urgh 22:48
perhaps it needs to be inside CDATA to properly work?
22:48 vendethiel left
timotimo wait, you mean trying to parse html5 as xml? 22:48
Skarsnik XML::Document has a xml.save 22:49
timotimo oh, i see
yeah, that should probably be round-trip-safe :|
22:51 _dolmen_ left 22:53 Peter_R left, muraiki left, mohij left
MadcapJake So does perl6-debug-m not work right now? After installing Debugger::UI::CommandLine, I'm now getting "Circular module loading detected involving module 'Debugger::UI::CommandLine'" when I run perl6-debug-m 22:54
Skarsnik lol
22:54 bjz joined, hankache left
japhb .botsnack 22:55
yoleaux 15:11Z <timotimo> japhb: how about we let perl6-bench have a list or hash of test code (exitcode tells if usable) to actual code (or filename) so we can be compatible with different rakudo versions for all stuff
synbot6 om nom nom
yoleaux :D
timotimo yo japhb :) 22:56
japhb timotimo: Can you explain further?
timotimo sure!
here's an example:
we have a benchmark "pushme", right? but newer versions have "append" that we'd expect to use for this
japhb That much I understood 22:57
timotimo so the entry in the microbenchmarks.pl could look like [ "my @foo.append('hi')", "blah blah @a.append(@a) blah blah", "1", "blah blah @a.push(@a) blah blah" ]
instead of just the code there
22:58 empT_ left
Skarsnik well I have to to sleep, have a good night #perl6 22:58
japhb Are you trying to say that we have for each benchmark a list of different code snippets that work with different historical Perl 6 variants, and it just tries them in order?
First one to succeed is considered correct? 22:59
timotimo gnite Skarsnik!
ab5tract MadcapJake: sounds like a rakudobug to me
flussence ...why not try them all regardless of version?
timotimo japhb: that's the idea
flussence: because then which results do you compare how?
ab5tract MadcapJake: it also sounds suspiciously CURLI related 23:00
japhb flussence: Because modern Perl 6 still has @a.push, it just means something different (with quite possibly wildly different performance characteristics) than it used to.
timotimo flussence: in the pushme case, you'll compare the old rakudos "flattening" append stuff against new rakudos "item append". the latter will most probably be much faster
exactly that
MadcapJake yeah timotimo mentioned that it might be broken right now
23:00 patrickz joined
ab5tract MadcapJake: do you know about the --ll-exception flag for perl6? 23:01
MadcapJake no what's that
ab5tract it sounds like that's as good as it gets
23:01 bjz left
timotimo MadcapJake: prevents some filtering from happening on the backtraces 23:01
some errors will only ever give you a backtrace if you have --ll-exception, even. 23:02
ab5tract it can be helpful in the case of crashes
23:02 n0tjack left
ab5tract which might not give anything useful to you if you don't use it, as timotimo mentioned 23:03
japhb timotimo: I'm wondering if we need to have a "feature probe" phase that determines tags for the various compilers for what they support in what way, and then have the benchmark snippets be able to look for having or not having a particular compiler feature tag
ab5tract in fact it's a bit more useful for debugging concurrency issues than perl6-debug has been in my experience
timotimo japhb: that sounds like it'd be 10x mightier than what i suggest, but what i suggest is "the simplest thing that can possibly work" :)
23:03 pyrimidine left
MadcapJake i got this printed gist.github.com/MadcapJake/1bd1b39ca2a742034871 23:04
23:04 _dolmen_ joined, mohij joined, pyrimidine joined, woolfy joined
japhb ponders whether to go mighty or go simple 23:04
ab5tract MadcapJake: oh, I was suggesting it in replacement of perl6-debug
woolfy . 23:05
MadcapJake oh i see xD
diakopter japhb: the bigger they fall...
ab5tract but it's only useful if you are crashes
23:05 woolfy left
ab5tract in that case 23:05
timotimo MadcapJake: i think someone made the debugger "work" a bit farther than you recently, but then got a case of "the frontend is bitrotted" :(
23:05 patrickz left
timotimo (or perhaps it was the back-end that was bitrotted) 23:05
23:05 daxim left
ab5tract it seems like there is an event horizon of a better peg to hang debugging on 23:05
MadcapJake without debug, it's still not printing anything, ab5tract, my code is running some c routines so I'm guessing I would need to debug to get some answers 23:06
ab5tract that we haven't quite whirlpooled across yet
timotimo ab5tract: that's kind of an interesting mental image
ab5tract MadcapJake: darn
timotimo: much obliged
timotimo japhb: i'm not sure if i'd be up to implementing your suggestion, whereas i might stand a chance of implementing mine. though, don't forget i haven't a clue of perl5 :)
masak 'night, #perl6
MadcapJake yeah, i'll try and work some more on this later tonight, gotta head to dinner!
timotimo gnite masak! 23:07
ab5tract MadcapJake: you could try checking out a release tag from before the CURLI stuff
and rebuilding rakudo
MadcapJake yeah that's a good idea, thanks ab5tract !
timotimo if you do that, you should probably nuke your installation folder, too ...
ab5tract timotimo: was just about to mention that :)
not much sense in investing heavily in fixing a tool that is going to need re-fixing in the near future 23:09
timotimo well, with electron bindings in the ecosystem now, why hasn't anybody built a debugger UI with multi-threaded features yet? :) 23:10
japhb timotimo: I am actually thinking of blessing the simple route now, because I'm thinking that sometime post-Christmas I may just drop support for pre-Christmas compilers and just write test variants keyed on Perl 6 version.
Thus we could have a 6.c and a 6.d version or so.
timotimo oh
23:11 patrickz joined
japhb timotimo: Which is to say, until e.g. 2017, it's probably best to just do the simplest thing that could work. 23:11
And not build up a big edifice of complexity only to tear it down a few months later. 23:12
ab5tract timotimo: because QTrees, it seems. but the electron stuff is well-deserving of attention.
is anyone doing an electron advent post?
timotimo the QTrees thing is actually about the back-end, not the front-end
23:12 mohij left
timotimo japhb: how long would you think would it take you to build that feature? 23:12
japhb Your suggestion? 23:13
ab5tract i would assume that it would result in front end changes as well
timotimo yes, the simplest one that could work
ab5tract i haven't looked at the level of coupling
timotimo they are "coupled" with a sort of "event/subscription" thing 23:14
Zoffix Do you guys have anything useful to generate syntax-highlighted HTML of Perl 6 code with line numbers I could use for code snippets in Advent blog post? I tried to build my own for 2 days, but time's running out and I'm getting an error on the two boxes I have available ATM....
japhb timotimo: In a fantasy world in which I am not distracted by $day-job and/or a vast desire to sleep, a couple hours.
ab5tract sounds like the kind of things that QTrees could have an impact on
anyway, i'm out for real this time
o/ #perl6
Zoffix \o 23:15
timotimo github.com/jnthn/rakudo-debugger/b...ne.pm#L633 - have a quick look
ab5tract Zoffix: I've seen it done. We should have an easy way to do it.
timotimo Zoffix: :hc in vim will give you an html file if you ask it nicely enough
dalek : 4acb2db | cjfields++ | CREDITS:
add my nicks
: 5e7a186 | (Zoffix Znet)++ | CREDITS:
Merge pull request #13 from cjfields/master

Add nicks
japhb heads back to hotel before it becomes really absurdly late
timotimo okay, good night, japhb!
thanks for stopping by and discussing!
japhb Of course! :-) 23:16
23:16 spider-mario left
flussence Zoffix: could try pygments too, I think that can do HTML output 23:16
Zoffix timotimo, isn't that what Text::VimColour uses? My vim is too old.
timotimo, and it generates CSS/HTML separate too
23:16 empT joined
timotimo doesn't matter. just copy-paste it from a browsre window to an contentsEditable-enabled input field like wordpress' WYSYWIG editor 23:17
that'll give you the css stuff for free without hassle
(and yes, that's fucking awesome that we have something like that in 2015)
Zoffix oh
flussence, thanks pygments online thing did something usable...
Now, for copy-paste test.
timotimo the worst thing you can do is copy-paste from something like that into pidgin. then you'll end up with line breaks disrupted and CSS in-line in plain text
Zoffix: you should have asked sooner, so that you didn't have to waste so much time on the stupid highlighting hassle and more time on making your post good :) 23:18
Zoffix timotimo, it was a good practice on making my first P6 web app.
AND my first grammar :P
timotimo ah. well, that's fine :) 23:19
you'll write another post about that, right? :D
Zoffix hehe, maybe :P
timotimo my brain is still in the "oh god, we only have 5 posts scheduled for the advent calendar!!" mode/mood 23:20
Zoffix :)
hm, copy-pasting doesn't copy the styles 23:21
Zoffix spins up a windows box to try it there 23:22
timotimo it does not?!
leont Seems a fairly simple module that uses a somewhat complicated one (TAP) hangs for me during parsing.
Anyone a clue what could be going on? 23:23
timotimo GOD DAMN IT 23:24
Zoffix Nope
timotimo zoffix is right
>:(
Zoffix It works if I c/p into Word though, so you're half-right :P
timotimo damn. 23:25
i saw that feature in google docs (slides) and there it works
but not in wordpress
WWWOOORRRDDDDDDDDPRRRRESSSSSSS >:( >:( >:(
23:26 cfloare left, cfloare joined
timotimo lucumr.pocoo.org/cogitations/2007/0...wordpress/ 23:26
"does not exist" >:(
23:28 espadrine left
timotimo and that "pygment it" plugin can only do line numbers if pygments is installed locally on the webserver 23:28
which is wordpress' server, so no clue if they'd allow that... can we even install plugins there at all? probably only if we have a paid version of wordpress ...
23:28 n0tjack joined
timotimo looks for a table to flip 23:28
.tell TimToady should a Promise that gets sunk get a handler installed that forwards any exceptions to $*SCHEDULER for its "unhandled exception handler" thingie? 23:29
yoleaux timotimo: I'll pass your message to TimToady.
23:31 daxim joined, skids joined 23:32 Zoffix left, n0tjack left 23:33 hudo left 23:34 Zoffix joined 23:37 csd_ left 23:39 zengargoyle left 23:43 disco91 left 23:45 zengargoyle joined 23:46 _dolmen_ left 23:47 kid51 joined, RabidGravy left 23:50 lsm-desktop left
leont I'm having two local libs in my dist, one is loading the other, this always hangs, even if Foo.pm doesn't contain anything other than «use Bar;» 23:50
timotimo .tell japhb how about i ask another person who can perl5 to implement that feature?
yoleaux timotimo: I'll pass your message to japhb.
23:50 AlexDaniel joined
AlexDaniel “why are phasers all CAPITALIZED?” – what I find weird is that we have “FIRST” but “once” 23:51
flussence found while doing `panda smoke`: Hinges causes a deadlock on the precomp lockfile
leont Tried again with Bar being literally «class Bar {}», even now Foo takes a second and a half to load! 23:52
flussence ...seems like anything with some sort of compilation error causes it, actually
23:54 Goonthen joined, cpage_ left 23:55 cpage_ joined
TimToady timotimo: maybe sinking a promise should throw an exception right off the bat 23:55
yoleaux 23:29Z <timotimo> TimToady: should a Promise that gets sunk get a handler installed that forwards any exceptions to $*SCHEDULER for its "unhandled exception handler" thingie?
lizmat AlexDaniel: "once" was once called START, but deemed not to be a phaser by TimToady at some point
jdv79 p5 is a verb now?
lizmat AlexDaniel: hence the lowercase version
Zoffix I figured it all out, BTW... *inhales deeply*: go to pygments.org/ and highlight your markup and copy the URL of the page you're on, go to inlinestyler.torchbox.com/styler/convert/ and enter you URL into the box, copy the markup that page generated into a file named data.html and remove everything that is NOT the <pre></pre> with your code, then run this Perl 5 script (gist.github.com/zoffixznet/55af69f...09aa60ba5) to add line 23:56
numbers to your code, in Wordpress scroll all the way up, and switch to HTML/text mode, scroll down to the target position and paste your generated code, then move the " 1:" line number INSIDE the <pre> and delete the line number at the </pre>, scroll all the way up, switch back to Visual mode, scroll back to where you were... Boom, you have your Perl 6 code syntax-highlighted and line-numbered.. *exhales*
timotimo jdv79: you there! do you want to do the task?
Zoffix What could be easier?
AlexDaniel lizmat: if it's not a phaser, then what is it?
Hotkeys jdv79: what do you have against verbing
jdv79 do you even p5 bra?
timotimo i didn't grow sufficiently big man-boobs to wear a p5 bra ...
jdv79 nada. just seemes funny 23:57
flussence
.oO( does wordpress support those javascript gist include things github does? )
jdv79 i thought bra is the new bro. idk...
timotimo yeah
lizmat AlexDaniel: a blast or blorst ?
diakopter braugh
timotimo i don't know why doods enjoy calling each other "brassiere"
Zoffix flussence, doesn't seem to. 23:58
flussence crud.
jdv79 i dont get it either. i would say bro but that might date me. i'm gettin old in any case.
lizmat AlexDaniel: once is essentially "do .... unless $++"
AlexDaniel “Block, OR Statement”
Zoffix jdv79, the cool kids of today say it "bruh"
AlexDaniel lizmat: fine 23:59
jdv79 o k
AlexDaniel “Some of the statement prefixes also behave a little bit like phasers, but they run in-line with the executable code, so they are spelled in lowercase.”
diakopter brouhaha
timotimo Zoffix: when did "broheim" get out of fashion?