»ö« 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.
jdv79 i attempted a funny. fail. 00:00
00:00 Psyche^_ left 00:01 FreezerburnV joined
FreezerburnV Evenin’ 00:01
stmuk ah
well there is a single GLR post rule :P 00:02
jdv79 i apparently also failed strunk & white punc ws rules. nothing but fail over here.
yes... nice.
FreezerburnV: hello
00:03 raiph joined
FreezerburnV Question: Is there a way to qualify a needed/imported/used module to a specific namespace? e.g.: “use Long::Module::Name as foo; foo.bar();” 00:03
jdv79: Heya!
jdv79 FreezerburnV: good to have you. i'm sorry but i do not know about that. i don't remember reading about namespace aliasing but that means almost nothing of importance. 00:05
00:05 Peter_R left
FreezerburnV jdv79: Glad to be here. And no worries, hopefully someone around here knows about it. Just trying to figure out the module system so I don’t end up shooting myself in the foot somehow 00:06
E.g.: use a module in one module, which might end up importing that module’s exported items to whatever imports the original module (I don’t know if it does this without specially marking things or not), and end up with too many things in a default namespace 00:07
Or just organize items in one namespace for “neat code’s” sake or something
lucasb who does one trigger that "seq can only be iterated once" error? 00:08
timotimo FreezerburnV: i can already tell you that if you "use" a module inside another module, it doesn't re-export that used module unless you specify that 00:09
FreezerburnV timotimo: Good to know! That’ll help keep things clean then
timotimo aye 00:10
i think re-exporting looks kind of like "use Foo::Bar :EXPORT" or something
00:10 ChristopherBotto joined
jdv79 what doess this concept of re-exporting mean? 00:10
ChristopherBotto m: spurt('foo','bar'); run('chmod','-w','foo'); say 'Deleted' if unlink('foo'); 00:11
camelia rakudo-moar 9e53fa: OUTPUT«spurt is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:1␤ in sub spurt at src/RESTRICTED.setting:17␤ in block <unit> at /tmp/L_R_I4NAu6:1␤␤»
jdv79 a use is lexical, no?
ChristopherBotto m: spurt('/tmp/foo','bar'); run('chmod','-w','/tmp/foo'); say 'Deleted' if unlink('/tmp/foo');
camelia rakudo-moar 9e53fa: OUTPUT«spurt is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:1␤ in sub spurt at src/RESTRICTED.setting:17␤ in block <unit> at /tmp/EzaJ5nq71X:1␤␤»
ChristopherBotto Anyway, that says "Deleted" when I run it on my CentOS 7 (64-bit) machine. It's on a cluster hard drive. 00:12
Sorry I got to run. Thanks #perl6 for all your hard work!
00:13 ChristopherBotto left
geekosaur why is that surprising? 00:13
skids jdv79: rexport means things that import from you get things you imported from something else.
jdv79 skids: ah. that sounds insane. 00:14
skids Not really, it just means you can define a proxy for another module.
jdv79 explicitly, sure. impliclity, not so much. 00:15
timotimo jdv79: it means that something you import via "use" gets re-exported to your "user" 00:16
jdv79 cool 00:17
skids jdv79: I think it's a pretty explicit mechanism: use Sense <&common> :EXPORT<@horse>; # &common is internally used, your module user gets @horse 00:18
geekosaur .tell ChristopherBotto it's write access on /tmp that controls whether unlink of /tmp/foo works. permissions on /tmp/foo's inode are not relevant. 00:19
yoleaux geekosaur: I'll pass your message to ChristopherBotto.
jdv79 i've not read that part of the docs/spec. it sounds cool though. thanks.
geekosaur .tell ChristopherBotto GNU rm looks at the permission as a courtesy, more or less. Hard links imply that the directory entry is independent of the inode (file). I am not sure perl6 should be in the business of enforcing anything more than OS permissions. 00:24
yoleaux geekosaur: I'll pass your message to ChristopherBotto.
lucasb geekosaur++, that clarified things for me too, thanks 00:25
00:28 firstdayonthejob left 00:32 adu joined
b2gills Is there an URL for a rendered S27? (should be prominently linked to on perl6.org) and why is it still only a draft? 00:33
00:33 lolisa joined
b2gills FreezerburnV: use Long::Module::Name; my constant foo = Long::Module::Name; foo.bar(); 00:34
00:34 patrickz left
FreezerburnV b2gills: Awesome, thanks :) 00:34
jdv79 stmuk: cool blurb. end was perhaps abrupt.
stmuk++ 00:35
lucasb say unlink('/non/existent').perl #=> ["/non/existent"] 00:40
say unlink('/no/permission').perl #=> []
^^ I think those return values are a little strange...
00:41 tipdbmp left 00:44 lucasb left 00:50 n0tjack left 00:51 xpen joined
Juerd rewrites part of Net::MQTT to look more like jnthn's Stomp module. 00:54
His code is much nicer, and stomp and mqtt look a lot alike :) 00:55
00:55 xpen left
timotimo jnthn's code has that property commonly :D 00:58
Juerd has to upgrade rakudo to do this :) 01:00
Apparently the .share syntactic sugar is new
leont Yeah, I should still adapt some of my code to the new supply blocks
01:00 BenGoldberg joined 01:01 n0tjack joined
leont The share comment kind of made clear what the whole "on demand" thing was about, until now that wasn't quite clear to him. 01:02
Juerd Which him? 01:03
timotimo leont, i believe
leont forgot he wasn't talking in 3rd person, he's already brushing his teeth and should have been in bed already 01:04
Juerd thinks he understands on-demand vs live, but doesn't understand exactly what 'share' does 01:05
leont (really, I've been doing this sort of thing all that, not my day apparently
01:05 n0tjack left
Juerd It creates a new supplier from the supply, I get that, but I don't really understand why that's necessary :) 01:06
leont: Welterusten :)
skids If you want two supplies of the same values from one tap of the on-demand.
Juerd Oh, I think I get it. His !process-messages returns an on-demand supply, even if it itself whenevers a live one. 01:08
Seems like all that's missing is a supplier { ... } block then :P
01:09 Actualeyes joined 01:15 yeahnoob joined 01:18 leont left
skids Well, and a way to get nonserial Supplies if that's what you want (the one way I know of got accidetally broken during the refactor) and maybe a module re-implementing nonserial versions of the nice composeable functionality. 01:21
01:27 rurban left 01:29 n0tjack joined 01:32 corner90 joined 01:33 n0tjack left 01:35 Ben_Goldberg joined 01:37 BenGoldberg left 01:44 n0tjack joined, aborazmeh joined, aborazmeh left, aborazmeh joined 01:48 Actualeyes left, n0tjack left 01:51 aborazmeh left 01:52 n0tjack joined 01:55 Actualeyes joined
Juerd github.com/Juerd/p6-mqtt/blob/mast...et/MQTT.pm # Done rewriting to look like jnthn's code :) 01:56
01:56 n0tjack left
Juerd Took an hour, including a full recompile of moar :) 01:56
Not sure about those supply/whenever/emit patterns. Feels like grep/map matches what happens better. 01:58
And I'm curious to know what jnthn's magic self!ensure-connected is like. 02:00
02:01 kitesurf left 02:04 corner90 left 02:10 adhoc left 02:12 adhoc joined 02:13 tipdbmp joined, parisba_ is now known as DrParis 02:14 raiph left
FreezerburnV Given a “new” method with a list of arguments, how would I properly call bless to initialize a private attribute that is a list? I tried both “my @inputs = [$input1, $input2]; self.bless(:@inputs);” where the class has “@!inputs”, and “self.bless([$input1, $input2]);”. A later method call shows that nothing is in the list 02:21
Also tried with “($input1, $input2)” 02:22
02:22 labster left 02:29 n0tjack joined, Sqirrel left
dj_goku_ anyone else getting build failures with 3b4964b 02:31
skids Yeah, install failures actually. 02:32
FreezerBurnV: yeah that looks a bit broken. 02:33
m: class A { has @!l; method new ($a, $b) { my @l = $a, $b; self.bless(:@l) }; submethod BUILD(:@!l) { }; method get_l { @!l } }; A.new(2,3).get_l.perl.say 02:34
camelia rakudo-moar 9e53fa: OUTPUT«[2, 3]␤»
skids m: class A { has @.l; method get_l { @!l } }; A.new(:l[2,3]).get_l.perl.say 02:35
camelia rakudo-moar 9e53fa: OUTPUT«[2, 3]␤»
skids Oh, I know -- it's because it is private.
m: class A { has @!l; method get_l { @!l } }; A.new(:l[2,3]).get_l.perl.say
camelia rakudo-moar 9e53fa: OUTPUT«[]␤»
02:37 n0tjack left
Hotkeys how does one make a safe eval-bot, is there a simple explanation without me reading camelia's source 02:37
skids I think you may just have to use BUILD for private attrib inits. 02:38
Well, there's "RESTRICTED.setting" but it is far from perfectly safe yet. 02:41
Don;t quite know hoe to use it myself. 02:42
dj_goku_ Hotkeys: one thing I tried a week or so back is Proc::Async was disabled which was nice. 02:43
Hotkeys I want to implement a repl in an IRC bot I'm working on that's written in p6 02:44
or at least
an evaler
02:44 Zoffix joined
Hotkeys but I doubt just doing 'EVAL' is very safe for that 02:44
02:49 adu left, kanishka left
FreezerburnV skids: Alright, thanks for the help. I’ll add a BUILD method 02:51
02:56 kid51 joined 03:00 zostay left 03:01 FreezerburnV left 03:05 n0tjack joined 03:07 gtodd joined 03:13 n0tjack left 03:17 n0tjack joined 03:18 ilbelkitty joined, kaare_ joined 03:22 n0tjack left 03:31 noganex_ joined 03:33 AlexDaniel joined
AlexDaniel m: my Int() $x 03:33
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZETzLF2TbQ␤Coercion Int(Any) is insufficiently type-like to qualify a variable␤at /tmp/ZETzLF2TbQ:1␤------> 3my Int() $x7⏏5<EOL>␤ expecting any of:␤ constraint␤»
AlexDaniel “insufficiently type-like” means? 03:34
03:34 noganex left
AlexDaniel I mean, is it some kind of an interesting thing? Is there any way to make the compiler happy in this case without removing ()? 03:35
Hotkeys what's wrong with removing () 03:36
AlexDaniel Hotkeys: nothing at all! I'm just curious 03:37
geekosaur I would not think so; it looks like either one of C's corner cases or an attempt to define a function... 03:38
03:39 pjscott joined, kid51 left 03:40 Ben_Goldberg left
AlexDaniel Hotkeys: Well, um… I love to throw random stuff into it and see where would the error messages lead me. 03:40
Hotkeys it might just be an intentional thing
no type coercions in variable declarations or something
AlexDaniel and it seems like Perl 6 is the only language that will actually guide me to the code that actually compiles 03:41
03:41 Ben_Goldberg joined
geekosaur I think that was speculated on but deferred 03:44
AlexDaniel –“is perl6 production ready yet?” –“no” –“depends” –“People *are* using it in production” … what a beautiful set of answers! 03:46
03:46 FreezerburnV joined 03:57 AlexDaniel left
Ben_Goldberg You left out, "Define production ready," and of course, "It'll be ready by Christmas!" 04:03
04:08 pjscott left 04:11 kaare_ left 04:12 Ben_Goldberg left, yqt left 04:13 atta joined
FreezerburnV Do enums always have their keys (I think that’s the correct way to reference the names of each possible enum?) put into the global namespace? e.g.: “enum Foo { :BAR(“bar”) };”, I would use it by doing “my $sillyEnum = BAR; say $sillyEnum.value;” (this seems to be the case for SDL2::Raw enums at least) Is there a way to reference 04:15
Woops, hit enter when I meant to hit backspace there
04:15 pjscott joined
FreezerburnV I answered that last bit of question myself 04:15
04:15 pjscott left 04:16 pjscott joined
pjscott I did a rakudobrew build moar; rakudobrew build-panda and now 'panda' outputs: 04:18
Useless use of "\\n\\t*$_" in expression "\\n\\t*$_" in sink context
- QAST::Op(call &infix:<~>) \\n\\t*$_
- QAST::Want
- QAST::WVal(Str)
- Ss
- QAST::SVal(\n\t*)
- QAST::Op(callmethod Stringy)
- QAST::Var(lexical $_) $_
WARNINGS for /Users/peter/.rakudobrew/moar-nom/install/share/perl6/site/resources/F4BE6820824798E18DA2B478C7F0B0ECCA322B27:
Useless use of "\\n\\t*$_" in expression "\\n\\t*$_" in sink context (line 155)
Panda -- Perl 6 Module Installer
FreezerburnV And for a totally different question: Is there planned/currently a way to embed MoarVM/Rakudo/Perl6/whatever the execution environment actually is such that it would be possible to redistribute standalone binaries? (e.g.: a GUI or a game or something) 04:19
04:20 skids left 04:31 FreezerburnV left 04:33 znpy left, znpy joined 04:39 vividsnow joined 04:41 llfourn joined 04:43 gtodd left, gtodd joined
TimToady pjscott: sorry, too busy working on the fix for that to answer :) 04:48
04:55 cognominal left 04:56 cognominal joined 04:57 cognominal left 05:00 cognominal joined 05:02 woodruffw is now known as yossarian, yossarian is now known as woodruffw 05:05 cognominal left 05:06 cognominal joined 05:14 gtodd1 joined 05:15 gtodd left 05:17 pjscott left 05:18 n0tjack joined 05:20 psy_ left 05:24 n0tjack left 05:43 regreg joined 05:51 Sqirrel joined 05:53 aborazmeh joined, aborazmeh left, aborazmeh joined 05:54 psy_ joined 05:59 snarkyboojum_ joined
leat1 is it supported to run panda's bootstrap.pl by root? 06:01
06:02 cognominal left 06:03 cognominal joined, bjz joined 06:04 cognominal left, cognominal joined 06:06 bjz_ joined 06:07 bjz left 06:08 snarkyboojum_ left 06:11 snarkyboojum_ joined
grondilu ./perl6-m tools/build/install-core-dist.pl 06:12
===SORRY!=== Error while compiling /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85
An exception occurred while evaluating a constant
at /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85:13
Exception details:
Could not find symbol '&bool'
in block at /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85:13
leedo leat1: i had to delete my install directory to get it working again
06:14 leat1 left 06:15 leat joined 06:16 psy_ left 06:17 darutoko joined 06:21 bjz_ left 06:23 khw left 06:24 xfix joined 06:27 labster joined 06:28 bjz joined
leat oh. I was going to make an ebuild for panda. 06:35
06:36 bjz left 06:43 geraud left
hahainternet heh, hello leedo 06:45
06:47 rindolf joined 06:54 bjz joined 06:55 snarkyboojum_ left 06:59 |Tux| left, |Tux| joined, suman joined 07:00 novapatch left 07:02 bjz_ joined, adhoc left 07:03 bjz left
suman Why are there no MOOC (massive open online course) on Perl5? Hope there will be plenty of such mooc on perl6. This may be the reason for why very few new people are coming to our community :( 07:03
07:04 adhoc joined
diakopter suman: Perl ranks fairly low on Github: githut.info/#Perl 07:05
suman Why are there no MOOC (massive open online course) on Perl5? Hope there will be plenty of such mooc on perl6. This may be the reason for why very few new people are coming to our community :(
stmuk is there an echo?
suman diakopter Party explained due to lack of new people in our community :( 07:07
diakopter suman: around 16,000 repos primarily using Perl compared to 324,000 of JavaScript and 222,000 of Java 07:08
07:09 _nadim joined
diakopter however, Swift and Scala have growth rates that will tip them past Perl very soon, pushing Perl down to 17th or so 07:10
suman Swift has grown up due to hype of apple community while scala has grown due to its own strength. 07:12
Scala has mooc on coursera www.coursera.org/course/progfun www.coursera.org/course/reactive. While there are NONE for Perl or Perl6. 07:14
07:20 FROGGS joined
suman So the answer is MOOC for perl. :) 07:20
Why are there no MOOC (massive open online course) on Perl5? Hope there will be plenty of such mooc on perl6. This may be the reason for why very few new people are coming to our community :(
diakopter suman: why do you keep repeating that question? 07:21
suman Also Perl6 should also focus on graphics and analytics capability natively. 07:23
This is data age. Data everywhere.
diakopter ..but to complete my response, there are so few/no MOOC for Perl because there are so few people who want to learn Perl. goo.gl/uEwjdi compares job trends
07:23 balazs left
suman diakopter Yeah its disappointing. 07:25
Is there any video may be in youtube on regular expression in Perl 6 for newcomers like me. Easy to understand? 07:33
diakopter www.youtube.com/watch?v=oo-gA9Z9SaA
this is a great overview though www.youtube.com/watch?v=lpu-3UF_b48 07:34
07:36 firstdayonthejob joined 07:38 rurban joined 07:40 CIAvash joined 07:45 bjz_ left 07:48 bjz joined 07:51 M-Illandan left, eternaleye left
masak good morning, #perl6 07:57
moritz \o masak 07:58
08:03 ollej joined 08:07 M-Illandan joined 08:15 M-eternaleye joined
abraxxa good morning! 08:18
08:24 RabidGravy joined, ollej left
_nadim Good morning all 08:25
jdrab o/
08:27 zakharyas joined
RabidGravy marnin! 08:27
08:30 n0tjack joined 08:31 bjz left 08:32 uruwi_ joined, uruwi left 08:33 firstdayonthejob left
dalek p: 1c2c101 | TimToady++ | src/QAST/ (3 files):
support for dumping annotations
08:34
08:35 leat left, n0tjack left
lizmat notes that she had to nuke install to be able to build the latest pull 08:36
yoleaux 14 Dec 2015 21:02Z <jnthn> lizmat: Wish you a swift recovery!
14 Dec 2015 21:04Z <masak> lizmat: aye; de-flu soon!
nine lizmat: you're building. Is that a good sign? 08:37
lizmat not really, it's a habit I have 08:38
each morning I pull, build and spectest
I don't have to think about that :-)
abraxxa m: my $foo = 4.85; say $foo.WHAT
camelia rakudo-moar 9e53fa: OUTPUT«(Rat)␤»
08:38 bjz joined
lizmat probably will hit the hay again within the next half hour 08:38
abraxxa this gives a Rat. In DBDish::Oracle i'm returning Real's, which one is correct? 08:39
nine lizmat: hope you feel better soon
lizmat thank you, also masak jnthn
nine abraxxa: both are for their respective specifications
08:41 jack_rabbit joined
TEttinger the flu flew down the flue and into lizmat. but lizmat wasn't having any of it and was better in a day or so 08:41
the end
lizmat TEttinger: I wish... 08:42
bed&
08:42 captain-adequate joined
dalek kudo/nom: db68963 | TimToady++ | src/Perl6/ (3 files):
great sink refactor refactor

Installed a mechanism so we can tell who actually marked which node as wanted or unwanted. (We might rip it back out later in the interests of efficiency.) Now distinguishes escape blocks via a dynvar because all the other ways I tried didn't work.
08:44
abraxxa nine: what's their difference?
i get a float from Oracle, a num64 to be exact 08:45
TimToady there's still a spurious Useless use reported during compilation, but hopefully the other spurious messages should be fewer
I believe it will probably fix the panda issue, but can't test because I'm getting the Can't find '&bool' error that someone else reported 08:46
the gsrr was fairly clean before I pulled, but now I'm gonna go to bed and let someone else figure out the bool issue 08:47
abraxxa i don't want to lose precision
moritz abraxxa: that would be a Num in Perl 6 08:48
abraxxa moritz: none of the intro docs handles numeric datatypes and which to use when 08:49
TimToady has been hacking on the gsr solidly for about four days now, and is pretty confident the new ASTs have a much better (though not yet perfect) idea of whether they're in sink context or not.
abraxxa moritz: the test case just does colname => 4.85 which results in a Rat and the comparision fails 08:50
08:50 smls joined
moritz abraxxa: then it should probablye use 4.85e0 08:50
smls Hi #perl6
Haven't been here in a while
TimToady apologizes in advance if the gsrr push screws anything up
smls: o/
moritz abraxxa: doc.perl6.org does document the numeric types, just not yet in a tutorial/intro style
abraxxa moritz: yes 08:51
moritz \o smls, great to have you back
smls How is the 6.c release shaping up?
08:51 lolisa left
smls m: say ($_ * 5 for ^10); 08:51
camelia rakudo-moar 9e53fa: OUTPUT«Useless use of "*" in expression "$_ * 5" in sink context␤- QAST::Op(call &infix:<*>) *␤ - QAST::Var(lexical $_) $_␤ - QAST::Want 5␤ - QAST::WVal(Int)␤ - Ii␤ - QAST::IVal(5)␤␤WARNINGS for /tmp/ggahjffn3h:␤Useless use of "*" in …» 08:52
moritz smls: difficult, because everybody wants to get their last-minute favorite things in
smls TimToady: Is "gsrr push screws anything up" responsible for ^^ ?
moritz smls: I don't think camelia's rakudo is new enough
.tell nine Inline::Python tests complaining: perlpunks.de/paste/show/566fd4d4.7163.e4
yoleaux moritz: I'll pass your message to nine.
smls That bug is new though (introduced last 2 days). If it's not expected as part of ongoing refactors, I'll rt it. 08:53
moritz smls: please check first if TimToady's last commit has fixed it 08:54
RabidGravy The "useless use" TT just mentioned, and I think the debug output is just temporary
TimToady smls: the bug is still there, but I probably know how to fix it 08:56
smls ok
abraxxa moritz: can you give ma a short overview aber the available numeric datatypes? 08:57
08:57 brrt joined
abraxxa Num reads like the Perl 6 equivalent of num64 08:58
08:58 maddingu1 is now known as maddingue
abraxxa oh, Real is a role 08:58
RabidGravy m: say num64 ~~ Num 08:59
camelia rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/FwI7f_1RRt:1␤␤»
RabidGravy eh?
but yes
08:59 AndyDee left
abraxxa m: use NativeCall; say num64 ~~ Num; 09:00
camelia rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/RLsxImkxeM:1␤␤»
abraxxa we need to fix this 'Cannot unbox a type object' before 6c release!
masak TimToady: the only thing that worries me about the gsr is the word "great" ;)
abraxxa this will seriously drive away interested people 09:01
GSR? Suzuki?
masak abraxxa: that particular thing? oh, that's a relief! :P
abraxxa masak: hm?
smls By the way, I wasn't run() expected to get a redesign to "make the easy things easy" again (e.g. easily getting STDOUT into a string)? I guess there weren't enough tuits?
masak abraxxa: ...will drive away interested people.
abraxxa masak: in the month I've been working on DBDish::Oracle that was the most annoying, yes 09:02
masak abraxxa: it doesn't look all that hard to fix.
RabidGravy abraxxa, to be honest that one is sort of expected, it's unlikely you'll have a native num type in the wild
abraxxa because typos, duplicate vars, missing vars all ended in this without --ll-exception
how can it be that I can declase a var as Real if that's only a role?
masak abraxxa: fwiw, my expectation is that that one should just print True.
abraxxa doc.perl6.org/type/Real
masak abraxxa: because roles can instantiate as (anonymous) classes when needed. 09:03
RabidGravy yes, that was my expectation, maybe I have NativeCall syndrome and just accept that I'm not in Kansas anymore
09:03 dj_goku joined, dj_goku left, dj_goku joined
masak m: role R {}; say R.new 09:03
camelia rakudo-moar 9e53fa: OUTPUT«R.new␤»
abraxxa masak: i see 09:04
09:05 snarkyboojum_ joined 09:06 dakkar joined
masak m: my $n = num64; given $n { when Num { say "OH HAI" } } 09:06
camelia rakudo-moar 9e53fa: OUTPUT«OH HAI␤»
masak huh. that works
09:08 flaviusb joined
dalek kudo/nom: 41ba549 | TimToady++ | src/Perl6/Actions.nqp:
fix for say ($_ * 5 for ^10);
09:10
RabidGravy infact I thought I had code that did that but it use a variable github.com/jonathanstowe/Audio-Snd...le.pm#L371
09:11 leont joined
RabidGravy because some of this stuff wouldn't work otherwise 09:11
09:12 snarkyboojum left, snarkyboojum_ left, captain-adequate left 09:14 DrForr joined 09:17 snarkyboojum joined 09:19 hankache joined, captain-adequate joined 09:20 hankache left
dalek kudo/nom: cc21892 | TimToady++ | tools/build/NQP_REVISION:
bump NQP to get .dump_annotations
09:21
09:22 telex left 09:24 telex joined
abraxxa masak: is there anything I can do to help fix the 'Cannot unbox a type object' error? 09:27
09:31 secwang joined 09:33 suman left
abraxxa die "unhandled type: {$v.WHAT}"; outputs only 'unhandled type' and a 'Use of uninitialized value of type Rat in string context' warning 09:33
and 'Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block' 09:34
09:35 bjz left
masak abraxxa: .^name is a good way to get the name of a type 09:37
abraxxa: I've basically stopped doing .WHAT on things after I learned to like .^name
RabidGravy the unbox thing is more fundamental than I thought as the obvious dumb ACCEPTS on Num doesn't help
abraxxa i thought WHAT is the correct method 09:38
but in this case it seems to fail
^name works
09:38 yeahnoob left
abraxxa m: my $foo = 4.85; say $foo.^name; 09:39
camelia rakudo-moar 9e53fa: OUTPUT«Rat␤»
masak thing is, .WHAT produces a type object, which by definition is undefined.
so it doesn't always stringify well
abraxxa i see!
RabidGravy some types don't have all the gubbins required to make some of the intropspection stuff work nicely
abraxxa that's a bit confusing: perl6intro.com/#_types
it says that it returns a type (object?) but the say seems to work there 09:40
masak yes, "type object"
moritz abraxxa: say() is smarter than normal stringification
masak m: say 42 ~~ Int; my $i = Int; say 42 ~~ $i
camelia rakudo-moar 9e53fa: OUTPUT«True␤True␤»
masak abraxxa: `Int` there is just an object that stands in for the type of all Ints 09:41
abraxxa: it's an "undefined instance" of Int, at least conceptually
abraxxa moritz: how is say smarter?
masak m: say Int ~~ Int; my $i = Int; say $i ~~ Int 09:42
camelia rakudo-moar 9e53fa: OUTPUT«True␤True␤»
masak m: print Int.gist(), "\n" # say comes down to this, I think
camelia rakudo-moar 9e53fa: OUTPUT«(Int)␤»
nine masak: yes, it does
yoleaux 08:52Z <moritz> nine: Inline::Python tests complaining: perlpunks.de/paste/show/566fd4d4.7163.e4
El_Che morning
masak \o 09:43
grondilu Stage optimize : WARNINGS for /usr/local/src/rakudo/gen/moar/m-CORE.setting:
Useless use of $compunit in sink context (line 35047) 98.431
TimToady known problem, but benign
RabidGravy chortle
abraxxa when people use literal floats they get a Rat which automagically becomes a Num if the denominator is >64bit. I need to handle both as floats, whatfor should I check?
i thought the Real role but Int does that as well
El_Che good, the christmas elves are working on my christmas present ;)
moritz abraxxa: literal floats have an "e" in them 09:44
athat is, scientific notation
abraxxa: and "Real" is the common type that unifies Rat and Num (and also Int)
masak m: say 4.2 ~~ Rat; say 4.2e0 ~~ Num
camelia rakudo-moar 9e53fa: OUTPUT«True␤True␤»
abraxxa moritz: yes, I learned that today but I don't think it makes sense to enforce people to define all their floats that way because most won't care
masak m: say Rat ~~ Real; say Num ~~ Real
camelia rakudo-moar 9e53fa: OUTPUT«True␤True␤»
grondilu abraxxa: what you were thinking of was probably "decimal literal"
masak abraxxa: the fact that most won't care is why the default is Rat. 09:45
RabidGravy abraxxa, casting
abraxxa i need to decide wheter to pass a var either as long or num64 to OCI
09:47 leont left
abraxxa should I pass it as long if it is an Int and as num64 if it is a Num? 09:48
s/Num/Real/
by checking for Int before I exclude them from matching the Real too
RabidGravy m: sub foo(Numeric $a) { my $type = $a ~~ Real ?? Num !! Int; $type($a) } say foo(1).WHAT; say foo(1.2).WHAT' 09:49
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wDTJl6jraI␤Strange text after block (missing semicolon or comma?)␤at /tmp/wDTJl6jraI:1␤------> 3= $a ~~ Real ?? Num !! Int; $type($a) }7⏏5 say foo(1).WHAT; say foo(1.2).WHAT'␤ expecting any of…»
RabidGravy m: sub foo(Numeric $a) { my $type = $a ~~ Real ?? Num !! Int; $type($a) }; say foo(1).WHAT; say foo(1.2).WHAT'
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gb7CjaEhjp␤Two terms in a row␤at /tmp/gb7CjaEhjp:1␤------> 3a) }; say foo(1).WHAT; say foo(1.2).WHAT7⏏5'␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ s…»
RabidGravy m: sub foo(Numeric $a) { my $type = $a ~~ Real ?? Num !! Int; $type($a) }; say foo(1).WHAT; say foo(1.2).WHAT
camelia rakudo-moar 9e53fa: OUTPUT«(Num)␤(Num)␤»
RabidGravy or something like that
m: sub foo(Numeric $a) { my $type = $a ~~ Int ?? Int !! Num; $type($a) }; say foo(1).WHAT; say foo(1.2).WHAT 09:50
camelia rakudo-moar 9e53fa: OUTPUT«(Int)␤(Num)␤»
RabidGravy there
09:51 bjz joined 09:52 rindolf left
abraxxa i hoped there is a role which matches all non-decimal and one for all decimal numbers 09:52
Int does the former but there is none for the later
09:52 TEttinger left
abraxxa because Int does Real 09:52
m: use NativeCall; my Rat $foo = 4.85; my num64 = $foo.Real; 09:53
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/hUerwNnp5a␤Malformed my␤at /tmp/hUerwNnp5a:1␤------> 3NativeCall; my Rat $foo = 4.85; my num647⏏5 = $foo.Real;␤»
masak m: say Rat ~~ Rat | Num; say Num ~~ Rat | Num 09:54
abraxxa huh?
camelia rakudo-moar 9e53fa: OUTPUT«True␤True␤»
abraxxa m: use NativeCall;
camelia ( no output )
masak m: subset NonIntReal of Real where { $_ !~~ Int }; say Rat ~~ NonIntReal; say Num ~~ NonIntReal 09:55
09:55 bjz_ joined
camelia rakudo-moar 9e53fa: OUTPUT«True␤True␤» 09:55
abraxxa m: use NativeCall; my $foo = 4.85; my num64 = $foo.Real;
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7H_QNbc1kU␤Malformed my␤at /tmp/7H_QNbc1kU:1␤------> 3use NativeCall; my $foo = 4.85; my num647⏏5 = $foo.Real;␤»
abraxxa what am i doing wrong?
masak missing variable name
abraxxa m: use NativeCall; my Rat $foo = 4.85; my num64 $bar = $foo.Real;
camelia rakudo-moar 9e53fa: OUTPUT«This type cannot unbox to a native number␤ in block <unit> at /tmp/p6T9PgC_w_:1␤␤»
abraxxa why does that happen?
masak the .Real there is a no-op
moritz abraxxa: because $foo.Real returns a Real, but not all Reals are num64
masak since Rat is already Real
abraxxa I check for ~~ Real but convert to .Num
masak nope, no conversion 09:56
only trying to cram a square peg in a round hole :)
abraxxa how would you call it?
09:56 bjz left
abraxxa so which types to always fit in a num64 which is the largest I can pass to OCI? 09:56
moritz num64
RabidGravy m: my $foo = 4.85; my num64 = Num($foo);
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dCuIZbEguk␤Malformed my␤at /tmp/dCuIZbEguk:1␤------> 3my $foo = 4.85; my num647⏏5 = Num($foo);␤»
abraxxa Num should as the docs say it is the same as num64 internally
RabidGravy m: my $foo = 4.85; my num64 $baz = Num($foo); 09:57
camelia ( no output )
moritz so, use Num
but don't try to convert to Num by calling .Real
masak RabidGravy++
abraxxa moritz: it's not what I use but what the user passes to DBIish
RabidGravy either cast to Int if it's an Int or Num oterwise
abraxxa RabidGravy: that's what I currently do
smls TimToady: I found another one - this time when creating a whatever code:
m: say (64 + *).chr;
camelia rakudo-moar 9e53fa: OUTPUT«Useless use of "+" in expression "64 + *" in sink context␤- QAST::Op(call &infix:<+>) +␤ - QAST::Want 64␤ - QAST::WVal(Int)␤ - Ii␤ - QAST::IVal(64)␤ - QAST::Var(lexical $whatevercode_arg_1)␤␤WARNINGS for /tmp/cISE1JzRNZ:␤Useles…»
abraxxa but the check is against Real
which is confusing
RabidGravy well Real is the wrong check
moritz if the other side (C) wants a Num, convert to Num; don't check for Int first 09:58
abraxxa when does a ~~?
moritz: it's not what it wants, its what I pass it
I can pass both
masak abraxxa: pass Int if you can, Num if you must :) 09:59
abraxxa given/when needs one more indention that if/elsif ;(
masak: yes, but what should I check for? 10:00
when Int, then when Real?
10:00 xfix left
abraxxa because I have to handle Rat too 10:00
moritz yes
masak abraxxa: when Int, else convert to Num
abraxxa or should I check for both Num and Rat instead of the role Real?
masak abraxxa: yeah, forget about Real
abraxxa: Int is Real too
abraxxa masak: there are stings too, and date(time)s...
masak: if I check for Int first that's not an issue
masak abraxxa: match against Rat | Num, then
moritz abraxxa: no, then you have to check FatRat too etc. 10:01
10:01 jack_rabbit left
abraxxa masak: i thought checking against Real is better if someone implements a Type that also does Real 10:01
moritz masak: what's wrong with checking Int first, then Real?
abraxxa that's why I've asked for a Role that says 'is a float number'
moritz but Rat *isn't* a float number 10:02
it's just convertible into one
but, so is Int
10:03 secwang left, regreg left
stmuk there is a new "unbox" error due to changed rakudo behaviour (not the "old" intermitaint panda one) or am I misunderstanding? 10:06
RabidGravy no
native number types don't smart match nicely 10:07
but it doesn't matter here as there will be a value or at least a variable containing the type 10:08
stmuk ok if it's simple and reproductable why does rerunning panda make the problem go away? is that unbox error a side effect?
abraxxa moritz: that's an implementation detail, logically it's a number with decimal places 10:09
moritz abraxxa: which is totally not the same as a float
m: say so 0.1e + 0.2e == 0.3e
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4cRwRmf6Fz␤Confused␤at /tmp/4cRwRmf6Fz:1␤------> 3say so 0.1e7⏏5 + 0.2e == 0.3e␤»
moritz m: say so 0.1e0 + 0.2e0 == 0.3e0
camelia rakudo-moar 9e53fa: OUTPUT«False␤»
RabidGravy stmuk, you're not talking about the lasty hour of backlog, and it's just a coincidence
moritz m: say so 0.1 + 0.2 == 0.3
camelia rakudo-moar 9e53fa: OUTPUT«True␤»
abraxxa moritz: i know the technical difference and love it 10:10
stmuk RabidGravy: that what I meant by the new "unbox" error
abraxxa but there is no way to pass it to OCI in a native way
RabidGravy stmuk, not sure what panda has to do with it then 10:11
abraxxa, this is getting over complicated, if it's a Rat or a Num cast it to a Num, if it's an Int cast it to an Int
abraxxa what about FatRat? 10:12
10:13 M-eternaleye left, M-eternaleye joined
RabidGravy there are only two basic native number types int of various size and num of various size, so if the cast fails then you're stuffed anyway 10:13
FatRat would be a "double" say cast to a Num
there may well be a loss of precision, but that's inherent in the difference between the way Perl does the numbers to how e.g. C does 10:14
stmuk RabidGravy: panda has reported the same error since precomp was merged but not consistantly 10:15
RabidGravy yeah, this is actually totally unrelated 10:16
stmuk RabidGravy: so you are actually agreeing with my original question and just misunderstanding me? 10:17
RabidGravy no, you've confused me
10:17 espadrine joined
RabidGravy m: num64 ~~ Num 10:17
camelia rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/XUzNrkj6Dq:1␤␤»
RabidGravy *that* is totally unrelated to what is happening with panda 10:18
stmuk yes that's what I said
stmuk gives up
RabidGravy stmuk, you said "ok if it's simple and reproductable why does rerunning panda make the problem go away? is that unbox error a side effect?" no? 10:19
stmuk see line 10:06
RabidGravy right 10:20
the unbox error in panda is caused by an undefined variable being passed to an nqp:: function in the method files() without being checked 10:21
stmuk I explicity asked if there were two unbox errors and you said "no" at 10:06 10:22
RabidGravy yes, there is no "new" unbox error 10:24
10:24 secwang joined
RabidGravy and no it is not related to anything happening in panda 10:24
10:25 labster left
RabidGravy it is entirely possible that it has always done this one as long as the native types have existed 10:26
stmuk % /opt/rakudo-2015.09/bin/perl6 10:28
> say num64 ~~ Num
True
RabidGravy ah ha! do you still have the source for that version? 10:30
10:31 cpage_ left, vytas left
stmuk probably not .. I am going to experiment a bit more 10:31
uruwi_ How to convert from an Int to an int
?
RabidGravy you don't have to
10:32 n0tjack joined
uruwi_ Hmm, Type check failed in assignment to '@ingredients'; expected 'Array[int]' but got 'Int' 10:32
my int @this = +$0, +$1, +$2, +$3, +$4;
@ingredients.push(@this);
RabidGravy uruwi_, that's different
uruwi_ Never mind, already figured it out :P
stmuk RabidGravy: what should say num64 ~~ Num return? 10:34
RabidGravy stmuk, True 10:35
moritz m: say num64 ~~ Num
camelia rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/LC0i2CsWyv:1␤␤»
10:35 Axord joined
moritz m: say int32 ~~ Int 10:35
camelia rakudo-moar 9e53fa: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/DBkqU7ZM6Y:1␤␤»
stmuk so why is the error not new if it doesn't do that now and it did it 2 months ago?
RabidGravy I'm thinking there was a refactor around the native types at around a month or so ago which done broke it
stmuk ok 10:36
10:36 n0tjack left
stmuk wonders how Bend behaves 10:36
10:38 aborazmeh left
dalek line-Python: 64491c2 | (Stefan Seifert)++ | / (7 files):
Update for CompUnitRepo changes

Use %?RESOURCES to find pyhelper.so Manual precompilation is no longer necessary. Rakudo automatically precompiles so in essence, every test is now a precompilation test, too.
10:38
moritz wonders how Bender behavers
moritz *behaves
nine moritz: ^^^
moritz nine: tusend takk
RabidGravy the thing is that "my native num64 is repr('P6num') is Num is nativesize(64) { }" so there is some weird going on before the "normal" smartmatch mechanism kicks in
moritz RabidGravy: might be just a specialized ACCEPTS that's missing a :D 10:39
nine: now I get
Cannot locate native library '/home/rakudobrew/.panda-work/1450175937_1/resources/pyhelper.so': /home/rakudobrew/.panda-work/1450175937_1/resources/pyhelper.so: cannot open shared object file: No such file or directory
This is rakudo version 2015.11-554-g3b4964b built on MoarVM version 2015.11-49-g27f15d9 implementing Perl v6.b. 10:40
RabidGravy moritz, I cursorily attempted to augment Num with an ACCEPTS and it didn't appear to make a difference 10:44
nine moritz: darn... that's because panda compiles into blib/lib and blib/resources while make test runs prove -Ilib
RabidGravy yeah, it took me ages to get that right 10:45
stmuk . o O ( 25th or 17th place your bets now ) 10:46
RabidGravy nine, github.com/jonathanstowe/p6-Sys-La...4f3c53851c - is how I fixed Sys::Lastlog
nine RabidGravy: thanks! will try that 10:47
RabidGravy stmuk, I'm not liking the 17th 10:48
stmuk which month? 10:50
10:50 Axord left
stmuk I'm sure it will be fine in the wash :) 10:50
10:53 Zoffix left, Zoffix joined, zakharyas left 10:56 adhoc left 10:57 cpage_ joined 10:58 zakharyas joined
llfourn m: .say for 1,3..5 # any easy way to get this all flattened out 10:59
camelia rakudo-moar 9e53fa: OUTPUT«1␤3..5␤»
llfourn m: .say for 1,(3..5).flat # better than 11:00
camelia rakudo-moar 9e53fa: OUTPUT«1␤(3 4 5)␤»
llfourn m: .say for 1,3...5)
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oLjmiL_71I␤Unexpected closing bracket␤at /tmp/oLjmiL_71I:1␤------> 3.say for 1,3...57⏏5)␤»
llfourn m: .say for 1,3...5
camelia rakudo-moar 9e53fa: OUTPUT«1␤3␤5␤»
stmuk 2m to rocket launch! 11:01
11:02 snarkyboojum left 11:03 Khisanth left 11:07 jnthn joined
jnthn morning, #perl6 o/ 11:08
11:09 iH2O joined, adhoc joined 11:13 davercc left
jnthn m: .say for flat 1,3..5 11:13
camelia rakudo-moar 9e53fa: OUTPUT«1␤3␤4␤5␤»
jnthn Juerd: MQTT refactor Looks nice :) 11:15
11:15 Skarsnik joined 11:18 iH2O left
stmuk CVE-2015-8557 python-pygments: Shell injection in FontManager._get_nix_font_path 11:18
grondilu looks at es6-features.org/ and can't help noticing similarities with Perl 6 11:20
11:21 koo8 joined, secwang left
llfourn jnthn: thanks :) 11:22
11:23 secwang joined 11:24 leont joined 11:29 brrt left 11:30 pippo joined
grondilu what would you think about adding a :$repetitions! multi for combinations? 11:31
11:32 n0tjack joined
grondilu (or :$repeat) 11:32
ahh I still can't install rakudo: 11:33
./perl6-m tools/build/install-core-dist.pl
===SORRY!=== Error while compiling /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85
An exception occurred while evaluating a constant
at /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85:13
Exception details:
Could not find symbol '&bool'
in block at /usr/local/share/perl6/sources/089D4EE67A13498C10F4839B92C697AA10019E85:13
stmuk grondilu: try from scratch 11:34
grondilu don't know what you mean
RabidGravy yeah, lizmat indicated that she had to nuke before successfully building earlier
grondilu you mean rm -rf /usr/local/share/perl6/sources/ ? 11:35
RabidGravy or make clean
stmuk yes delete everything
RabidGravy or "rakudobrew nuke moar"
or whatever
timotimo smls: seems like nobody answered you yet; there were improvements to run() and friends. where were you looking to get to that conclusion? 11:36
stmuk and cross your fingers :)
grondilu tries 'make clean' first
11:36 n0tjack left
Zoffix stmuk, we're using that to build docs, don't we? 11:37
smls timotimo: Trial and error, mostly. And introspection... ;)
Zoffix (python-pygments)
11:37 secwang left, rindolf joined
jnthn m: use Test; is ($(1, 2) Z <a b c>), (($(1, 2), 'a'),) 11:37
camelia rakudo-moar 9e53fa: OUTPUT«not ok 1 - ␤␤# Failed test at /tmp/doxmR7OsxT line 1␤# expected: '1 2 a'␤# got: '1 a 2 b'␤»
RabidGravy I was going to suggest repurposing its-going-to-be-fabulous.com for Perl 6 earlier, but for some reason it had gone anyway
jnthn m: use Test; is (<a b c> Z $(1, 2)), (('a', $(1, 2)),) 11:38
camelia rakudo-moar 9e53fa: OUTPUT«not ok 1 - ␤␤# Failed test at /tmp/yGHOB7Rrlk line 1␤# expected: 'a 1 2'␤# got: 'a 1 b 2'␤»
11:38 rurban left
Zoffix RabidGravy, what do you mean gone away? Still loads for me :) 11:38
11:38 leont left
RabidGravy I prodded it 11:38
Zoffix i.imgur.com/6jhqk0K.png
Ah :D
RabidGravy for some reason the DNS wasn't in the wild 11:39
which is odd as I've had it for a very long time
stmuk Zoffix: yes
Zoffix Well... as long as we aren't using Joomla 11:40
(blog.sucuri.net/2015/12/remote-com...omla.html) 11:41
Skarsnik hm JSON::Marshal did not like the remove of has-accessor
smls timotimo: Then how can I write this expression more easily: 11:42
do { my $proc = run("some_program", :out); my $out = $proc.out.slurp-rest; $proc.out.close; $out }
i.e. an expression that returns the STDOUT of a program invocation as a string, *but* throws an exception if the program couild not run successfully 11:43
RabidGravy Skarsnik, on it when I've got a working rakudo again
timotimo smls: i haven't touched run() at all yet, i think :|
RabidGravy I did actually suspect that would be the case
timotimo Skarsnik: i think it's not removed, just renamed, eh? 11:45
smls timotimo: When you write run("program", :out).out.slurp-rest; you loose all the error handling - not to mention that it's still unfriendly to write.
Skarsnik yes renamed 11:46
RabidGravy, I make a PR for it
timotimo how about qx? 11:47
smls eew, shell quoting
timotimo qx doesn't do quoting 11:48
smls ?
timotimo single q means no parsing happens
er, interpolation
jnthn No, but it does then call shell, not run
timotimo ... or does qx give you "quotewords", too?
ah!
of course
11:49 vytas joined
jnthn smls: If you're writing the thing you wrote earlier a bunch of times, just factor it out into a sub. It's not *that* long. I agree sugar would be nice. 11:50
smls I'm wondering if the .Str method on Proc could be made to do all the slurping and error handling for you
se one could write: my $output = ~run("some_program", :out);
jnthn Feels a bit too magical. 11:51
smls It's .Bool method is already special I think, so it might fit
jnthn Though yeah, would probably be workable
11:51 siriu5b joined
jnthn m: say roundrobin($(1, 2), <a b c>).perl 11:52
camelia rakudo-moar 9e53fa: OUTPUT«([1, "a"], [2, "b"], ["c"]).Seq␤»
jnthn m: say roundrobin(((1, 2),), <a b c>).perl
camelia rakudo-moar 9e53fa: OUTPUT«([(1, 2), "a"], ["b"], ["c"]).Seq␤»
smls Another confusing thing about Proc is that .exitcode returns 0 if the program has not yet finished 11:54
would be saner to have ot block for the process to finish, IMO
Put another way, Proc feels a little too slanted towards async usage. It would be better if simple synchroneous usage was easy, and async use needed special care, rather than the other way around. 11:57
Especially since there is already Proc::Async for full async flexibility.
11:58 bjz_ left 11:59 bjz joined
jnthn m: say roundrobin(<a b c>, ((1, 2),)).perl 11:59
camelia rakudo-moar 9e53fa: OUTPUT«(["a", (1, 2)], ["b"], ["c"]).Seq␤»
12:00 [particle] left
jnthn ah...duh :) 12:00
12:00 siriu5b left 12:01 [particle] joined, [particle] left
jnthn has now got Z, X, their meta-op forms, and roundrobin respecting itemization 12:02
Now if only the patch will pass spectest... :)
12:02 rurban joined, siriu5b joined
timotimo :S 12:02
masak jnthn: is that the expected reslut for roundrobin...?
jnthn masak: The one above? 12:03
Well, close.
The problem was:
m: use Test; is roundrobin($(1, 2), <a b c>), (($(1, 2), 'a'), ('b',), ('c',)) 12:04
camelia rakudo-moar 9e53fa: OUTPUT«not ok 1 - ␤␤# Failed test at /tmp/wlci6XInaO line 1␤# expected: '1 2 a b c'␤# got: '1 a 2 b c'␤»
jnthn I also threw a .List is as we probably shouldn't be returning mutable arrays from roundrobin.
*in
masak grondilu: re :$repetitions or :$repeat -- couldn't the same effect be had by casting to .Set before?
jnthn .tell FROGGS t\04-nativecall\12-sizeof.t explodes on Win32/MSCV when compiling the test C lib, with "fatal error C1083: Cannot open include file: 'stdbool.h'" 12:06
yoleaux jnthn: I'll pass your message to FROGGS.
jnthn stdbool is apparently just not std enough :P
masak .oO( for very low values of "std"... ) 12:07
timotimo well, stdbool is std in C99 12:08
i thought we had a check for that to make sure it actually exists?
jnthn Not in that test C script, apparently
grondilu m: say join ' ', <a b c>.combinations(3); 12:09
camelia rakudo-moar 9e53fa: OUTPUT«a b c␤»
grondilu m: say <a b c>.combinations(2); 12:10
camelia rakudo-moar 9e53fa: OUTPUT«((a b) (a c) (b c))␤»
grondilu m: say <a b c>.Set.combinations(2);
camelia rakudo-moar 9e53fa: OUTPUT«((a => True c => True) (a => True b => True) (c => True b => True))␤»
FROGGS jnthn: ahh
yoleaux 12:06Z <jnthn> FROGGS: t\04-nativecall\12-sizeof.t explodes on Win32/MSCV when compiling the test C lib, with "fatal error C1083: Cannot open include file: 'stdbool.h'"
FROGGS jnthn: you've got MSVC 2012 or older?
grondilu masak: I'm not sure what you mean with casing to .Set 12:11
*casting
FROGGS jnthn: moarvm's config exposes the fact that a _Bool or bool is available, I should make the include conditionally somehow using that info
jnthn C:\consulting\rakudo>cl
Microsoft (R) C/C++ Optimizing Compiler Version 16.00.40219.01 for x64
FROGGS that's 2011 IIRC
jnthn wow :)
I've a bunch of versions installed, that must just be what's in my path :) 12:12
FROGGS I've got 2012 Express which tells it is v17
grondilu <a b c>.combinations(2, :repeat) would give ((a, a), (a, b), (a, c), (b, b), (b, c), (c, c))
jnthn FROGGS: Yowser, it's 2010 12:13
FROGGS hehe
oldie but goldie
jnthn I guess that's why debugging Moar feels so responsive compared to when I'm doing C# stuff in later versions :P
masak grondilu: oh, I see. I misunderstood, then. 12:14
grondilu: though to be honest, that no longer feels like .combinations to me
grondilu: kind of a situation analogous to .pick/.roll -- it's too different to be just an option/adverb
jnthn urgh...something that's recently happened has thrown off line number reporting in some cases 12:15
grondilu masak: it's how it's called in rosettacode.org/wiki/Combinations_w...epetitions
I don't know how else we could call it. 12:16
dalek kudo/nom: 2342871 | jnthn++ | src/core/ (2 files):
Make X, Z, and roundrobin respect items.

Includes fixing meta-op forms of X and Z.
masak grondilu: feels almost like a kind of cross product to me (except with "unordered pairs")
dalek ast: 127b86f | jnthn++ | S (3 files):
Tests for RT #126522.
grondilu apparently on wikipedia it's called "multisubset". Need to investigate. 12:17
en.wikipedia.org/wiki/Combination#...repetition
Juerd Why can't *.method ~~ regex be used with .grep? 12:18
m: say (^10).grep: *.Str ~~ /<[123]>/
camelia rakudo-moar 9e53fa: OUTPUT«WhateverCode object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/P8qZvQVJt9:1␤()␤»
Juerd m: say (^10).grep: * ~~ /<[123]>/
camelia rakudo-moar 9e53fa: OUTPUT«(1 2 3)␤»
Juerd In my real world use case I have a list of hashes, and I want to grep on *.<topic> ~~ $regex
masak Juerd: that looks nice. it might well be that that should work. 12:19
12:19 kanishka joined
masak Juerd: but whatever mechanics are so hairy, so I'd simply Try It And See -- change the semantics of Rakudo, and then re-run the spectest suite. 12:19
Juerd I expected it to work but had to rewrite it as { .<topic> ~~ $regex }
masak aye. 12:20
grondilu maybe we could call them "bags($n)", as in all bags of $n elements in total.
timotimo jnthn: ah, i knew it! i was hoping to get some sort of debug output working to see more exactly what nodes get annotated with which line number to make the line coverage more better (by finding out why certain lines don't get mentioned; like lines containing signatures)
masak runs into these less often, because he tends to use blocks/$_ rather than whatever
grondilu: sounds a bit too huffmanized next to "combinations", especially since it's a more complicated thing than combinations
12:21 [particle] joined
Juerd masak: The thing is, I don't know whether this is a bug or not... :) 12:22
Skarsnik FROGGS, Hello, I wanted to tell you that the test will likly fail because of bool x) 12:23
masak TimToady: getting a "useless use" warning (on latest Rakudo) on an `eq` directly in a `try` (in a statement_mod `if`)
FROGGS Skarsnik: hehe
masak TimToady: if you want, I can send you a minimized case of this. it looks like a false positive to me.
FROGGS Skarsnik: I'm pushing a fix in a minute
sammers Hi all, I am trying to rakudobrew build jvm on debian, but I get "no writable path found in block <unit> at tools/build/install-core-dist.pl:15"... any ideas?
masak Juerd: my point was, I don't know either :P
Juerd: in some sense, the limits of what can be whatever'd are a bit arbitrary
FROGGS sammers: the jvm backend has quite a bunch of problems currently 12:24
Skarsnik You also forget to add the stdbool.h header in case of _Bool does not exist but bool exist (probably a weird case)
FROGGS sammers: can you use the moarvm backend in the meantime?
jnthn m: say (* ~~ /foo/).WHAT
camelia rakudo-moar 9e53fa: OUTPUT«(WhateverCode)␤»
jnthn m: say (*.bar ~~ /foo/).WHAT
camelia rakudo-moar 9e53fa: OUTPUT«WhateverCode object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/penqWRqDMW:1␤Nil␤»
Juerd TimToady: Should "$hashes.grep: *.<foo> ~~ $regex" work?
FROGGS Skarsnik: are you sure?
sammers FROGS: thanks, no worries. just wanted to play around with it. moarvm is working fine here.
jnthn Generally, anywhere we curry Whatever we should really curry WhateverCode too
12:24 rurban_ joined
jnthn So I'm inclined to think what Juerd wants should work 12:24
sammers FROGGS: where is the best place to follow the jvm progress? 12:25
jnthn lunch; bbiab :)
moritz jnthn: iirc there are a few deliberate exceptions to that rule
%curried{'&infix:<∘>'} := 1; 12:26
%curried{'&infix:<o>'} := 1;
# %curried == 1 means curry Whatever only
%curried{'&infix:<~~>'} := 1;
by TimToady in commit 292ef666d 12:27
m: say (a => 1) ~~ * eqv (a => 1)
camelia rakudo-moar 9e53fa: OUTPUT«WhateverCode.new␤»
12:28 koo8 left
stmuk sammers: you also need to run rakudobrew from a writeable directory 12:28
moritz seems it still curries on WhateverCode on the RHS
FROGGS sammers: this channel I guess
12:28 [particle] left
stmuk sammers: I mean you have to have the cwd writeable when you type the command 12:28
FROGGS sammers: also, psch++ is currently the most active jvm-backend hacker 12:29
RabidGravy Skarsnik, merged cheers!
Ah, I thought that JSON::Unmarshal would be broked by the same thing but it appears not 12:32
sammers stmuk: cool thanks. it is running from a writable directory (with plenty of free space)... I will just lurk here for the next few months...
FROGGS: thanks, I will keep an eye out.
RabidGravy careful with the lurking, you may find yourself volunteered to do something
:)
timotimo hum. how do i make the node objects available to lower_signature ... 12:34
it's tempting to put the node into the %info hash, but that could - in the worst case - cause Match objects to reach the final output
sammers RabidGravy: oh no!!!! ok, I will be careful... I am really having fun with perl6 atm. hopefully when I get a bit more comfortable I will be able to contribute... 12:35
RabidGravy :)
dalek kudo/nom: 22e8b54 | FROGGS++ | t/04-nativecall/12-sizeof.c:
include stdbool.h conditionally to unbreak MSVC

This is not a perfect patch, ideally we would do the same magic that moar does.
  cygx++ for this piece of magic.
12:36
smls m: .say for (<2 1 3> .sort); 12:37
camelia rakudo-moar 9e53fa: OUTPUT«Cannot find method 'map': no method cache and no .^find_method␤ in block <unit> at /tmp/Fj5E2PuIXu:1␤␤»
timotimo m: say <2 1 3>.sort.WHAT
smls ^^ wat ;)
camelia rakudo-moar 9e53fa: OUTPUT«(List)␤»
timotimo m: say <2 1 3>.sort.map(*.say)
camelia rakudo-moar 9e53fa: OUTPUT«1␤2␤3␤(True True True)␤»
timotimo m: say (<2 1 3> .sort).map(*.say)
camelia rakudo-moar 9e53fa: OUTPUT«Cannot find method 'map': no method cache and no .^find_method␤ in block <unit> at /tmp/TRmB0MrgE8:1␤␤»
moritz m: .say for (<2 1 3>.sort)
camelia rakudo-moar 9e53fa: OUTPUT«1␤2␤3␤»
dalek p: e94e95d | FROGGS++ | tools/build/MOAR_REVISION:
bump moar for stdbool.h fix
smls timotimo: it works without the space before the method call op
timotimo m: say (<2 1 3>.sort).map(*.say)
camelia rakudo-moar 9e53fa: OUTPUT«1␤2␤3␤(True True True)␤»
moritz it really needs the space before the .sort
timotimo wow, wat.
that's not right 12:38
dalek kudo/nom: 8464eab | FROGGS++ | tools/build/NQP_REVISION:
bump nqp/moar for stdbool.h fix
FROGGS Skarsnik: better? github.com/MoarVM/MoarVM/commit/a677430d85
smls timotimo: Should I RT it? It's not like it holds back the release so won't need immediate attention. 12:40
masak m: say "OH HAI" if try 0 eq 0
camelia rakudo-moar 9e53fa: OUTPUT«OH HAI␤»
12:40 kid51 joined
masak TimToady: ^ the above gives the "Useless use" warning locally. 12:40
timotimo smls: that just means it doesn't need to go in the xmas list
masak TimToady: and it's not a useless use, since `try` is transparent to values
moritz smls: please RT, yes 12:41
smls k 12:42
12:42 bjz left
stmuk f457007181bb6e2dcb6aefe857f36d648ae38401 broke num64 ~~ Num 12:47
12:48 lucasb joined, bjz joined
moritz m: say Num.ACCEPTS(num64) 12:50
camelia rakudo-moar 9e53fa: OUTPUT«True␤»
RabidGravy stmuk++ # bisecting 12:51
12:51 rurban left
moritz m: say 1 ~~ True 12:52
camelia rakudo-moar 9e53fa: OUTPUT«True␤»
moritz it broke that too
that used to warn/error
12:52 kid51 left
stmuk santa needs to bring me a faster bisecting machine :/ 12:53
RabidGravy Hmm, that might also explain a load of Array[<nativetype>] fails I brushed under the carpet last week 12:54
RabidGravy finds another has-accessor 12:56
me-- # cargo culting his own code 12:57
Juerd RabidGravy: Example?
RabidGravy Juerd, que?
oh example of Array[<native>] 12:58
Juerd I'm curious. What are you cargo culting?
RabidGravy using has-accessor 13:00
it was in a test of META6
Juerd Why's that bad?
RabidGravy I'd just finished JSON::Marshal which also had it
Skarsnik it had be removed to only have has_accessor
RabidGravy well, it's bad now because what Skarsnik said 13:01
Skarsnik All the MOP part of perl6 use _ in name :)
Juerd Oh, wow. That's such a PHP-like issue :(
Skarsnik Meh, It mark MOP stuff at being something 'special' 13:02
Juerd I disliked in tests that is_approx has _
RabidGravy there are two I think
weirdly is_approx and is-approx work somewhat differently 13:03
or did that get changed
no what I thought you meant was whatever it was that required github.com/jonathanstowe/Audio-Enc...a8d928d034 13:04
which is "brushing under the carpet"
abraxxa what can cause this error (or warning?) message? it doesn't include a line number: Use of uninitialized value @row of type Str in string context
Skarsnik weird 13:05
13:06 prammer joined
RabidGravy m: my @a := Array; say "@a"; 13:06
camelia rakudo-moar 9e53fa: OUTPUT«@a␤»
RabidGravy m: my @a := Array; say @a.Str;
camelia rakudo-moar 9e53fa: OUTPUT«Use of uninitialized value of type Array in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block <unit> at /tmp/w2n4xOGOcg:1␤␤»
dalek kudo/better_line_coverage: 57b3506 | timotimo++ | src/Perl6/Actions.nqp:
give parameter binding code nodes

this lets the signature line(s) show up in coverage output when generated via moarvm, as the code now has line number annotations.
RabidGravy abraxxa, but I don't know how you get there without doing it deliberately 13:07
abraxxa say @a.gist;? 13:08
hm, no
timotimo m: sub test(@a) { say @a }; test(Array) 13:09
camelia rakudo-moar 9e53fa: OUTPUT«(Array)␤»
timotimo ^- that's how 13:10
moritz uhm, that surprises me
I'd spect @a in a signature to actually mean Positional:D
timotimo suspect*?
moritz *expect
abraxxa github.com/abraxxa/DBIish/blob/mas...on.pl6#L21
this triggers it
timotimo i had a branch to do that, but it caused some spec test fallout
it did look like that had some agreement from the community, though 13:11
abraxxa isn't using a und b as varnames discouraged or is that only in Perl 5?
moritz only p5 13:12
Skarsnik abraxxa, that's so weird is not the diag @a[] ?
abraxxa might be
Skarsnik :m my @a; say "hello @a[]";
m: my @a; say "hello @a[]";
camelia rakudo-moar 9e53fa: OUTPUT«hello ␤»
Skarsnik m: my Str @a; say "hello @a[]"; 13:13
camelia rakudo-moar 9e53fa: OUTPUT«hello ␤»
abraxxa nope
Skarsnik m: my Str @a; diag "hello @a[]";
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/KtEik7QLtF␤Undeclared routine:␤ diag used at line 1␤␤»
RabidGravy m: sub foo(@a, @b) { @a[0] eq @b[0] }; foo(Array, Array);
camelia rakudo-moar 9e53fa: OUTPUT«Use of uninitialized value $v of type Any in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in sub foo at /tmp/ZjnRu1jve5:1␤Use of uninitialized value $v of type Any in string context␤Any of .^name, .p…»
RabidGravy or something 13:14
jnthn back 13:16
moritz: OK, so ~~ not dealing with WhateverCode does look deliberate. :) Guess only TimToady can answer at this point. :) 13:18
I think the story of is-approx vs is_approx is that the latter is meant to go away, but stayed for a bit because the behavior was a bit different, but the is-approx behavior was considered preferable. 13:19
But that means the migration is a bit more than just "rename it"
13:19 dalek left 13:20 dalek joined, ChanServ sets mode: +v dalek
RabidGravy poor dalek 13:21
13:21 rurban joined
RabidGravy I suppose I'd better start this advent post 13:21
13:21 rurban left
jnthn Advised. Starting it at 10pm by writing an async STOMP impl made for a late night :P 13:22
Skarsnik jnthn, should it be tagged at is_approx?
jnthn Skarsnik: What?
Skarsnik DEPRECATED
jnthn Oh
Skarsnik Sorry I can't type
jnthn Keys are right to each other!
moritz now that we have an approximate-equal operator, we should use that in is-approx 13:23
jnthn If somebody wants to look into getting it cleared up, that'd be appreciated :)
Skarsnik and nice advent post btw. I was curious how to write my Discord::Client class with Supply x)
jnthn :) 13:24
13:24 koo8 joined
Skarsnik moritz, about DBIIsh are the names are fine for row and allrows? or do you want me to change them before I merge the PR ~~ 13:24
but I probably had to rewrite WebSocket first to use them :( 13:25
RabidGravy I would have thought WebSocket was a natural for Supply
abraxxa so does someone have an idea where that warning comes from?
smls jnthn: Can you take a quick look at rt.perl.org/Ticket/Display.html?id=126576 to decide if that is expected behavior? 13:26
If so, that's one more rt that can be closed. If not, it may actually want to go in the xmas list...
jnthn smls: That looks inconsistent 13:27
smls: Think it should preserve in the second case too
smls that was my expectation as well 13:28
13:29 pippo_ joined
abraxxa FYI I changed what I push on the @row array when the DB value is NULL to @row.push(Num.new); 13:30
note the .new
timotimo now to generate another coverage report ...
13:30 pippo left
Skarsnik how you have null value in the test? x) 13:31
El_Che type contraints are only for sub/method signatures I guess? (I was thinking of Moose ad hoc subtype (where) )
timotimo a C question: should i replace fprintf with snprintf + write if i want the result to not be split even when concurrent access happens? or do i have to use a mutex?
actually ... there could be access from multiple programs 13:32
Skarsnik there are not thread save?
*safe
abraxxa before I've pushed Num which is not an object but a ???
lucasb abraxxa: Num.new is just 0e0
13:33 rurban joined
abraxxa Skarsnik: i've added two tests which only insert an Int and a Num 13:33
lucasb: that's bad, because that's not undef
masak lots of test failures in `make spectest` -- I guess this is known?
abraxxa m: say Num.new
camelia rakudo-moar 9e53fa: OUTPUT«0␤»
abraxxa m: say Int.new
camelia rakudo-moar 9e53fa: OUTPUT«0␤»
timotimo masak: not really "lots", but like 5 or 6 files :(
ilmari abraxxa: Num is the type object, which is also used as undef of that type
13:34 n0tjack joined
abraxxa so I should really push Num and Int without new? 13:34
ilmari yes
Skarsnik abraxxa, maybe you should merge with my fork? I added test for typed stuff github.com/Skarsnik/DBIish/blob/ma...n.pl6#L139
abraxxa Skarsnik: I'll rebase when I've finished my work and commited it 13:35
Skarsnik: should happen today or tomorrow
lucasb {Int,Num,Rat,Bool,Str}.new all have default values. can I haz Complex.new too, please? 13:37
masak timotimo: 13 files here.
13:37 pmurias joined
timotimo ugh.paste please? 13:37
last time i tried that was fewer
13:38 n0tjack left
masak gist.github.com/masak/191a495ee1d9ed5b5472 13:38
timotimo um, yikes 13:39
there was work recently in many of those
are you sure your rakudo, nqp and moar are all up to date?
masak $ perl6 --version 13:40
This is rakudo version 2015.11-557-gcc21892 built on MoarVM version 2015.11-49-g27f15d9 implementing Perl v6.b.
timotimo AFK for a bit
masak the spectests did a pull right before running.
timotimo that seems recent enough
masak I built earlier today, an hour or so ago.
abraxxa is there no test function which can be used instead of magic_cmp in the DBIish t/99-comon.pl6? 13:41
Skarsnik is-deeply ?
you have everything from Test
abraxxa i wonder who wrote magic_cmp and why 13:42
can you pass arrays in Perl 6 as the magic_cmp signature says?
I don't see that in doc.perl6.org/language/functions 13:43
Skarsnik there was probably not a is-deeply in Test
jnthn masak: I think with cross/zip/roundrobin you pulled Rakudo, and while it was a building and before pulling spectests I pushed the Rakudo and roast patches
(And I pushed the two around an hour ago) 13:44
[Coke] masak: there have been about 10 files failing for days.
dalek rl6-roast-data: 42b887e | coke++ | / (7 files):
today (automated commit)
13:45
jnthn The line number ones seem to have regressed overnight; if I had to guess, something to do with TimToady's great sink refactor work 13:46
[Coke] masak: looks like it got much worse since yesterday, yes:
github.com/coke/perl6-roast-data/b....out#L5212
jnthn: S32-io/IO-Socket-Async-UDP.t aborted 1 test(s)
13:46 leat joined
leat getting this trying to run panda: bpaste.net/show/2bd77d6a5f22 13:47
abraxxa where are the Test docs?
jnthn [Coke]: Yes, platform issue 13:48
[Coke] abraxxa: docs.perl6.org/language/testing ?
Skarsnik abraxxa, doc.perl6.org/language/testing
leat rakudo+nqp+moar all 2015-11.
jnthn [Coke]: It's run without failure for me in every spectest run I've done since I added it
Skarsnik but I don't think there is everything
llfourn m: loop (my $i = 0;$i < 10;$i++) { } # another GSR regression
camelia rakudo-moar 9e53fa: OUTPUT«WARNINGS for /tmp/guBsIKfdfa:␤Useless use of $i in sink context (line 1)␤»
leat any advice? 13:49
[Coke] What is the purpose of the GSR? this seems like a lot of churn in the last days before release. me no likey.
Skarsnik leat, what did you do to build rakudo/moar, what commant did you try?
jnthn FROGGS: The NaiveCall test fix worked, thanks
stmuk leat: you probably have to wipe everything and start again
abraxxa thanks 13:50
FROGGS \o/
[Coke] jnthn: nice typo. :)
(at least, I assume that's a typo)
lucasb leat: sorry, idk. but maybe you are trying to use a recent enough panda with an old rakudo (yes, 2015.11 is old with regard to recent changes :)
jnthn hah!
Native :)
abraxxa the searchbox in the upper right corner doesn't find 'is-deeply'
Skarsnik use the source for Test ~~
[Coke] abraxxa: please open an issue at github.com/perl6/doc/issues 13:51
jnthn [Coke]: Well, I think it's trying to address rt.perl.org/Ticket/Display.html?id=125769 and missing "Useless use of" warnings
abraxxa [Coke]: sure
RabidGravy tbh I tend to do "vi ../rakudo/lib/Test.om" every time
pm
llfourn also does this 13:52
[Coke] seems like we could live with warnings about use uses of things showing up post christmas.
*uselss
typos abound.
If it comes to it, that is. 13:53
leat Skarsnik: built rakudo with perl Configure.pl --backends=moar --prefix=/usr
abraxxa [Coke]: github.com/perl6/doc/issues/244
llfourn I noticed while messing around: my $str = ''; for 0..n { $str ~= $_ } seems to be Ο(n²) 13:54
is this something worth RTing?
13:55 regreg joined
jnthn No 13:55
leat lucasb: tried checking out panda to 2015.10 and 2015.09 and it didn't help ):
llfourn jnthn: kk ;)
jnthn We most likely can't really fix that on JVM 13:56
On Moar we do a bit better
llfourn this was on Moar
jnthn But what you're doing *is* inherently Ο(n²) given Str is immutable
llfourn jnthn: hmm, maybe I understand. anyway to work around? 13:57
jnthn join
llfourn gotcha 13:58
14:01 Sqirrel left
dalek kudo/nom: a04c751 | jnthn++ | src/Perl6/ (3 files):
Support :ver<...> and :auth<...> on package decls.

These can now be introspected with .^ver and .^auth.
14:02
14:02 pyrimidine joined
dalek ast: e7252a2 | jnthn++ | S12-introspection/meta-class.t:
Test for .^auth; fix test for .^ver and unfudge.
14:02
lizmat jnthn: I think that is a mistake!
auth and ver should be a compunit type thing
jnthn Um, what?
lizmat not a package type thing!
if you have 2 classes in your file, with different versions
which one should curli select ?
14:02 jevin_ joined
jnthn I thought we already said that a compunit declaration of version would be contaigous on types? 14:02
We don't actually have a way to specify that yet, though.
lizmat well, fwiw, I think auth / ver are really meta at this level
14:03 pyrimidi_ left
lizmat but I'm to stuffy in the head to argue this correctly atm 14:03
14:03 jevin left
lizmat if nine is fine with this, I'm fine with this 14:03
but it smells wrong to me
jnthn It's surely less wrong than just dropping :auth and :ver adverbs on the floor 14:04
lizmat that I agree with
:-)
but we should keep in mind that auth / ver are a compunit attribute. not a package attribute 14:05
afk& 14:06
14:08 pippo_ left, Sqirrel joined 14:10 FreezerburnV joined
jnthn lizmat: I suspect it'll want to be both, in so far as compunits are a bit "abstract" in terms of things you can actually talk about, so Test.^ver is what people will actually be able to write. 14:11
dalek kudo/nom: 3aca1a1 | jnthn++ | src/Perl6/Metamodel/ParametricRoleGroupHOW.nqp:
Make .^ver and .^auth work out on roles too.
ast: 02cde50 | jnthn++ | S14-roles/basic.t:
Test .^ver and .^auth on roles.
14:12
jnthn Phew, back to the xmas RTs to do fitting on my screen without scrolling. 14:13
Though not if I add rt.perl.org/Ticket/Display.html?id=126576 :) 14:14
moritz IMHO rt.perl.org/Ticket/Display.html?id=126816 deserves to be on the xmas list 14:16
14:16 n0tjack joined
moritz because it breaks R* 14:16
RabidGravy jnthn++ # now I can fix whatever hack I made that provoked me to make that RT 14:18
abraxxa i've encountered something weird
jnthn moritz: I'd thought nine++ fixed that already?
moritz: I can't actually provoke it to do that error locally 14:19
abraxxa paste.scsys.co.uk/502796
jnthn perl6-m -Ilib -e "require ::('Pod::To::Text')" # works fine
moritz jnthn: no, he started diagnosing, didn't actually fix anything
timotimo jnthn: do i have to rely on libuv to do file locking cross-platform or does C have something for that? (i expect: no, it does not) 14:20
abraxxa the ; at the end of the 'selected ... causes this
moritz jnthn: I don't know what exactly triggers the error, if the package being required needs to "use" another module or anything
jnthn timotimo: Think libuv; see syncfile.c 14:21
14:21 skids joined
abraxxa is this a parser failure? 14:21
14:21 n0tjack left
timotimo will do 14:22
because my line-based coverage log file gets garbled lines ... i'll try an in-process mutex first, though
t.h8.lv/great_coverage_report.html - we have a thing here! 14:24
the grey lines are taken from a complete dump of all annotated lines, so we can see what pieces of code don't get a line number associated with them by our Actions and such 14:25
14:25 n0tjack joined
timotimo maybe they ought to be a bit less dark 14:25
it looks kind of like no line that starts with "my" gets a line number annotation, for example 14:26
jnthn timotimo: wow :)
timotimo++
timotimo it also seems like "last line of block" sometimes don't get an annotation, but sometimes they do
14:26 cdg joined 14:27 ZoffixW joined
ZoffixW abraxxa, the ";" there is an error 14:27
ab5tract, look on the following line, you're closing ); there
err
abraxxa ZoffixW: I know! but why does it not fail at compile time?
ZoffixW sorry :)
nine moritz: rt.perl.org/Public/Bug/Display.html?id=126816 should be fixed by commit 4391c9eeda3c4ba2a3a513e2b0bb3cce78434061 14:28
Fixed it by removing the reason for doing the find_symbol call in the first place 14:29
abraxxa ZoffixW: shouldn't that be a compile time error?
ZoffixW abraxxa, weird. This doesn't fail at all. Just says the test doesn't pass: fpaste.scsys.co.uk/paste
nine timotimo: output is just not thread safe. If multiple threads write to the same handle, they have to coordinate. 14:30
14:30 n0tjack left
abraxxa ZoffixW: wrong url 14:30
ZoffixW abraxxa, fpaste.scsys.co.uk/502800
abraxxa m: use Test; is-deeply("foo","foo","selected data matches what was written";);
camelia rakudo-moar 9e53fa: OUTPUT«not ok 1 - ␤␤# Failed test at /tmp/O2ymTAqH2g line 1␤# expected: $()␤# got: $("foo", "foo", "selected data matches what was written")␤»
jnthn smls: spectesting a fix for rt.perl.org/Ticket/Display.html?id=126576
smls nice 14:31
ZoffixW m: use Test; is-deeply($(),$(),"selected data matches what was written";);
camelia rakudo-moar 9e53fa: OUTPUT«Use of Nil in string context in block <unit> at /tmp/JAcupxRecZ:1␤Use of Nil in string context in block <unit> at /tmp/JAcupxRecZ:1␤not ok 1 - ␤␤# Failed test at /tmp/JAcupxRecZ line 1␤# expected: $()␤# got: $("", "", "selected data matc…»
ZoffixW m: use Test; is-deeply(Nil,Nil,"selected data matches what was written";);
camelia rakudo-moar 9e53fa: OUTPUT«not ok 1 - ␤␤# Failed test at /tmp/9M_D1UBYF3 line 1␤# expected: $()␤# got: $(Nil, Nil, "selected data matches what was written")␤»
ZoffixW m: use Test; is-deeply (Nil. Nil, "selected data matches what was written";;;;;;;;;;;;;;) 14:32
camelia rakudo-moar 9e53fa: OUTPUT«Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Non-QAST…»
ZoffixW m: sub foo ($, $, $) {}; foo('a', 'b', 'c';;;;;;;;;;;;;;;;:) 14:33
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/q7Wrl0QCI7␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/q7Wrl0QCI7:1␤------> 3) {}; foo('a', 'b', 'c';;;;;;;;;;;;;;;;:7⏏5)␤ expecting any of:␤ colon pa…»
ZoffixW weird
jnthn tries to work out what on earth rt.perl.org/Ticket/Display.html?id=112666 is about 14:35
ZoffixW m: multi foo ($, $, $) {}; foo('a', 'b', 'c';)
camelia rakudo-moar 9e53fa: OUTPUT«Cannot call foo(List, List); none of these signatures match:␤ ($,,)␤ in block <unit> at /tmp/8QUI8RAhot:1␤␤»
14:35 cdg left
ZoffixW m: multi foo ($, $, $) {}; multi foo ($, $) { say "zomg!"; }; foo('a', 'b', 'c';); say "ehehe" 14:36
camelia rakudo-moar 9e53fa: OUTPUT«zomg!␤ehehe␤»
ZoffixW Look ma! I broke Perl 6!
moritz what does that ; inside the argument list do? 14:37
m: multi foo ($, $, $) {}; multi foo ($, $) { say "zomg!"; }; foo('a', 'b', 'c'); say "ehehe"
camelia rakudo-moar 9e53fa: OUTPUT«ehehe␤»
jnthn I have no idea...
moritz ah
it creates a multi-dimensional list
14:37 lichtkind joined
moritz m: say ('a', 'b', 'c';) 14:37
camelia rakudo-moar 9e53fa: OUTPUT«(a b c)␤»
moritz m: say ('a', 'b', 'c';).perl
camelia rakudo-moar 9e53fa: OUTPUT«("a", "b", "c")␤»
moritz m: say ('a', 'b', 'c';).elems
camelia rakudo-moar 9e53fa: OUTPUT«3␤»
jnthn m: sub foo() { my @a; BEGIN { @a = 1,2,3 }; say @a; }; foo(); foo();
camelia rakudo-moar 9e53fa: OUTPUT«[1 2 3]␤[1 2 3]␤»
ZoffixW Ah 14:38
moritz maybe only inside a signature?
timotimo sprinkles Actions.nqp with :node without thinking too much
moritz m: sub f(|c) { say c.perl }; f('a', 'b', 'c';)
camelia rakudo-moar 9e53fa: OUTPUT«\(("a", "b", "c"), ())␤»
moritz thereyago
14:39 CIAvash left
FreezerburnV Mornin’ everyone 14:39
abraxxa moritz: it's a typo that lead to this weird test fail
moritz m: sub f(|c) { say c.perl }; f('a',)
camelia rakudo-moar 9e53fa: OUTPUT«\("a")␤»
ZoffixW m: multi foo ($, $, $) { say "lolmg"}; multi foo ($, $) { say "zomg!"; }; foo('a'; 'b', 'c';); say "ehehe"
camelia rakudo-moar 9e53fa: OUTPUT«lolmg␤ehehe␤»
moritz m: sub f(|c) { say c.perl }; f('a')
camelia rakudo-moar 9e53fa: OUTPUT«\("a")␤»
abraxxa but i've neither compiled it with -Dmultidimensional nor called use multidimensional; :)
moritz one could argue that trailing comma vs. trailing semicolon in an argument list is inconsistent
because trailing comma doesn't magically append another element, but trailing semicolon does 14:40
ZoffixW m: multi foo ($a, $b, $c) { say $a, $b, $c}; foo('a'; 'b', 'c';); say "ehehe"
camelia rakudo-moar 9e53fa: OUTPUT«(a)(b c)()␤ehehe␤»
ZoffixW m: multi foo ($a, $b, $c) { say $a.WHAT, $b.WHAT, $c.WHAT}; foo('a'; 'b', 'c';); say "ehehe" 14:41
camelia rakudo-moar 9e53fa: OUTPUT«(List)(List)(List)␤ehehe␤»
jnthn Oh...I think the last post in rt.perl.org/Ticket/Display.html?id=112666 is actually saying "look, it's fixed" :)
ZoffixW Recalling on how many times I wrote abraxxa's typo, this "feature" would definitelly screw me over frequently enough :/ 14:43
dalek kudo/nom: 572dcf0 | jnthn++ | src/core/List.pm:
Fix loss of structure in xx.

Plus another inconsistency between xx 2 and xx * with regard to Seq.
timotimo nine: all right, will do that
moritz ZoffixW: maybe we really want an error/warning on a single trailing ; in argument list
dalek ast: b111614 | jnthn++ | S03-operators/repeat.t:
Tests for RT #126576.
14:44
moritz ZoffixW: I've done the same mistake in p5 a bazillion times
ZoffixW Probably. I've no idea about multi-dimentional arrays, so I've no idea if there's some sort of a usecase where trailing ; is useful
moritz m: loop(my $i = 0; $i < 10; $i++) { } 14:47
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5===␤Word 'loop' interpreted as 'loop()' function call; please use whitespace around the parens␤at /tmp/MRItpSmRFN:1␤------> 3loop7⏏5(my $i = 0; $i < 10; $i++) { }␤Unexpected block in infix position (two terms in a row)␤at /tm…»
moritz m: loop (my $i = 0; $i < 10; $i++) { }
camelia rakudo-moar 9e53fa: OUTPUT«WARNINGS for /tmp/zRDRUTb9UK:␤Useless use of $i in sink context (line 1)␤»
moritz bogus warning here
14:47 Begi joined 14:48 pippo joined 14:49 ZoffixW left
Woodi moritz: bugus becouse iterations are unnided or loop efect is null ? 14:52
moritz m: loop(my $i = 0; $i < 10; $i++) { print $i } 14:53
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5===␤Word 'loop' interpreted as 'loop()' function call; please use whitespace around the parens␤at /tmp/fHO_RI2v7U:1␤------> 3loop7⏏5(my $i = 0; $i < 10; $i++) { print $i }␤Unexpected block in infix position (two terms in a row)…»
moritz m: loop (my $i = 0; $i < 10; $i++) { print $i }
camelia rakudo-moar 9e53fa: OUTPUT«WARNINGS for /tmp/m91D8uLB3X:␤Useless use of $i in sink context (line 1)␤0123456789»
moritz Woodi: loop body is irrelevant 14:54
Woodi m: my $j; loop (my $i = 0; $i<10; $i++) { $j = $i } 14:55
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_1buJgMW0A␤Whitespace required before < operator␤at /tmp/_1buJgMW0A:1␤------> 3oop (my $i = 0; $i<10; $i++) { $j = $i }7⏏5<EOL>␤ expecting any of:␤ postfix␤»
Woodi m: my $j; loop (my $i = 0; $i<10; $i++) { $j = $i };
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/nmBKAUhv0D␤Whitespace required before < operator␤at /tmp/nmBKAUhv0D:1␤------> 3op (my $i = 0; $i<10; $i++) { $j = $i };7⏏5<EOL>␤ expecting any of:␤ postfix␤»
Woodi m: my $j; loop (my $i = 0; $i<10; $i++) { $j = $i; }
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/KFRsGFutnP␤Whitespace required before < operator␤at /tmp/KFRsGFutnP:1␤------> 3op (my $i = 0; $i<10; $i++) { $j = $i; }7⏏5<EOL>␤ expecting any of:␤ postfix␤»
Woodi what ?
moritz Woodi: read the error message 14:56
"Whitespace required before < operator"
Woodi right, thinked < is some brace... 14:57
m: my $j; loop (my $i = 0; $i < 10; $i++) { $j = $i; }
camelia rakudo-moar 9e53fa: OUTPUT«WARNINGS for /tmp/xBZSryaTTZ:␤Useless use of $i in sink context (line 1)␤»
Woodi and green was green up to red END...
abraxxa can we do something about that typo/feature problem?
14:57 rurban left
Woodi over-eager usefulnes here ? 14:57
abraxxa maybe a warning if a multidimensional array is created where the last element is 'empty'? 14:58
14:58 sammers left
abraxxa how can I make a method call work in ""? 14:58
RabidGravy I think TimToady knows about that consequence of what he is doing (from what I backlogged earlier) and is planning on doing something about it later if no-one else does 14:59
abraxxa like say "$col<dty> $col<valuep> @row.tail"; to get the result of the tail call?
14:59 loren joined
loren Evening, Perl 6.. 14:59
14:59 zakharyas left
RabidGravy abraxxa, " { @row.tail }" 14:59
abraxxa from my simple user perspective i'd say using the statement end char (;) for something else too isn't a good idea
RabidGravy: thanks! 15:00
I knew something exists but couldn't find it in the docs
15:00 roguelazer left
loren m: grammar XX { rule TOP { ^<item> }; token item { (.*) }; }; say XX.parse("1+"); ## What's wrong with these code ?? 15:00
camelia rakudo-moar 9e53fa: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤ in regex item at /tmp/qID5GCdtwQ:1␤ in regex TOP at /tmp/qID5GCdtwQ:1␤ in block <unit> at /tmp/qID5GCdtwQ:1␤␤»
RabidGravy I thought it was mentioned in the quotey thing document
abraxxa Cannot call tail(Array: ); none of these signatures match:
(Any:D $: Int:D $n, *%_)
15:00 roguelazer joined 15:02 zakharyas joined
RabidGravy .tail(1) then 15:02
or whatever number you want
abraxxa Defaults to the last element seen if no NUMBER specified
doc.perl6.org/routine/tail#class_List
lucasb abraxxa: is your rakudo old? the default argument for .tail was added later
abraxxa 2015.11
15:03 kaare_ joined, pippo_ joined
RabidGravy abraxxa, is it possble that your @row is jjust a type object? 15:03
abraxxa my @row;
RabidGravy m: my @row := Array; say @row.tail 15:04
camelia rakudo-moar 9e53fa: OUTPUT«Cannot call tail(Array: ); none of these signatures match:␤ (Any:D $: Cool $n = { ... }, *%_)␤ in block <unit> at /tmp/OyqgGjJeq8:1␤␤»
abraxxa this wannabe typing will drive people nuts...
m: my row; say @row. 15:05
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/OtCLt9micQ␤Malformed my (did you mean to declare a sigilless \row or $row?)␤at /tmp/OtCLt9micQ:1␤------> 3my row7⏏5; say @row.␤»
moritz abraxxa: we've had this topic before today
abraxxa m: my @row; @row.push(4.85); say @row.tail;
camelia rakudo-moar 9e53fa: OUTPUT«(4.85)␤»
15:05 pippo left 15:06 jme` joined
abraxxa m: my @row; @row.push(4.85); say " { @row.tail } "; 15:06
camelia rakudo-moar 9e53fa: OUTPUT« 4.85 ␤»
loren *_* Anyone found that problem remind me .. /me bulabulabula...
abraxxa moritz: what exactly as we've talked about so much today
RabidGravy abraxxa, I think somehow some of your @arrays is getting made into an Array type object 15:07
a lot of what you are seeing is consistent with that
I'd start by testing for .defined all the way up the call chain to see where it is coming from 15:08
moritz abraxxa: that @-sigiled variables allow the variable to become a type object (and that I think this might be a design mistake, or simply not intentional)
abraxxa RabidGravy: it fits on one screen and I'm pushing values onto the array without problems 15:09
does it help to initialize the array with my Array @row; or my Array @row = ();? 15:10
RabidGravy it could be do a sub foo(Array:D $row)
Array @row is an array of array
15:11 sammers joined
timotimo should i try to make a @ or % sigiled parameter have a :D by default again? 15:14
15:15 pecastro left
[Coke] generic rant: referring to gists in RTs is problematic. 15:15
timotimo i don't understand why so many lines with nqp::foo in them aren't getting line number information; term:sym<nqp::op> puts a :node in there :\ 15:16
abraxxa RabidGravy: there is no method call between the var declaration and the say 15:17
timotimo hum. it's even in the ast output of the optimizer
15:18 pmurias left
abraxxa m: my @row; @row.push(4.85); say " { @row.tail(1).^name } "; 15:18
camelia rakudo-moar 9e53fa: OUTPUT« Seq ␤»
FROGGS jnthn: btw, I'm with lizmat about .^auth and .^ver
masak loren: I think it's the name "item", which is sort of taken for other things in Perl 6.
abraxxa that fails here as well
FROGGS jnthn: it is okay if you query the distribution via its packages, but it feels odd 15:19
masak loren: try renaming "item" to something safe, like "foo"
FROGGS bbl &
15:19 FROGGS left
abraxxa m: my Array @row; @row.push(Str); 15:19
camelia rakudo-moar 9e53fa: OUTPUT«Type check failed in assignment to @row; expected Array but got Str␤ in block <unit> at /tmp/Nc1ph8pk6Y:1␤␤»
abraxxa i don't get it!
m: my @row; my Array @row2; say @row.^name; say @row2.^name; 15:20
camelia rakudo-moar 9e53fa: OUTPUT«Array␤Array[Array]␤»
abraxxa RabidGravy: ah, that was at me before
nine abraxxa: my @row already declares an @row to be an array. my Int @row; declares an Array containing Ints. my Array @row; declares an array containing Arrays
abraxxa nine: yeah, makes sense, somehow
though I'd prefer Array[Int] like Pointer[Int] is defined 15:21
jnthn Way to think of it: sigils already imply a type
RabidGravy you can, just not with a @ siggiled variable
abraxxa omg, tail returns a Seq instead of the last element of the Array 15:22
m: my Array $foo; say $foo.^name;
camelia rakudo-moar 9e53fa: OUTPUT«Array␤»
abraxxa looks like sigils are useless then
RabidGravy m: my Array[Int] $a; $a.push(10); say $a
camelia rakudo-moar 9e53fa: OUTPUT«[10]␤»
abraxxa because you can't infer a type from it, at least not from scalars 15:23
15:23 n0tjack joined
timotimo well, you can store anything you like in a scalar 15:24
abraxxa the tail docs are wrong, how can I fix them?
timotimo at the bottom is a link to the git repository
15:24 sammers left
abraxxa timotimo: i'd understand that i can store an arrayREF in it but not an array 15:24
timotimo: thanks. github fork + PR?
timotimo yeah, that's how we usually do it :) 15:25
we don't have a difference between arrayREF and array in perl6
"everything's a reference", so to say
RabidGravy the @ just implies default positional semantics without having to initialise it 15:26
as % does Associative
abraxxa what I wondered before is that $arrayref[2] works and $arrayref.[2] too
15:26 molaf joined
abraxxa although only the later matches the docs 15:26
timotimo that's weird. they're supposed to be the same thing 15:27
jnthn $a[0] and $a.[0] compile into the very same thing
abraxxa is the wording correct: Returns a Seq containing the last NUMBER items of the list.?
timotimo sounds good to me 15:28
abraxxa yes, both work but I don't know why the former does
15:28 n0tjack left
timotimo it's weird to have NUMBER in allcaps 15:28
abraxxa at least I didn't find it documented
timotimo rather than something like C<number> or C<$number>
abraxxa timotimo: that's how it is currently in the docs
loren masak, Ok.
abraxxa because LIST.tail(NUMBER)
timotimo that's weird to me.
RabidGravy the only place I have found the . necessary is with an attribute that contains a code object
abraxxa how is a link defined in p6pod?
RabidGravy ie. $foo.code() is not the same as $foo.code.()
abraxxa L<Seq> ?
timotimo right, because attribute access is calling a method
RabidGravy yes 15:29
abraxxa ok
it also never returns an empty list, but an empty Seq, right?
jnthn rt.perl.org/Ticket/Display.html?id=112666 did actually turn out to reveal an icky but that I think I've now squished 15:30
abraxxa i'm also eliminating the 'seen'
15:31 lucasb left
timotimo i think it does return a Seq 15:32
loren masak, U are right. I found that code on Rosetta code . I think we need more human error message, ^_^ ...
timotimo perhaps it returns an empty list?
abraxxa PR sent
now I want a .last even more 15:33
back to @row[*-1]
dalek c: 33f3ed7 | (Alexander Hartmaier)++ | doc/Type/List.pod:
fix tail docs

clarify that tail always returns a Seq as its signature already correctly shows
15:34
c: 1bf67d6 | (Zoffix Znet)++ | doc/Type/List.pod:
Merge pull request #245 from abraxxa/master

fix tail docs
abraxxa wow, awesome bot!
jnthn notes that .last and [*-1] are the exactly same number of chars :) 15:35
15:36 sammers joined, yakudza joined
abraxxa jnthn: but .last is easier to type and read 15:37
something between code and tests transforms my Num's to Rat's 15:38
or is-deeply is f*** with me 15:39
jnthn I dunno, pretty sure I can pattern-match [*-1] at least as fast as .last when reading :)
15:40 virtualsue joined
abraxxa can't get his irc client, editor and shell onto a 24" screen so they don't overlap and are large enough 15:40
15:41 n0tjack joined
geekosaur this is why multiple screens 15:42
stmuk or just screen(1)
moritz screen(1), despite its name, can't magically create more screen real estate for multiple windows simultaneously 15:43
DrForr Sure it can, just connect from another terminal :)
abraxxa i have a GUI and I use it's advantages 15:44
stmuk I think it's pretty magic
abraxxa I can't stand screen with it myriads of key combinations you have to remember because I don't
DrForr Which is why I use tmux :) 15:45
b2gills abraxxa: use multi subs/methods: 「multi sub example ( Int $e ){ $e.^name }; multi sub example ( Num(Real) $e ){ $e.^name }」 (backlogging &)
abraxxa DrForr: can you click on a tab with your mouse?
DrForr Mouse? Why would you bother... 15:46
15:47 n0tjack left 15:48 yakudza left
nine geekosaur: this is why 30" screen 15:48
loren go to sleep now ..
dalek p: 4358ba8 | jnthn++ | src/core/NQPMu.nqp:
Support BUILDPLAN protocol extension.
15:49 jsimonet joined, Begi left
loren Night , Perl 6 , every one 15:49
RabidGravy I've got a 17" screen and I get on all right
15:49 loren left
abraxxa how would I loop an arrayref? 15:49
diakopter 5.6"
abraxxa diag ( .gist ~ ' ' ~ .^name ) for $arrayref.[$i].?;
dalek kudo/nom: cea3e99 | jnthn++ | / (3 files):
Avoid lazy allocation optimization on mixins.

We may be mixing in to a meta-object, such as a routine, which may be cloned; the delayed allocation then can cause very weird behaviors where simply accessing something make stuff magically work. Now it'll not-so-magically work all the time.
geekosaur actually I find that harder. I can focus on one monitor around 24", 30" is difficult unless I move far enough away that I'd have to use poster type to read it >.>
diakopter abraxxa: what's an arrayref
nine m: my $a = [1, 2, 3]; .say for $a;
camelia rakudo-moar 9e53fa: OUTPUT«[1 2 3]␤»
nine m: my $a = [1, 2, 3]; .say for $a.list; 15:50
camelia rakudo-moar 9e53fa: OUTPUT«1␤2␤3␤»
nine abraxxa: ^^^
diakopter I see what you did there, but the array isn't any more of a ref than a list
dalek ast: d1a2af4 | jnthn++ | S14-traits/routines.t:
Test for RT #112666.
15:51
nine jnthn: is that the fix for the "right kinda thing"?
abraxxa seems that's because they cloned the Perl 5 DBI interface 15:52
fetchrow returns @row, so an array, not an arrayref
diakopter okay, but what's an arrayref
jnthn nine: Um, what? :)
abraxxa method fetchall_arrayref { [ self.fetchall-array.eager ] }
15:53 yakudza joined
jnthn nine: The patch I pushed is the fix for the thing in the test I pushed 15:53
nine: Oh, the ticket title
nine: Yes, it's that ticket.
nine jnthn: I meant RT #112666 with it's curious title
jnthn Took me half an hour to figure out what the ticket even was talking about...
And get to something I could understand wanted fixing.
nine I've been wondering that for months :) 15:54
abraxxa diakopter: the docs mention it doc.perl6.org/language/5to6-nutshe...e_creation
diakopter yeesh
abraxxa $arrayref.[$i] returns an Array an I want to loop over its elements 15:55
jnthn nine: I'm happy to got to the bottom of it at last :)
abraxxa diag ( .gist ~ ' ' ~ .^name ) for $arrayref.[$i]; outputs # [(Str) (Str) 1 (Num) (Num)] Array
nine jnthn: all it takes is the right kinda fix ;)
15:56 Upasaka left
diakopter abraxxa: nine answered your question (use .list), but it's still a misnomer to call it an arrayref 15:56
timotimo a "kinda fix"? :P
abraxxa fetchall_arrayref does return an arrayref as far as I see it because it uses []
15:56 Upasaka joined
jnthn [...] isn't even an itemized array in Perl 6. 15:57
(Yes, it used to be, pre-GLR)
nine abraxxa: please forget the distinction you know from Perl 5. Perl 6 has arrays and arrays are objects and all objects are passed by reference.
RabidGravy m: my Int @a = [1,2,3]; say @a.join('*');
camelia rakudo-moar 9e53fa: OUTPUT«1*2*3␤»
abraxxa nine: ok, but then the docs need a great overhaul
RabidGravy it doesn't make any difference
diakopter the 5to6-huttsnell is older than I am
abraxxa why does for $arrayref.[$i] return the Array instead of looping over its elements? 15:58
jnthn m: my Int @a = $[1,2,3]; say @a.join('*'); # does, however
camelia rakudo-moar 9e53fa: OUTPUT«Type check failed in assignment to @a; expected Int but got Array␤ in block <unit> at /tmp/A6y5JzaMtB:1␤␤»
hoelzro good morning #perl6! 15:59
d^_^b morning!
jnthn abraxxa: An Array is a bunch of items.
15:59 ZoffixW joined
hoelzro o/ d^_^b 15:59
ZoffixW Found a bug: 16:00
camelia, gist.github.com/zoffixznet/64c946cd529c8b0d1fe8
m: gist.github.com/zoffixznet/64c946cd529c8b0d1fe8
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Aknl7ELCw3␤Missing « or »␤at /tmp/Aknl7ELCw3:3␤------> 3 .flat».7⏏5Str;␤»
diakopter m:
ZoffixW m: my @a = ^10; say @a.sort.flat».Str;
camelia rakudo-moar 9e53fa: OUTPUT«(0 1 2 3 4 5 6 7 8 9)␤»
ZoffixW Splitting it onto lines causes the bug
diakopter ZoffixW: this isn't C# 16:02
you'd need an "unsqpce"
"unspace"
nine diakopter: actually we don't need that anymore in most cases. 16:03
diakopter hm, oh
16:03 khw joined
nine But I guess the » makes it ambiuous here 16:03
ambiguous even
timotimo also, there's a really strange bug going on where after sort a space before the method call will cause no hllize to happen or something like that 16:04
FreezerburnV How do I create an int32 for a NativeCall function? (or, more generally, how do I interact with the various native types and the Perl6 types correctly? such that if an int8 is returned, how do I package that up nicely for the rest of the code? and vice versa? should this be happening automatically?) 16:05
hoelzro sub run(*@args ($, *@)) { ... } # the ($, *@) constraint on @args, what's that called?
a subsignature? a nested signature?
I can't seem to find a consistent name in the synopses
jnthn FreezerburnV: Boxing/unboxing with Int will happen automatically 16:06
FreezerburnV: Where Int is the non-native thing.
ZoffixW m: gist.github.com/zoffixznet/018fa503db5bf628bfbb 16:08
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/x7ngPsQetg␤Missing « or »␤at /tmp/x7ngPsQetg:3␤------> 3 .flat».7⏏5Str;␤»
ZoffixW Same with unspace
FreezerburnV jnthn: Gotcha. I see what I was doing wrong now, woops. Thanks!
16:08 pecastro joined
ZoffixW And I'm guessing qw{} simply doesn't support () parens or is it a bug? 16:09
m: say qw(class test)
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5zMrUMIa_T␤Unable to parse class definition␤at /tmp/5zMrUMIa_T:1␤------> 3say qw(class test7⏏5)␤ expecting any of:␤ generic role␤»
jnthn ZoffixW: None of the quoters do
ZoffixW Gotcha 16:10
jnthn It's unambiguously either a coercion type the the thing before it is a type, or a sub call otherwise.
s/the the/if the/
ZoffixW And this is the .sort bug I think:
m: say ^10 .sort.flat.Str;
camelia rakudo-moar 9e53fa: OUTPUT«Cannot find method 'flat': no method cache and no .^find_method␤ in block <unit> at /tmp/UdYHDOprMG:1␤␤»
jnthn Missing hllize in the code-gen maybe
stmuk I'm not seeing t/spec/S32-io/IO-Socket-Async-UDP.t pass on either linux or OS X 16:12
jnthn stmuk: Works fine on Windows. :)
[Coke] I think it's passing on windows only.
Which makes me think we need to mark it experimental for v6.c 16:13
jnthn Or, you know, one of the dozens of you not primarily using Windows could do some debugging.
16:13 vividsnow left
[Coke] Sure. there's a lot of balls in the air to resolve before, theoretically, thursday. 16:14
stmuk Unhandled exception in code scheduled on thread 3
Unexplained error
the latter looked particularly scary!
jnthn Unexplaind error. Thanks, libuv :P
diakopter [Coke]: I thought the 18th was the ambirtious goal to realize the realistic goal of rthe 25th
stmuk it couldnt be nl related I suppose?
jnthn stmuk: I don't think so, there's no newlines involved in the patch 16:15
uh, in the test
Could somebody golf the test down a bit?
To see what the minimum exploding program is?
stmuk ok 16:16
nine really hopes we have till the 25th
jnthn At least it explodes on Linux to, which I do have easy access to, unlike OSX. 16:17
*too
abraxxa jnthn: i thought that's a List ;)
lichtkind jnthn : its fai to say that you still see plenty room for optimization so that rakudo can par up with perl in foreseeable future? 16:18
TimToady blears into existence, and stops partway...
hoelzro it's not a MoarVM falling behind issue, is it?
nine lichtkind: yes
TimToady ah well, 6 hours of sleep is twice as good as the 3 I got the night before...
lichtkind thanks
[Coke] diakopter: there shouldn't be any new code after the 18th, IMO. 16:19
jnthn hoelzro: ooh, such that updating to latest libuv would magically fix it? :)
[Coke] (even now is problematic for testing, etc.)
TimToady thanks everyone for (not) volunteering to be useless-use guinea pigs for him 16:20
hoelzro jnthn: I mean I wonder if $(cat nqp/tools/build/MOAR_REVISION)..master has the fix
16:20 n0tjack joined
jnthn [Coke]: How is "new code" defined? I suspect we'll still have some fixes beyond then. 16:20
hoelzro: For the UDP thing? Not unless somebody sneaked one in without me looking :)
hoelzro: Which git log suggests not :) 16:21
[Coke]: I deliberately picked off the things I'd count as "missing feature" first, though. Nothing left in rt.perl.org/Ticket/Display.html?id=123766 counts
hoelzro jnthn: alright, just double checking =) 16:22
jnthn [Coke]: Well, PRE/POST does, but that's going to be explicilty deferred.
16:22 balazs joined
stmuk tries to golf linux udp 16:22
jnthn stmuk: Thanks.
nine hoelzro: can you still reproduce rt.perl.org/Ticket/Display.html?id=123272? 16:26
hoelzro nine: I'll give it a try in a few 16:27
jnthn m: say Version.new('6b')
camelia rakudo-moar 9e53fa: OUTPUT«v6.b␤»
jnthn m: say Version.new('6.b')
camelia rakudo-moar 9e53fa: OUTPUT«v6.b␤»
ZoffixW m: say Version.new('6*\') 16:28
camelia rakudo-moar 9e53fa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MO3PwLc4S2␤Unable to parse expression in single quotes; couldn't find final "'" ␤at /tmp/MO3PwLc4S2:1␤------> 3say Version.new('6*\')7⏏5<EOL>␤ expecting any of:␤ argument list␤ …»
ZoffixW m: say Version.new('6*')
camelia rakudo-moar 9e53fa: OUTPUT«v6.*␤»
FreezerburnV How do I compile a module down to the *.moarvm version? 16:29
16:30 pmurias joined
abraxxa m: my @foo = (['foo', 'bar'],['baz', 3.4]); say .gist for @foo[0]; 16:30
camelia rakudo-moar 9e53fa: OUTPUT«[foo bar]␤»
lichtkind the rakudo NCI works the same under jvm?
jnthn lichtkind: Yes, modulo bugs :) 16:31
lichtkind great :) 16:32
im just dreaming about rakudo as a platform if it runds on multi vm + perl5 aka cpan +the perl 6 itself which can morph into any language 16:33
abraxxa m: say 4.85.^name; say 4.85e0.^name; 16:34
camelia rakudo-moar 9e53fa: OUTPUT«Rat␤Num␤»
abraxxa i thought the advise yesterday was to use Num for floating point vars
and now i'm searching since hours why is-deeply fails to match just to find out its the other way round 16:35
jnthn Num is floating point
16:35 ZoffixW left
abraxxa jnthn: Rat too 16:35
m: say 4.85.gist; say 4.85e0.gist;
camelia rakudo-moar 9e53fa: OUTPUT«4.85␤4.85␤»
[Coke] jnthn: (new) eh, it's all fuzzy. TimToady's changes are causing me the most concern at the moment. 16:36
abraxxa paste.scsys.co.uk/502809
[Coke] But it sounded like that might get cleared up today.
abraxxa jnthn: ^^
jnthn abraxxa: You seem to be confusing literals vs. representation vs. gist 16:37
4.85 as a literal produces a Rat
4.85e0 as a literal produces a Num
Rat is represented as a rational
abraxxa yes, i just swapped these too
jnthn Num is represented as floating point
Both .gist to 4.85 because that's what humans tend to like to see 16:38
m: say 4.85.perl; say 4.85e0.perl;
camelia rakudo-moar 9e53fa: OUTPUT«4.85␤4.85e0␤»
abraxxa i thought Num is the 'regular' one which is generated when your use a 'plain' floating point value like 4.85
diakopter [Coke]: I thought the gsr/gsrr just caused benign warnings about benign things
jnthn abraxxa: Ah, then I guess your confusion is that 4.85 in Perl 6 does not mean floating point.
abraxxa WHAT?
jnthn It means a rational. 16:39
abraxxa nope, translating to German doesn't explain this either
what is a rational?
jnthn Something represented was a numerator and a denominator
m: say 4.85.nude
camelia rakudo-moar 9e53fa: OUTPUT«(97 20)␤»
jnthn That is, precisely 16:40
abraxxa as I said before that's an implementation detail a user coming from a untyped language like Perl 5 doesn't care about
and lets be honest most Perl 6 beginners will be Perl 5 users
[Coke] diakopter: it's causing spectest failures.
abraxxa i write my $foo = 4.85; and don't care
16:41 rurban joined
TimToady do you care if .1 + .2 == .3? 16:41
abraxxa I'll only specify one of the three floating point types if I care
TimToady: absolutely and I find it awesome that Rat is the default!
don't get me wrong here
diakopter abraxxa: actually, my experience observing Perl 6 the past 9 years indicates most Perl 6 learners who stick around for more than 2 seconds are not Perl 5ers 16:42
TimToady is tired, so don't expect both his eyes to see the same thing
16:42 AndyDee joined
diakopter abraxxa: #perl6, I mean 16:42
abraxxa i'm just trying to get DBDish::Oracle right
what is a float in the DB will be returned as Rat, because that's the default type Perl 6 creates when i specify a floating point value 16:43
as input it will likely accept Num as well
16:43 pmurias_ joined
abraxxa for floating point number columns that is 16:43
diakopter Perl 6 is just close enough to Perl 5 to be confusing, and just close enough in complexity to require a vast brain volume to keep them straight, imho 16:44
TimToady hopes a normal brain volume will work for that
but now to collect my guinea pig droppings... 16:45
abraxxa I'm just dealing with funny stuff like the type of a number(5,2) column multiplied with a number(2,0) column returning a NUM Oracle datatype (internal 21bit representation of the number datatype) and a precision and scale of 0
so now decide if you want to bind it as long or num64...
pmurias I would assume that competent Perl 5 are good at remembering loads of tricky language details 16:46
* Perl 5 users
TimToady I see nobody fixed the build overnight, at least as far as camelia is concerned
abraxxa # Failed test 'selected data matches what was written'
# at EVAL_0 line 170
# expected: $["BEOM", "Medium size orange juice", 2, 1.2, 2.4]
# got: $["BEOM", "Medium size orange juice", 2, 1.2, 2.4]
so why does is-deeply report a mismatch?
TimToady is there a workaround for 'Could not find symbol '&bool'' in NativeCall? a 'make clean' is not good enough 16:47
and I don't know what to remove anymore to nuke it... 16:48
diakopter did you adopt panda's build tree as your dev tree? 16:49
I mean rakudobrew, of course
TimToady no, I do my rakudobrewing in a different tree to see the user viewpoint
with an alternate path
16:50 sno left
jnthn TimToady: Try nuking your install directory, perhaps. Oddly I didn't actually run into the issue locally. 16:50
16:51 pmurias_ left
dalek p: b13205b | jnthn++ | src/HLL/Compiler.nqp:
Deconfuse language/implementation version.

For those cases where it matters. This will also let us keep the current language version specified in one place.
16:51
16:52 ZoffixW joined
ZoffixW m: say (* * *)(7, 6) 16:53
camelia rakudo-moar 9e53fa: OUTPUT«42␤»
ZoffixW chuckles
We totally should have a Unicode version of the Whatever star :)
16:53 FreezerburnV left
nine TimToady: you don't have to nuke the whole install dir. install/share/perl6 is enough and will be repopulated with make install 16:53
ZoffixW m: say (* * * ** *)(7, 6, 2) 16:55
camelia rakudo-moar 9e53fa: OUTPUT«252␤»
TimToady do we know why it got out of sync, and whether that indicates a missing dep? 16:56
16:56 sno joined, rurban left
ZoffixW m: say (* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * )(|^22) 16:57
camelia rakudo-moar 9e53fa: OUTPUT«0␤»
ZoffixW hm...
abraxxa i have to go, I hope I can finally commit everything tomorrow
bye!
ZoffixW bye
16:58 abraxxa left
jnthn ZoffixW: ^22 starts with 0 :) 16:58
ZoffixW Ahhh jnthn++ :D
TimToady many of us have fallen into that trap :)
16:58 psy_ joined
ZoffixW m: say (* + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * )(|^22) 16:59
camelia rakudo-moar 9e53fa: OUTPUT«51090942171709440000␤»
ZoffixW hah
16:59 psy_ left
nine TimToady: the source of the issue is that install-core-dist.pl uses git describe to create a version. But those git versions don't sort well and even if they did, CompUnit::Repository::Installation::need actually doesn't load the highest installed version, but a merely sufficient version. 16:59
16:59 psy_ joined
TimToady perhaps it's worth adding × and ÷ 16:59
17:00 Actualeyes left, rurban joined
jnthn TimToady: It seems the "make \n logical" didn't really work out so well as hoped for dealing with newline issues on Windows. I'm thinking we'll actually have to do translation for (non-socket) I/O. Any objections to that? Also, if we do that, is there any reason to keep the \n being virtual, and the newline pragma, around any more, given we'd switch it to always be the classical meaning by default? 17:00
TimToady then we can write * × * when we want to
17:00 rurban left
nine Both would probably have not made it into nom if we had 1) reviews, 2) no deadline 17:00
17:01 xfix joined
TimToady I'm fine with translation 17:01
Skarsnik .tell abraxxa I have the same error with is-deeply, I think Num does not work correctly
yoleaux Skarsnik: I'll pass your message to abraxxa.
jnthn TimToady: OK, I think I already figured out an easy way to put it in.
TimToady has at one time or other considered highjacking a portion of the input scanner's mind to look for mentions of things like infix:<÷> to pre-install into the lexer 17:03
so we don't have to relex on every new operator definition, just enable it to match 17:04
kinda falls into the "cheating is technique" category...
17:04 rurban_ left
jnthn TimToady: I'd probably stick it in gen_op and just regex our way over the following however much text for them :) 17:05
TimToady you mean on the first hit? the trouble is you might be in a subscope by then
anyway, just thought I'd drop the thought so I can, er, drop the thought 17:06
17:06 zakharyas left
dalek kudo/nom: cd7f136 | jnthn++ | / (2 files):
Use new implementation/language version methods.
17:06
kudo/nom: fe7b163 | jnthn++ | src/ (2 files):
Get language version from one place.
TimToady back useless use of useless use...
TimToady is glad he put in an easy bug for jnthn++ to fix :)
jnthn I hope ^^ are sufficient to clear up the language version number duplication
17:07 pmurias left
jnthn Though the ticket mentions -V...what on earth does that do... :) 17:07
oh...
TimToady yeah, that...
jnthn grr
OK, so in the next refactor... :)
TimToady I dunno if we have to fix that bit right now...
jnthn I *think* I can see a 5 minute way to do it 17:08
TimToady again feebly attempts to backlog for uu fewmets
17:09 rurban joined 17:10 rurban_ joined
hoelzro nine: LGTM 17:12
(re. that RT ticket)
nine hoelzro: so either the Heisenbug hid again, or it just got fixed with all the refactoring 17:16
17:16 sno left
hoelzro seems so =/ 17:16
we could bisect back to try to find what "fixed" it, to see if it makes sense
nine Do you have a "known broken" version?
hoelzro no, but in that case, I usually just hop back a few releases 17:17
so if I were to try this now, I would probably start with 2015.08 or 2015.09 17:18
nine 6d9d0f11aba8e2f465c2958a9311d9d4016017ff is the commit before curli. Might be worth a try 17:19
hoelzro *nod* 17:21
17:21 AlexDaniel joined 17:22 n0tjack left
ZoffixW m: say [*] (1..*+0)($_) for ^10 17:23
camelia rakudo-moar 9e53fa: OUTPUT«Useless use of ".." in expression "1..*+" in sink context␤- QAST::Op(call &infix:<..>) ..␤ - QAST::Want 1␤ - QAST::WVal(Int)␤ - Ii␤ - QAST::IVal(1)␤ - QAST::Op(call) ..␤ - QAST::Op(p6capturelex)␤ - QAST::Op(callmethod clo…»
ZoffixW huh... I'm not getting that on my terminal :/
Dammit, my awesome factorial function foiled by warnings 17:24
jnthn m: my ($a, \b) := 1, 2; say b; say MY::<b> # aha
camelia rakudo-moar 9e53fa: OUTPUT«(Any)␤2␤»
diakopter camelia is behind
ZoffixW I'm on "This is rakudo version 2015.11-311-gf94c31e built on MoarVM version 2015.11-21-g469ba64 implementing Perl v6.b." 17:25
dalek kudo/better_line_coverage: 127ee5b | timotimo++ | src/Perl6/Actions.nqp:
randomly sprinkle Actions with node annotations
timotimo this branch seems to be the wrong approach, though -^ 17:26
17:26 yqt joined
ZoffixW Works on this one too: This is rakudo version 2015.11-477-gde52f97 built on MoarVM version 2015.11-34-gc3eea17 implementing Perl v6.b. 17:26
m: say $*PERL 17:27
camelia rakudo-moar 9e53fa: OUTPUT«Perl 6 (6.b)␤»
17:27 renato joined
ZoffixW -_- 17:27
17:28 renato is now known as Guest71133, Guest71133 left
ZoffixW m: say $*PROGRAM-NAME 17:30
camelia rakudo-moar : OUTPUT«No such file or directory»
ZoffixW 0.o
RabidGravy isn't it $*COMPILER or somesuch?
ZoffixW heh... she messaged me "<camelia> rakudo-moar : OUTPUT«(timeout)Can't exec "./rakudo-m-inst/bin/perl6-m": No such file or directory at lib/EvalbotExecuter.pm line 194.␤cat: /home/camelia/rakudo-m-inst/revision: No such file or directory␤#perl6 <ZoffixW> rakudo-moar: say $*PROGRAM-NAME␤»" 17:31
dalek kudo/nom: 3e6cc4a | jnthn++ | / (2 files):
Include language version and impl in perl6 -V.

This moves the version a step back, so it still has a single source.
TimToady ZoffixW: redoing camelia at the moment
17:31 dakkar left
diakopter anxiously awaits the new butterfly design 17:32
AlexDaniel diakopter: what? What new butterfly design?
jnthn heh :)
diakopter teasing
17:34 Guest0101 joined, ajs_ joined 17:35 n0tjack joined
TimToady camelia updated 17:35
m: my int $i = 0; $i++ while $i < 10_000_000; say $i; say now - INIT now
camelia rakudo-moar fe7b16: OUTPUT«10000000␤4.4116645␤»
TimToady that one has regressed
jnthn m: my \b := 1,2; say b
camelia rakudo-moar fe7b16: OUTPUT«(1 2)␤»
TimToady except it doesn't say useless use of $i anymore :)
diakopter eww
stmuk I think the linux issue with t/spec/S32-io/IO-Socket-Async-UDP.t is that the listener dies (probably with the "unhandled exception" after the 'print-to' I can get the test to pass by starting up a second listener 17:36
TimToady proper sinking is just one of those problems you have to gnaw to death...
stmuk also both client blocks pass if the other is commented out 17:37
ZoffixW m: say [*] (1..*+0)($_) for ^10
camelia rakudo-moar fe7b16: OUTPUT«Useless use of ".." in expression "1..*+" in sink context␤- QAST::Op(call &infix:<..>) ..␤ - QAST::Want :BY<EXPR/list WANTED unwanted> :WANTED 1␤ - QAST::WVal(Int) ␤ - Ii␤ - QAST::IVal(1) ␤ - QAST::Op(call) ..␤ - QAST::Op(p6ca…»
ZoffixW *lesigh*
jnthn stmuk: Weird...
TimToady m: my int $i = 0; ++$i while $i < 10_000_000; say $i; say now - INIT now
camelia rakudo-moar fe7b16: OUTPUT«10000000␤0.0630897␤»
jnthn stmuk: That narrows it down a good bit, though...
diakopter wonders if TimToady is experimenting with fixes on camelia 17:38
stmuk actually correction the first listener doesn't die .. I had to explicitly close it
TimToady ZoffixW: yes, that one is on my list
ZoffixW Ah, k :)
stmuk anway I tend to blame the listener 17:39
ZoffixW Tell me about it! They sit and nod agreeably, but don't actually listen.
TimToady nods
stmuk is there anyway of dumping thread ids for debugging?
ZoffixW Yeah 17:40
RabidGravy $*THREAD.id ?
ZoffixW m: (^10)».&({say $*THREAD.id}) 17:41
camelia rakudo-moar fe7b16: OUTPUT«1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤»
TimToady is under the impression that » is not yet very related to .hyper
ZoffixW m: (^10).hyper(:1batch)».&({say $*THREAD.id}) 17:42
camelia ( no output )
ZoffixW :(
m: say $*THREAD.id for ^10 .hyper: :1batch;
camelia rakudo-moar fe7b16: OUTPUT«3␤4␤5␤3␤4␤3␤5␤4␤3␤6␤»
ZoffixW There we go :)
stmuk the "Unhandled exception in code scheduled on thread" is definitely the listener in IO-Socket-Async-UDP.t 17:44
ZoffixW This is weird isn't it? i.imgur.com/ZnN3Oyl.png 17:46
One thread returned (Any) for THREAD-ID
diakopter m: say $*THREAD.id for ^10 .hyper: :1batch;m: say $*THREAD.id for ^10 .hyper: :1batch; say now - INIT now
camelia rakudo-moar fe7b16: OUTPUT«3␤4␤4␤5␤3␤4␤5␤6␤4␤3␤4␤4␤3␤5␤3␤4␤5␤6␤5␤3␤0.01698216␤»
ZoffixW Hmph.. and a sporadic segfault: i.imgur.com/HchYjj5.png 17:49
m: for ^100 { say $*THREAD.id for ^10 .hyper: :1batch; }
camelia rakudo-moar fe7b16: OUTPUT«3␤4␤4␤3␤4␤3␤6␤4␤4␤6␤3␤3␤4␤3␤5␤5␤6␤5␤4␤3␤7␤7␤8␤7␤Memory allocation failed; could not allocate 14880 bytes␤»
17:49 rurban_ left
ZoffixW heh 17:49
ajs_ Hey folks, before I get too far into my evening side project, I want to make sure it's useful.... I want IO handles that read/write Str and Buf.
stmuk it's a pity finding bugs is easier than fixing them :/
hoelzro nine: rakudo@6d9d0f1 doesn't exhibit the behavior
ZoffixW ajs_, I've used that a few times in P5, so sure, that might be useful 17:50
ajs_ This is my initial implementation for reading Str: github.com/ajs/work/blob/master/names/IOMem.pm6
My thinking is IO::Mem is the generic entry point while IO::Str and IO::Buf will be specific to those types. 17:51
AlexDaniel ajs_: I've been using it a lot in P5. Not sure if such need exists in Perl 6 though, but it probably does
ajs_ If it does exist, I'd love to know before I get any further in the implementation.... I spent last night on it, and was going to try to finish up IO::Str tonight. 17:52
diakopter m: my $a; $a += $*THREAD.id for ^50000 .hyper: :1batch; say now - INIT now; say $a 17:54
camelia rakudo-moar 3e6cc4: OUTPUT«(signal XCPU)»
ZoffixW heh
diakopter m: my $a; $a += $*THREAD.id for ^50000 .hyper: :1batch; say now - INIT now; say $a
camelia rakudo-moar 3e6cc4: OUTPUT«(signal XCPU)»
ZoffixW m: my $a; $a += $*THREAD.id for ^5000 .hyper: :1batch; say now - INIT now; say $a
camelia rakudo-moar 3e6cc4: OUTPUT«0.9548537␤21945␤»
nine hoelzro: so the bug has vanished before curli?
hoelzro yup 17:55
hoelzro ¯_(ツ)_/¯
17:55 sunnavy joined
jnthn seems to have fixed rt.perl.org/Ticket/Display.html?id=126626 17:59
ZoffixW How come this doesn't reverse the pairs?
m: say (0 => 3, 1 => 3, 2 => 5, 3 => 4, 4 => 3, 5 => 5, 6 => 3, 7 => 4, 8 => 5, 9 => 6).Seq».reverse
camelia rakudo-moar 3e6cc4: OUTPUT«((0 => 3) (1 => 3) (2 => 5) (3 => 4) (4 => 3) (5 => 5) (6 => 3) (7 => 4) (8 => 5) (9 => 6))␤»
jnthn m: say (0 => 1).reverse
ZoffixW m: say (0 => 3, 1 => 3, 2 => 5, 3 => 4, 4 => 3, 5 => 5, 6 => 3, 7 => 4, 8 => 5, 9 => 6).Seq».antipair
camelia rakudo-moar 3e6cc4: OUTPUT«(0 => 1)␤»
rakudo-moar 3e6cc4: OUTPUT«(3 => 0 3 => 1 5 => 2 4 => 3 3 => 4 5 => 5 3 => 6 4 => 7 5 => 8 6 => 9)␤»
17:59 firstdayonthejob joined
jnthn Because reverse doesn't reverse pairs? :) 17:59
And yes, antipair is the one 18:00
18:00 administrator joined
jnthn Just part of the general deconfusing of things (like reverse and flip are different operations) 18:00
18:00 administrator is now known as Guest2627
ZoffixW jnthn, I see. I just saw in the docs "Routines supplied by Any": docs.perl6.org/type/Pair 18:01
m: say (0 => 1).sort
camelia rakudo-moar 3e6cc4: OUTPUT«(0 => 1)␤»
ZoffixW m: say (1 => 0).sort
camelia rakudo-moar 3e6cc4: OUTPUT«(1 => 0)␤»
jnthn ZoffixW: Sure, because anything can act like a list of one item
ZoffixW Ah, I see.
jnthn Darn, my fix busted a test...
jnthn thinks he'll save this for after dinner :)
TimToady m: say (1 => 2 => 3).antipair
camelia rakudo-moar 3e6cc4: OUTPUT«(2 => 3) => 1␤»
TimToady m: say (1 => 2 => 3).invert
camelia rakudo-moar 3e6cc4: OUTPUT«Cannot modify an immutable Pair␤ in block <unit> at /tmp/msHcDivLRO:1␤␤»
TimToady hmm, invert should just return a new pair 18:02
Skarsnik hm, what was the git magic command to rebase without creating a merge commit?
jnthn git pull --rebase ? 18:03
TimToady m: say (1 => [2, 3]).invert
camelia rakudo-moar 3e6cc4: OUTPUT«[2 => 1 3 => 1]␤»
18:03 sno joined
TimToady m: say (1 => [2, 3]).antipair 18:03
camelia rakudo-moar 3e6cc4: OUTPUT«[2 3] => 1␤»
rindolf TimToady: hi! sup?
grondilu fixed rosettacode.org/wiki/Combinations_w...ons#Perl_6 but it was quite painful 18:04
TimToady been breakin' stuff
ZoffixW m: say (3 => 0, 5 => 1, 4 => 2, 3 => 3, 5 => 4, 3 => 5, 4 => 6, 5 => 7, 3 => 8, 6 => 9).sort({$^a <=> $^b})
camelia rakudo-moar 3e6cc4: OUTPUT«Cannot call Real(Pair: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at /tmp/7KJNaBsbhN:1␤␤»
ZoffixW m: say (3 => 0, 5 => 1, 4 => 2, 3 => 3, 5 => 4, 3 => 5, 4 => 6, 5 => 7, 3 => 8, 6 => 9).sort({$^a.key <=> $^b.key})
camelia rakudo-moar 3e6cc4: OUTPUT«(3 => 0 3 => 3 3 => 5 3 => 8 4 => 2 4 => 6 5 => 1 5 => 4 5 => 7 6 => 9)␤»
grondilu m: m: say (3 => 0, 5 => 1, 4 => 2).sort(:by(*.key)) 18:05
camelia rakudo-moar 3e6cc4: OUTPUT«(3 => 0 4 => 2 5 => 1)␤»
dalek c: 142b4cf | (Sylvain Colinet)++ | doc/Language/nativecall.pod:
Added bool and size_t to NC doc. Also add a bit of words on typed pointer
TimToady m: say 3 => 1 cmp 3 => 0
camelia rakudo-moar 3e6cc4: OUTPUT«3 => Less => 0␤»
TimToady m: say 3 => 1 cmp 3 => 2
camelia rakudo-moar 3e6cc4: OUTPUT«3 => Less => 2␤»
TimToady hmm
grondilu prority?
TimToady it should at least be different 18:06
grondilu precedence I meant
TimToady I don't see a prec problem
ZoffixW m: m: say (3 => 0, 5 => 1, 4 => 2).sort: *.key
camelia rakudo-moar 3e6cc4: OUTPUT«(3 => 0 4 => 2 5 => 1)␤»
TimToady I'd think pairs should sort first on key, then on value
grondilu that would be intuitive 18:07
TimToady but I shouldn't have got Less for the 2nd one above
so looks like a buglet to me
someone else can file it
ZoffixW m: my @horses; @horses.append: $*THREAD.id for ^3 .race: :1batch; say "Horse {@horses.pairs».antipair.sort(*.key).reverse[0].value} won!" 18:09
camelia rakudo-moar 3e6cc4: OUTPUT«Horse 1 won!␤»
ZoffixW Horse racing in Perl 6 :D
Skarsnik lol
TimToady at a guess, it's comparing object identities, so the first one created is always less 18:10
18:10 petercommand left
TimToady oh well, I'll file it if no one else is 18:11
masak TimToady: oh hai, did you backlog irclog.perlgeek.de/perl6/2015-12-15#i_11719712 ?
TimToady: (try is wrongly flagged up as a sink context) 18:12
ZoffixW m: say "OH HAI" if try 0 eq 0
camelia rakudo-moar 3e6cc4: OUTPUT«Useless use of "eq" in expression "0 eq 0" in sink context␤- QAST::Op(chain &infix:<eq>) :statement_id<?> eq␤ - QAST::Want :BY<EXPR/list WANTED unwanted> :WANTED 0␤ - QAST::WVal(Int) ␤ - Ii␤ - QAST::IVal(0) ␤ - QAST::Want :BY<EXPR/li…»
yakudza hehe v1.std3.ru/71/b7/1450110575-71b77b...83738f.gif how perl6 will look like ? (:
TimToady masak: yes, in my list 18:13
masak ZoffixW: huh. I wonder why the warning worked in camelia now, and not back when I tried it...
ZoffixW masak, she got refreshed a few dozen minutes ago
dalek kudo/nom: 4624f75 | (Stefan Seifert)++ | tools/build/install-core-dist.pl:
Use Perl's version for the CORE dist

Using git describe has been a workaround obsoleted by the :force flag to install. Versions should be assigned manually and conciously.
kudo/nom: b7c6b58 | (Stefan Seifert)++ | src/core/CompUnit/Repository/Installation.pm:
Load the newest version of matching dists by default.

This should get rid of confusion caused by outdated installed versions and matches what has actually be envisioned.
nine This ^^^ should be the end of the &bool errors
TimToady masak: because I nuked the install 18:14
masak aha.
TimToady so now we have a different set of bugs :) 18:15
ZoffixW m: say ^10 .shuffle 18:16
camelia rakudo-moar 3e6cc4: OUTPUT«Method 'shuffle' not found for invocant of class 'Range'␤ in block <unit> at /tmp/wls8JALrpN:1␤␤»
ZoffixW Wasn't there a shuffle method?
ZoffixW might be confusing with one of Perl 5's List::* modules
masak yakudza: Perl 6 looks like Perl, but with C#'s space helmet and a butterfly t-shirt 18:17
18:18 koo8 left
ZoffixW m: say ^10 .sort({rand <=> rand}) 18:18
camelia rakudo-moar 3e6cc4: OUTPUT«(0 1 3 4 5 7 8 2 6 9)␤»
masak m: say (flat 1..5).pick(*)
camelia rakudo-moar 3e6cc4: OUTPUT«(5 3 4 1 2)␤»
masak ZoffixW: use .pick(*)
ZoffixW Ah :) Thanks
masak++
smls masak: Why the 'flat'?
masak smls: because a range is a single thing. 18:19
ZoffixW (It was even in one of the Advent articles)
masak smls: welcome to post-GLR
ZoffixW m: say 1..10 .pick(*)
camelia rakudo-moar 3e6cc4: OUTPUT«Seq objects are not valid endpoints for Ranges␤ in block <unit> at /tmp/xsGuV6Bkwz:1␤␤»
TimToady m: say (1..5).pick(*)
camelia rakudo-moar 3e6cc4: OUTPUT«(5 4 1 3 2)␤»
ZoffixW m: say ^10 .pick(*)
camelia rakudo-moar 3e6cc4: OUTPUT«(4 1 5 7 9 8 6 2 0 3)␤»
TimToady why the 'flat'?
masak TimToady: um. 18:20
TimToady: because I tried it locally, got `(1 2 3 4 5)`, and concluded that it didn't shuffle :P
TimToady try it again :)
masak I did :)
smls ;)
RabidGravy that's randomness for you
TimToady m: say ^5 .permutations .pick 18:21
camelia rakudo-moar 3e6cc4: OUTPUT«(3 0 2 1 4)␤»
masak m: sub postfix:<!>)($n) { [*] 2..$n }; say "you have a 1 in %d chance of getting the five numbers in order".fmt(5!)
camelia rakudo-moar 3e6cc4: OUTPUT«5===SORRY!5=== Error while compiling /tmp/W5L87rDmzT␤Missing block␤at /tmp/W5L87rDmzT:1␤------> 3sub postfix:<!>7⏏5)($n) { [*] 2..$n }; say "you have a 1 i␤ expecting any of:␤ new name to be defined␤»
masak m: sub postfix:<!>($n) { [*] 2..$n }; say "you have a 1 in %d chance of getting the five numbers in order".fmt(5!)
camelia rakudo-moar 3e6cc4: OUTPUT«Directives specify 0 arguments, but 1 argument was supplied␤␤»
masak m: sub postfix:<!>($n) { [*] 2..$n }; say 5!.fmt: "you have a 1 in %d chance of getting the five numbers in order" 18:22
camelia rakudo-moar 3e6cc4: OUTPUT«you have a 1 in 120 chance of getting the five numbers in order␤»
masak m: sub postfix:<!>($n) { [*] 2..$n }; say (1/5! * 100).fmt: "you have a %5.2f%% chance of getting the five numbers in order" 18:23
camelia rakudo-moar 3e6cc4: OUTPUT«you have a 0.83% chance of getting the five numbers in order␤»
TimToady m: sub postfix:<!>($n) { [*] 2..$n }; say (⅕! * 100).fmt: "you have a %5.2f%% chance of getting the five numbers in order"
camelia rakudo-moar 3e6cc4: OUTPUT«you have a 100.00% chance of getting the five numbers in order␤»
TimToady oh, duh :)
18:23 yqt left
TimToady how come unicode doesn't have any vulgar fractions with ! in the denominator, huh? 18:24
.oO(useless use of unicode)
18:25
y'know, I could get to fixing the uu bugs faster if you folks hadn't frontlogged so much while I was asleep... 18:26
ZoffixW ehehe
18:26 espadrine left, kyclark_ joined
masak .oO( 1. create language 2. create community 3. blame community for talking too much while you're hacking on language ) 18:27
:P
TimToady it's a nice problem to have, really :) 18:28
m: say ($_ * 5 for ^10); 18:29
camelia rakudo-moar 3e6cc4: OUTPUT«(0 5 10 15 20 25 30 35 40 45)␤»
TimToady at least that one fixed itself
nine gave up backlogging in favor of having more time for hacking
ZoffixW m: say "You have a {100*1/[*] 1..5}% chance of getting the five numbers in order"; 18:30
camelia rakudo-moar 3e6cc4: OUTPUT«You have a 0.833333% chance of getting the five numbers in order␤»
dalek kudo/nom: 9be3cae | (Stefan Seifert)++ | src/ (3 files):
Fix use lib accidentally cutting the $*REPO chain short

If one used "use lib" to add a repository that has already been in the $*REPO chain, it would get moved to the front and the part of the chain pointed to by its .next-repo was lost.
We now properly remove it from the chain before putting it to the front.
Thanks to bartonlin++ for reporting!
TimToady is sort of not allowed to give up backlogging, to keep up appearances of omniscience
18:31 zakharyas joined
masak nine: also known as "hacklogging" :) 18:31
nine So much LHF, so few takers :/ 18:32
ZoffixW m: multi postfix:<!>(Int $n) { [*] 1..$n }; multi postfix:<!>(Rat $n) { 1 / [*] 1..$n.denominator }; say [⅕!, 1/5!]
camelia rakudo-moar b7c6b5: OUTPUT«[0.008333 0.008333]␤»
ZoffixW :D
nine, well, I'd gladly hack on the LHF, but I don't even have an idea of how to start 18:33
TimToady m: use NativeCall; say Num.ACCEPTS(num64);
kyclark_ Is there a good resource for learning how to write P6 grammars? I've written Parse::RecDescent grammars (SQL::Translator, Bio::GenBankParser), and I want to start using P6 for parsing things like FAST[QA] (bioinformatics type stuff).
camelia rakudo-moar b7c6b5: OUTPUT«True␤»
TimToady m: use NativeCall; say num64 ~~ Num;
camelia rakudo-moar b7c6b5: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/HlQ2dNwUz5:1␤␤»
TimToady huh
did that one get reported?
18:33 leont joined
masak don't think so 18:33
nine ZoffixW: CompUnit::DependencySpecification::Str doesn't have to add the :ver and :auth if it's True anyway
kyclark_ I started with doc.perl6.org/language/grammars and want to go from there.
masak submits rakudobug
ZoffixW nine, what repo is that in /rakudo ? 18:34
nqp? MoarVM?
nine ZoffixW: github.com/rakudo/rakudo/blob/nom/...ication.pm
ZoffixW Thanks
Well, that's easy to fix 18:35
nine exactly! 18:36
ZoffixW nine, is that on the list somewhere (like an RT ticket?)
nine I guess not
ZoffixW List of LHFs
18:37 gblade joined 18:39 patrickz joined, labster joined, labster left 18:40 smls_ joined 18:41 kyclark_ left, smls left 18:44 kyclark_ joined
TimToady m: use Test; is ($(1, 2) Z <a b c>), (($(1, 2), 'a'),) 18:46
camelia rakudo-moar b7c6b5: OUTPUT«ok 1 - ␤»
18:46 kyclark_ left 18:48 gblade_ joined 18:49 gblade left
d^_^b jnthn: thanks for the awesome advent calendar post. I have started something similar, but need some more context around IO::Socket. I still need to spend a few days to familiarise myself with perl6 syntax. 18:49
gblade_ Hi! I have a question on the latest advent and S07.
d^_^b whoops, this is my remote account.
ZoffixW hm
m: my $x = False; say ($x ~~ Bool and $x ~~ True)
camelia rakudo-moar b7c6b5: OUTPUT«True␤»
gblade_ p6: [1,2,3].push: ['a','b'] 18:50
camelia ( no output )
gblade_ p6: say [1,2,3].push: ['a','b']
camelia rakudo-moar b7c6b5: OUTPUT«[1 2 3 [a b]]␤»
dj_goku I meant to use this account. :D
ZoffixW m: my $x = False; say ($x ~~ Bool and $x)
camelia rakudo-moar b7c6b5: OUTPUT«False␤»
gblade_ Seems S07 says that should be [1,2,3,'a','b'] 18:52
smls_ p6: say [1,2,3].append: ['a','b']
camelia rakudo-moar 9be3ca: OUTPUT«[1 2 3 a b]␤»
timotimo could be the .push vs .append thing hasn't landed in S07 yet?! 18:53
18:53 kyclark_ joined
TimToady likely 18:53
a lot of things haven't landed in the synopses yet
gblade_ Ah okay, I was just trying the examples. Thanks!
TimToady at the moment, roast really is the spec
ZoffixW huh... You don't need commas with named args 0.o who knew 18:56
18:56 leont left
ZoffixW m: class x { has $.a; has $.b; has $.c; method x { say "$.a $.b $.c"; } }; x.new( :2a :3b :4c ).x 18:57
camelia rakudo-moar 9be3ca: OUTPUT«2 3 4␤»
nine ZoffixW: :a :b without a comma is actually :a with an adverb
ZoffixW m: class x { has $.a; has $.b; has $.c; method x { say "$.a $.b $.c"; } }; given x.new: :2a:3b:4c {.x} 18:58
camelia rakudo-moar 9be3ca: OUTPUT«2 3 4␤»
19:00 yqt joined
El_Che m: $~MAIN 19:02
camelia ( no output )
masak nine: I don't believe that's true.
El_Che m: say $~MAIN
camelia rakudo-moar 9be3ca: OUTPUT«Slang.new(:grammar(Perl6::Grammar), :actions(Perl6::Actions))␤»
masak nine: I think the simpler explanation is that the comma before a named arg is optional.
ZoffixW nine, well, I made my fix. What's the standard way to proceed next? "make spectest"?
El_Che m: say $~Regex
camelia rakudo-moar 9be3ca: OUTPUT«Slang.new(:grammar(Perl6::RegexGrammar), :actions(Perl6::RegexActions))␤»
nine masak: yeah you're probably right. I have forgotten what the reason for this feature is however
El_Che accoriding to the doc (under the ~ Twigil). There is a note "Note: Slangs are NYI in Rakudo." 19:03
nine I know I came across it (and was astonished) during the glr
El_Che Tux has his own slang, therefor implemented?
19:03 leat left
El_Che m: augment slang Regex {token backslash:std<\Y> { YY };} 19:04
camelia rakudo-moar 9be3ca: OUTPUT«5===SORRY!5=== Error while compiling /tmp/W6erymh0U8␤augment not allowed without 'use MONKEY-TYPING'␤at /tmp/W6erymh0U8:1␤------> 3augment slang Regex7⏏5 {token backslash:std<\Y> { YY };}␤ expecting any of:␤ generic role␤»
TimToady there's no way to get a slang at the P6 level, but you can do it by twiddling internals
El_Che m: use MONKEY-TYPING; augment slang Regex {token backslash:std<\Y> { YY };}
camelia rakudo-moar 9be3ca: OUTPUT«===SORRY!===␤QAST::Block with cuid cuid_1_1450206257.09382 has not appeared␤»
El_Che TimToady: ok, I was juist ack'ing through the docs. So, I'll leave the Note in place
TimToady and it's likely to break someday if you directly access %*LANG 19:05
same goes for %*PRAGMAS, I suspect
19:05 b7j0c joined
El_Che TimToady: thx 19:05
TimToady these things should go with the current langauge, not the current dynamic scope
*guage 19:06
a lan gauge is something else...
and why didn't Noah Webster fix the spelling of that one...
El_Che the urban dictionary has a funny quote: "I majored in Enlgish and speak two other langauges." 19:08
TimToady surely that should be majered?
El_Che well, there is more than one way to say it :) 19:09
19:10 gblade_ left 19:12 FROGGS joined 19:13 labster joined 19:15 virtualsue left 19:17 muraiki joined 19:19 FreezerburnV joined 19:24 Peter_R joined 19:28 vendethiel joined
nine ZoffixW: yes, always make spectest 19:28
ZoffixW: TEST_JOBS=8 make spectest # is a lot faster 19:29
ZoffixW I'm guessing that makes the assumption there are 8 cores available? :)
I think on this particular box, I only got 2 19:30
19:30 kyclark_ left, FreezerburnV left
nine You can try with TEST_JOBS=4 as well. I guess it can't hurt unless you're very memory constrained 19:30
ZoffixW Do I have to run plain "make" any time I make a change? 19:31
seems to be taking forever...
19:31 FreezerburnV joined
ZoffixW 157 seconds 19:32
"Useless use of $compunit in sink context (line 35107)"
heh.. dat line number :P
nine You probably need to make install after a change
ZoffixW: that line number is actually correct. Have a look at gen/moar/m-CORE.setting 19:33
ZoffixW I'm afraid to :P
nine That file is almost all of rakudo's classes combined and ends up being the precompiled core
19:34 zengargoyle left 19:35 zengargoyle joined
[Coke] is glad that compiling the setting no longer takes hours. :) 19:38
masak hooray for Moore's L^W^Woptimizations! 19:40
[Coke] .u pencil 19:41
yoleaux U+270E LOWER RIGHT PENCIL [So] (✎)
U+270F PENCIL [So] (✏)
[Coke] .u edit
19:41 bpmedley left
yoleaux U+2E0E EDITORIAL CORONIS [Po] (⸎) 19:41
ZoffixW How long does make spectest usually run for? 19:42
ZoffixW wonders if they should take a nap
Skarsnik forever!
ZoffixW damn
bartolin_ hmm, I get a build error for MoarVM (on FreeBSD witch clang): gist.github.com/usev6/86f025b89dd6d3e751b6
geekosaur hm, yes, that looks like a bad idea 19:44
lizmat looking at some spectest fallout, it looks like something with linenumbering has changed
geekosaur fileno is a macro in traditional stdio
ilmari discvers there's a .christmas TLD, and that perl6.christmas is taken
no, that one's free
lizmat t/spec/S24-testing/line-numbers.t fails all tests
ilmari but perl.christmas is taken
ZoffixW heh 19:45
These TLDs are such a money grab
geekosaur bartolin_, I think you want to ask in #moarvm, or just file a bug report
ZoffixW What are all those numbers at the bottom of the spectest run? 19:46
Skarsnik should like this function must be renamed x)
bartolin_ just found MoarVM issue #311 (build error already reported)
lizmat .tell jnthn something with line numbering has changed, is this intemtional?
yoleaux lizmat: I'll pass your message to jnthn.
19:47 joe__ joined
Skarsnik bartolin_, try a version from one week ago, it probably work. The fileno stuff is recent I think 19:48
bartolin_ Skarsnik: yes, it's from yesterday (commit 344113ce and maybe also 58b81ace) 19:49
bartolin_ runs daily spectests on that box ...
[Coke] lizmat: the line numbering is impacting spectests, pretty sure it's a known issue. I thought it was related to larry's changes.
diakopter lizmat: I thought timotimo was doing the annotation (line number) changes in a branch 19:50
timotimo yes, i did 19:51
er. i hope i did!
bartolin_ in case someone wants to have a look at the build error, I'll happily provide shell access to that system
lizmat ok, just wanted to make sure it wasn't falling through the cracks 19:52
nine lizmat: have you experienced the t/spec/S17-supply/throttle.t hangs? 19:53
timotimo well, i'm convinced i have nothing to do with line number offness. so i'll not look into it now
because i'm working on the line-based coverage tool thingie again
lizmat nine: not recently, but I have had a syntax.t hang again earlier today 19:54
geekosaur bartolin_, Skarsnik, access to raw fileno was just added yesterday IIRC
19:54 adhoc left
nine lizmat: I can easily reproduce it by having a TEST_JOBS=20 make spectest running while trying: perl6 -e 'my @a; @a[9] = 0; for 1..10 -> $n { say $n; (1..10).Supply.throttle( $n, { @a[$_] = 1 } ).wait; }' 19:54
Skarsnik it's probably easy to fix with replacing fileno with like pfileno or something like this
geekosaur yep 19:55
Skarsnik in the c part
bartolin_ will try that
nine lizmat: when it hangs, every thread is waiting on a cond var in ConcBlockingQueue's shift except for thread #1 which is waiting for a ReentrantMutex
19:55 adhoc joined
lizmat nine: doesn't sound nice 19:57
19:58 FreezerburnV left
diakopter dedlok! 19:58
nine lizmat: futhermore, it happens because the { @a[$_] = 1 } is so fast. By slowing it down (like the next test does with the sleep rand or by adding a costly loop) the hangs disappear.
ZoffixW hm hm... I'm getting a whole bunch of failures, but I've no idea if they're due to my change or not anyway, so I may be wasiting my time running the spectest 19:59
nine ZoffixW: please gist those failures. I can tell you if they're to be expected
ZoffixW And I need to do it on a faster box lol :D 20:00
nine, so far it just says "Failed 13/13 subtests" without any details... I'm guessing those will be shown at the end?
lizmat gist.github.com/lizmat/af2e1c6c3d27c7318410 # my current spectest status
hoelzro jnthn, stmuk: interesting I noticed doing a strace on that UDP test; I see calls to socket() to establish a UDP socket, but not to bind()
s/(interesting)/$1 thing/
nine ZoffixW: if you have a throttle.t test running (or rather waiting), kill it. It won't finish 20:01
geekosaur hoelzro, bind() is not especially useful on UDP
nine lizmat: same sorry state here :/
hoelzro geekosaur: how does a UDP server say to the OS which port it wants to receive traffic on?
jnthn d^_^b: Glad you enjoyed the post. :) 20:02
yoleaux 19:46Z <lizmat> jnthn: something with line numbering has changed, is this intemtional?
geekosaur ... sorry, I'm having A Day; I was thinking connect()
sogh
jnthn lizmat: Not intentional
lizmat: But afaik it's TimToady's ongoing sink work that did it
20:02 joe__ left
lizmat ok, if it's ongoing, I guess we should ignore the errors now 20:03
nine jnthn: I dug a bit into the throttle.t hangs: irclog.perlgeek.de/perl6/2015-12-15#i_11722674 and following
lizmat ?
20:03 darutoko left
hoelzro ah, I didn't strace -f 20:04
lizmat m: a => 1 cmp a => 0 # related to #126926
camelia ( no output )
lizmat m: say a => 1 cmp a => 0 # related to #126926 20:05
camelia rakudo-moar 9be3ca: OUTPUT«Unexpected named parameter 'a' passed␤ in block <unit> at /tmp/j40bTvaBPh:1␤␤»
lizmat m: say 3 => 1 cmp 3 => 0 # related to #126926
camelia rakudo-moar 9be3ca: OUTPUT«3 => Less => 0␤»
20:07 lucasb joined
ZoffixW nine, how do I kill it? Just CTRL+C? 20:07
nine ZoffixW: I usually find the process id using "ps xaf" and then use kill to kill it 20:08
dalek kudo/nom: d23a73d | jnthn++ | src/Perl6/World.nqp:
Don't confuse undef variables with constants.

This is what was keeping `my ($a, \b) = 1, 2; say b` from producing the expected output (2).
kudo/nom: 205f30b | jnthn++ | src/core/control.pm:
nextsame and nextwith shouldn't recont.

We leave that to the semantics of the routine, which may have an
  `is rw` on it.
ast: 2718268 | jnthn++ | S06-advanced/wrap.t:
Correct some busted tests; unfudge.
jnthn oops, commit fail
ZoffixW oh, we can mix $a and \b now? 20:09
jnthn Should have read `my ($a, \b) = 1, 2`
shit!
Should have read `my ($a, \b) := 1, 2`
Only if you use :=
jnthn accidentally fixed RT #122259 as a result of looking into this...
ZoffixW Ah
jnthn++
m: my ( $h, \Δ, $c_max ) := (1, 4, 5); say $h, Δ, $c_max 20:11
camelia rakudo-moar 9be3ca: OUTPUT«1(Any)5␤»
ZoffixW m: my ( $h, \Δ, $c_max ) = (1, 4, 5); say $h, Δ, $c_max
camelia rakudo-moar 9be3ca: OUTPUT«1(Any)5␤»
jnthn The first of those now works
I want to make the second of those give an error, to avoid confusion 20:12
ZoffixW Make it work :D
jnthn It can't
Sanely
ZoffixW nine, here are my spectest results: gist.github.com/zoffixznet/d57da99209ddcd1bd3aa 20:13
jnthn bbl
Woodi hey, do you know ? it's just two days until Perl6 release ! and it's late here so practically just 1 !
ZoffixW Compared to lizmat's, my syntax and interval pass, but wait fails 20:14
lizmat Woodi: pretty sure it won't be in two days
nine ZoffixW: all known, you're fine
ZoffixW \o/
Woodi lizmat: damn ;)
lizmat it *will* be before Chtristmas
pretty sure of that
ZoffixW nine, PR sent: github.com/rakudo/rakudo/pull/634 20:16
nine wouldn't mind having a month or two more
ZoffixW nine, what other fruits are there?
lucasb so, {moar,nqp,rakudo}-2015.12 will ship as usual? but will also ship a perl-6.c.tar.gz?
will it include rakudo star modules and roast test too? 20:17
nine ZoffixW: that fails if $.version-matcher is 0
ZoffixW Ah right :) lol, I tried '0' but not 0 >_< 20:18
Fixin'
nine, k: github.com/rakudo/rakudo/pull/634/files 20:25
dalek kudo/nom: 69e18e8 | (Zoffix Znet)++ | src/core/CompUnit/DependencySpecification.pm:
CompUnit::DependencySpecification::Str doesn't have to add the :ver, :api :auth if it's True anyway
20:26
kudo/nom: 95e7ac6 | niner++ | src/core/CompUnit/DependencySpecification.pm:
Merge pull request #634 from zoffixznet/fix-true-ver

CompUnit::DependencySpecification::Str doesn't have to add the :ver, :api, and :auth if it's True anyway
ZoffixW weee \o/ 20:27
nine ZoffixW++ # fixing things
ZoffixW nine, what other LHF are there?
nine ZoffixW: panda has quite a few. For example the "Use of uninitialized value" warning when running perl6 bootstrap.pl
ZoffixW Oh, right, I remember that. Gonna take a look
nine Or that it creates directories like '(HANDLED) Failed to open file' 20:28
ZoffixW But I though that was a feature, for the lulz! :D
nine Or that it prints the "Please make sure inst#/whatever" is in your path
like: gist.github.com/niner/a8441e1a4ee05a672eca 20:29
ZoffixW laughs
lucasb nine: can you merge github.com/tadzik/panda/pull/264 ? I think it's the easiest fix that could possibly work
ZoffixW It's a Christmas tree! :D
20:29 cygx joined
nine They actually seem to be related. Both come from panda using repo specs (the "inst#/..." strings) as path names 20:29
dalek : 6b60df7 | (Carl Masak)++ | misc/perl6advent-2015/schedule:
trade places with diakopter
cygx cf github.com/rakudo/rakudo/pull/633 and github.com/tadzik/panda/pull/264 re the '(HANDLED) Failed to open file' directories 20:30
haven't had a chance to test it yet
dalek kudo/nom: 07af2d3 | TimToady++ | src/Perl6/Actions.nqp:
wantall does no good before you've attached kids

  (also make EXPR fetch sym and O correctly for non-infixes)
20:31
nine Then it's even lower hanging fruit. Just a good testing needed :) 20:32
ZoffixW :D
hoelzro I think I found the UDP problem 20:33
ZoffixW sweet
hoelzro github.com/MoarVM/MoarVM/blob/mast...tudp.c#L40 20:34
shouldn't that be nread >= 0?
on Linux, it's valid for recvmsg() to return 0 20:36
docs.libuv.org/en/v1.x/udp.html seems consistent
geekosaur it should be valid anywhere
because presence of a packet is significant for UDP 20:37
0-length packets are entirely valid and should be reported
nine hoelzro++ # nice catch!
geekosaur (it may be difficult to fit this into a stream-based file abstraction)
hoelzro the other troubling aspect of this is the error, and how we didn't really have any data on what was really going on 20:38
20:38 Rotwang joined
Rotwang Hi 20:39
ZoffixW hey
Rotwang is perl6 close to being released?
ZoffixW Rotwang, the language, yes.
Rotwang, this Christmas
El_Che or before :)
Rotwang ;O
cool 20:40
ZoffixW indeed :)
masak not just cool, but frosty! :D
hoelzro nine: btw, I'm closing to finding the commit that unbreaks that precomp thing
Rotwang any good resources aside of advent calendar for learning perl6? 20:41
hoelzro Rotwang: perl6intro.com/ looks pretty nice 20:43
also, learnxinyminutes.com/docs/perl6/
lucasb fwiw, reading libuv's ChangeLog, you can see they fixed some UDP bugs, but idk if it's related to these bugs in moar 20:44
I mean, between libuv 1.0 (which is what moar uses) and the current 1.8.0
El_Che Rotwang: if you know perl 5, I found the regular doc (tutorials + class info) get you started pretty fast: doc.perl6.org/language.html. However I found jnthn's presentation a very good start: www.jnthn.net/papers/2015-spw-perl6-course.pdf 20:45
ZoffixW m: my $fac = [*] (1..*+0)(10000); say $fac.chars; my $now = now; $fac ~~ s/0+$//; say [$fac.chars, now - $now] 20:46
camelia rakudo-moar 95e7ac: OUTPUT«Useless use of ".." in expression "1..*+" in sink context␤- QAST::Op(call &infix:<..>) ..␤ - QAST::Want :BY<EXPR/list WANTED unwanted> :WANTED 1␤ - QAST::WVal(Int) ␤ - Ii␤ - QAST::IVal(1) ␤ - QAST::Op(call) ..␤ - QAST::Op(p6ca…»
ZoffixW ah right.. 20:47
m: my $fac = [*] 1..10000; say $fac.chars; my $now = now; $fac ~~ s/0+$//; say [$fac.chars, now - $now]
Rotwang El_Che: hoelzro: I had a short "stints" with perl6 before, so doc.perl6.org/language.html should be good enough (at least for now), thanks
camelia rakudo-moar 95e7ac: OUTPUT«35660␤[33161 2.3136354]␤»
ZoffixW Interesting... on my box, it takes 17 seconds to run, with the s/// portion taking 10 seconds 20:48
I wonder how much of that is my box being crappy and how much it is my perl6 being too old :P
Skarsnik s/// is slow as hell when I tested a bit string once x)
ZoffixW That's terrible :( 20:49
m: my $x = '0' x 1000000000; say now - INIT now; $x ~~ s/0+$//; say now - INIT now; 20:50
camelia rakudo-moar 95e7ac: OUTPUT«0.0032353␤Memory allocation failed; could not allocate 4000000000 bytes␤»
ZoffixW 0_0
m: say 4000000000 / 1024 / 1024 20:51
camelia rakudo-moar 95e7ac: OUTPUT«3814.697266␤»
Skarsnik I tried pruning html content with it. it was not a good idea x)
ZoffixW wtf 3814GB of ram?
*3.8
m: my $x = '0' x 2000000000; say now - INIT now; $x ~~ s/0+$//; say now - INIT now;
camelia rakudo-moar 07af2d: OUTPUT«repeat count > 1073741824 arbitrarily unsupported...␤ in block <unit> at /tmp/z0jHdIafVL:1␤␤»
ZoffixW m: my $x = '0' x 500000000; say now - INIT now; $x ~~ s/0+$//; say now - INIT now;
camelia rakudo-moar 07af2d: OUTPUT«0.0030152␤Memory allocation failed; could not allocate 2000000000 bytes␤»
ZoffixW m: say 500000000 / 1024 / 1024
camelia rakudo-moar 07af2d: OUTPUT«476.837158␤»
ZoffixW I see. I'm just using really big numbers from the getgo 20:52
ZoffixW & commute
20:52 ZoffixW left, kyclark_ joined
[Coke] (release) will be before Christmas is -over-. :) 20:52
Skarsnik how the hell a 1GB str make it alloc 3.5GB x) 20:53
masak [Coke]: I read that as "the release will be the best Christmas -ever-." :P
TimToady m: 1 orelse 2 orelse 3 # dunno whether I broke this or someone else did
camelia rakudo-moar 07af2d: OUTPUT«===SORRY!===␤Operation 'defor' needs 2 operands␤»
masak TimToady: want me to rakudobug it? 20:54
TimToady it's blowing up tests already, so no
masak ah.
[Coke] lucasb: there will be a compiler release called 2015.12 that will implement the language spec of v6.c
TimToady wasn't my last patch, fershure
20:55 dunkaist joined, spider-mario joined
lucasb [Coke]: ok, thanks. 20:56
21:00 Rotwang left
RabidGravy lawks, I've really gone rambling with this advent post. I may have to just stop and write a concluding paragraph and post at midnight irrespective of whether I think I've finished 21:00
stmuk Christmas is Jan 7th right? :) 21:01
TimToady shh, or everyone will go on vacation 21:02
and it's the 5th, I think 21:03
nine Skarsnik: 1GB string or a string with 1 billion characters? 21:04
El_Che stmuk: no sir. No Christmas relativism allowed. And if any -> winter solstice in less than a week :)
21:05 Guest2627 left
sno I took a HP to niederrhein.pm if anyone wants to see and play with cross compiled perl6 (luckily noone wanted today ^^), because: 21:05
root@homepilot:~# perl6 --help
Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'gen/jvm/stage2/QRegex.nqp'
in
in load_module
gfldex El_Che: but then, Any is undefined 21:06
geekosaur that's not relativism, it's just orthodoxy >.>
sno since it worked in a clean build (and that's one likely an incremental one), seems there is a problem on incremental builds 21:07
patrickz Hey, does libmoar.so need executable stack? My provider has it turned off which prevents moar to work because the lib has the exec stack bit set.
provider = remote server not administered by me. 21:08
RabidGravy gfldex, do you have the direct link to your advent post on traits to hand? 21:09
21:09 kaare_ left
gfldex perl6advent.wordpress.com/2015/12/...d-methods/ 21:09
El_Che gfldex: I saw it. My 5 minutes of internet fame :) 21:10
gfldex RabidGravy: if you have to, feel free to steal the html
El_Che gfldex: it could be put in a module maybe?
21:10 geraud joined
gfldex El_Che: if you want to, you can do that. Maybe add a trait for subs too. 21:10
RabidGravy gfldex, nah I'm just being slack, I mentioned traits in the post I'm doing and want to cite your post rather than explain further ;-) 21:11
stmuk hoelzro: I tried "nread >= 0" and the test fails even more dramatically 21:12
El_Che gfldex: thx
zengargoyle ½ of panda's «(HANDLED …» directory creation thing is Shell::Command::mkpath getting passed a .IO object which it later .split causing the .IO object to be .open causing the Failure which is then .split on \/\\ and made into a directory tree. 21:13
RabidGravy my post was supposed to be about how I ended up writing more modules to help me write the modules I wanted to make than the modules I wanted to make ;-)
it's taken on a life of its own now 21:14
stmuk wonders how high the stack of empty Stellas is :)
gfldex i'm toying with a concurrent pod2html right now and i did _not_ step on any rakudobugs so far. #perl6++
geekosaur yak shaving in p6
zengargoyle either pass a Str to mkpath or change mkpath to .Str incoming arguments...
RabidGravy stmuk, I'm on the Afligem now, self limiting 21:15
zengargoyle other ½ is the inst# in the path.
21:18 regreg left
dalek c/zero-arg-funcs: 46b1ecb | (Brock Wilcox)++ | doc/Language/5to6-perlfunc.pod:
Describe the new restrictions on some zero-argument funcs
21:19
21:21 bjz left 21:22 hankache joined 21:24 Guest0101 left
[Coke] (incremental builds) do a make install 21:25
21:33 gtodd1 left
awwaiid I've noticed a lot of "Use of uninitialized value of type Str in string context 21:34
Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in code at /home/awwaiid/tlt/projects/perl6/lang/doc/lib/Perl6/Documentable.pm:30" lately -- is this new?
gfldex awwaiid: try git checkout 3b4964b6d46e260947f54540ec2d20d64dcd7ffd 21:35
TimToady++ is operating on the open heart right niw
21:35 zakharyas left 21:36 bjz joined
awwaiid ahh, good to know. thanks gfldex 21:37
ok. maybe I shouldn't be running off of nom nom nom 21:38
hoelzro stmuk: I got failures because the promise is kept twice 21:39
because we get a packet with 26 bytes in it, then a packet with 0
nine: 59f7cb90f5d626f5e5bc0237e1ddff44e8c127eb seems to be the commit that makes or breaks that precomp issue 21:40
21:41 bjz left
nine hoelzro: well the commit at least has got something to do with module loading 21:41
hoelzro true 21:42
I bet if we backported that change to an earlier rakudo+moarvm, it would mysteriously be broken =/
[Coke] TimToady: build now warns at "src/core/CompUnit/RepositoryRegistry.pm" line 204 of 308 (... useless use of...) 21:43
nine hoelzro: I fear so :/
dalek kudo/nom: 1761df4 | TimToady++ | src/Perl6/Actions.nqp:
pay attention to resultchild

fixes: say "OH HAI" if try 0 eq 0
21:46
jnthn hoelzro: Oddness. I wonder where the extra empty packet comes from...
21:46 hankache left
TimToady [Coke]: known, benign, will fix 21:46
hoelzro I wonder if it's something to do with closing the socket? 21:47
masak TimToady: \o/
masak rebuilds
21:47 kyclark_ left
hoelzro sub run(*@args ($, *@)) { ... } # the ($, *@) constraint on @args, what's that called? 21:48
jnthn sub-signature
hoelzro thanks jnthn 21:49
that's what I thought, but I've seen it referred to as "nested signature"
masak I think it's called both
21:49 kyclark_ joined 21:50 xfix left
awwaiid gfldex: thank you, that revision is working much better for me 21:51
jnthn stmuk++ and hoelzro++ # looking into the UDP issue 21:52
21:56 snarkyboojum joined 21:58 kyclark_ left, prammer left
nine t/spec/S10-packages/precompilation.rakudo.moar really only fails in the harness, even if it's the only file in a make localtest 21:59
WTH?
TimToady jnthn: did you do anything that would cause EXPR to suddenly start EXPR parsing orelse as a list operator? before, it was forced to left (despite having :prec<list> declared), so defor would only ever get two args 22:00
m: 1 orelse 2 orelse 3
hoelzro nine: does it have to do with @*INC setup?
camelia rakudo-moar 1761df: OUTPUT«===SORRY!===␤Operation 'defor' needs 2 operands␤»
TimToady that now shows up in actions EXPR with 3 args
I don't think this one's my fault...
mind, I think it's good that EXPR is now paying attention to list assoc, but the downstream can't handle it here 22:01
22:01 Rotwang joined 22:02 Rotwang left, Rotwang joined, rindolf left
b2gills m: say sort (1,2,3).pick(*) X=> (1,2,3).pick(*) # TimToady: pairs do sort on key then on value 22:02
camelia rakudo-moar 1761df: OUTPUT«(1 => 1 1 => 2 1 => 3 2 => 1 2 => 2 2 => 3 3 => 1 3 => 2 3 => 3)␤»
timotimo Zoffix: the reason why your strings were allocating that much space is because NFG forces us to have 4 bytes per codepoint. if you have a whole lot of data, might be better off using Buf/Blob? 22:04
Rotwang which editor do you use for p6? vim only?
hoelzro uses Vim
Zoffix timotimo, I don't mind 4 bytes per codepoint :) (that code was just me playing around and not part of a program)
Skarsnik no way to have trait on the Str instead? 22:05
Rotwang many sad, I know vim is cool, but there are editors out there that can actually edit text
Skarsnik atom
I use Kate ^^
timotimo Zoffix: all right
stmuk oh I see the 2nd sendmsg has =0 at the end not 26
oh no it's resumed =26 22:06
22:06 skids left
nine # Cannot find method 'run_alt' 22:07
Skarsnik hm, I wonder if NC should be patched to allow my $p is explicity-managed;
nine That's the reason for precompilation.rakudo.moar failing ^^^
Zoffix SysInfo: Linux 3.5.0-11-generic | Dual Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz 1600.000 MHz | Mem: 1531/16550M [||||||||||] | Diskspace: 1398G Free: 68G | Bogomips: 27280.9 | Screen Res: 2560x1440 | Procs: 146 | | Up: upy 11:15,w 1d user,h loadm | eth2: In: 35.88M Out: 8.39M
timotimo, I have plenty of RAM to go around :)
22:07 dunkaist left
Skarsnik 16GB? x) 22:07
Zoffix (and yes, it took me that long to figure out which xchat command showed box info lol) 22:08
Skarsnik, yeah
nine I don't have the slightest idea how that can be connected to the test harness
[Coke] TimToady++, danke
22:08 sno left
Skarsnik I should buy extra 8GB ram to run all my vm at the same time x) 22:08
TimToady m: say (64 + *).chr;
camelia rakudo-moar 1761df: OUTPUT«WhateverCode.new␤»
TimToady looks like we fixed that one already
hoelzro is the JVM build currently working? I get an NPE during make install 22:09
timotimo Zoffix: still, i'm worried people will have trouble working with quite big files (an apache access log, for example?) and getting that 4x size increase for strings ...
[Coke] last I tried ( a week ago) it built but didn't install
hoelzro =/
[Coke] so you could run it out of ./perl6-j but not ./install/bin/perl6-j
(and then it had hanging tests, so I stopped ever building it daily) 22:10
*even
j: 3.say
camelia rakudo-jvm 6c0f93: OUTPUT«3␤»
TimToady m: say [*] (1..*+0)($_) for ^10
camelia rakudo-moar 1761df: OUTPUT«1␤1␤2␤6␤24␤120␤720␤5040␤40320␤362880␤»
TimToady and that one
nine timotimo: I really really hope people won't read such log files all into memory for processing. We do have good tools now for making line by line processing painless
[Coke] ^^ Date: Sat Dec 5 16:10:58 2015 22:11
timotimo nine: aye, we do. but people be stubborn :)
El_Che Rotwang: perl6advent.wordpress.com/2015/12/...r-support/
timotimo and they'll be convinced perl6 sucks!!!!kkk
god forbid they keep around match objects ... those hang on to the original string :S
[Coke] * gonnna *
TimToady well, it does suck. it just sucks less than most other things
stmuk hoelzro: is your 0 in a sendmsg or recvmsg? 22:12
El_Che nine: slurp is very tempting
hoelzro stmuk: neither =/
Zoffix m: say [*] (1..*+0)(1000)
camelia rakudo-moar 1761df: OUTPUT«4023872600770937735437024339230039857193748642107146325437999104299385123986290205920442084869694048004799886101971960586316668729948085589013238296699445909974245040870737599188236277271887325197795059509952761208749754624970436014182780946464962910563938…»
Zoffix TimToady++ # fixing things
nine El_Che: .lines auto-chomps
hoelzro I have a sendmsg that returns 26, a recvmsg that returns 26s, and a recvmsg that gets EINTR
El_Che nine: I rewrote my p6-work-in-progress-program a few time because I hit the memory limit of my VM 22:13
timotimo i can imagine that
dalek c: 46b1ecb | (Brock Wilcox)++ | doc/Language/5to6-perlfunc.pod:
Describe the new restrictions on some zero-argument funcs
22:14
c: 77518c1 | (Zoffix Znet)++ | doc/Language/5to6-perlfunc.pod:
Merge pull request #248 from perl6/zero-arg-funcs

Describe the new restrictions on some zero-argument funcs
El_Che importing 500 MB ldif files to make diffs and make sure the data is consistent
Rotwang atom looks good, thanks 22:15
22:15 b7j0c left
Skarsnik Rotwang, you will need to not use the default p6 syntax coloration/tools, there is a advent post about that xà 22:16
El_Che Skarsnik: I linked to that one :)
nine hoelzro: indeed! It seems to be the PERL6LIB=lib,. 22:17
22:18 molaf left
Skarsnik timotimo, could str be a lighter alternative? or it's just totaly something else 22:18
timotimo no 22:19
Str is just an object that has a str boxed inside it
both share the whole NFG thing
22:19 cygx left
nine hoelzro: PERL6LIB=lib seems to be enough to trigger it, while perl6 -Ilib doesn't, which is the reason why my prove6 alias was not enough 22:21
TimToady m: p6 'given a => 1 { when * eqv a => 2 { say "a => 2" }; when * eqv a => 1 { say "a => 1" }; default { say "what now?" } }'
camelia rakudo-moar 1761df: OUTPUT«5===SORRY!5=== Error while compiling /tmp/BSD87C49Ov␤Undeclared routine:␤ p6 used at line 1␤␤»
TimToady a => 1
hoelzro nine: interesting 22:22
TimToady m: given a => 1 { when * eqv a => 2 { say "a => 2" }; when * eqv a => 1 { say "a => 1" }; default { say "what now?" } }
camelia rakudo-moar 1761df: OUTPUT«a => 1␤»
TimToady looks like it fixed that one too
22:22 muraiki left
TimToady is glad when multiple bugs turn out to be the same bug 22:22
diakopter someday all bugs will be the same bug 22:23
nine Well, I'm gonna leave it be for today. Good night!
masak 'night, nine
'night, #perl6
Zoffix night
hoelzro night nine 22:24
night masak
22:26 lucasb left
timotimo gnite nine :) 22:26
gnite masak 22:27
22:28 snarkyboojum_ joined 22:29 espadrine joined 22:31 zengargo1le joined, zengargoyle left
dalek kudo/nom: 5bd6b98 | TimToady++ | src/Perl6/Actions.nqp:
initializers need to be wanted harder

fixes: my Int constant $default_stream_read_len = 2 * 1024;
22:33
timotimo ... "my Int constant"? i didn't know that's valid syntax?
22:33 snarkyboojum_ left
dalek blets: 57447dc | (Herbert Breunung)++ | docs/appendix- (2 files):
lines doesnt work on bare file names
22:34
Zoffix m: say "This box is {157/55.220} times faster than my other box"
camelia rakudo-moar 1761df: OUTPUT«This box is 2.843173 times faster than my other box␤»
Zoffix rakudo parse stage took just 55 seconds 22:35
timotimo "just"
Zoffix Compared to 157 seconds :)
timotimo oh lord
Zoffix That means...
timotimo it'd be nice if someone could sponsor a box for you that's another 3x faster ... 22:36
Zoffix m: say "It'll take spectest to finish in {45/2.84} minutes instead of 45"
camelia rakudo-moar 1761df: OUTPUT«It'll take spectest to finish in 15.845070 minutes instead of 45␤»
22:36 FreezerburnV joined
timotimo you've done such good work in the past 22:36
nine hoelzro: PERL6LIB=lib perl6 --ll-exception -e 'use lib "t/spec/packages"; for <C A B> { my $comp-unit = $*REPO.need(CompUnit::DependencySpecification.new(:short-name("Example::$_"))); say $comp-unit.precompiled; };'
timotimo sadly, i can't just snap my fingers and it'll happen :)
hoelzro nine: I thought you were going to bed? ;)
nine While brushing my teeth I realized that it's PERL6LIB because that gets inherited by the test program run by precompilation.t ^^^ 22:37
And indeed, that's the easiest way to reproduce
hoelzro ahhhhh
nice catch
! 22:38
22:38 lucasb joined
nine So it's confirmed: I spent the whole of yesterday's evening chasing one bug. I just didn't realize that both issues were the same :) 22:38
But at least I've now got an easy way to reproduce and with this I can sleep better :) 22:39
really off now...
Zoffix \o :)
lucasb m: my Int constant x = 'abc'; say x.perl
camelia rakudo-moar 1761df: OUTPUT«"abc"␤»
Skarsnik what
Zoffix m: my Int constant x = 'abc'; say x.WHAT 22:42
camelia rakudo-moar 1761df: OUTPUT«(Str)␤»
Skarsnik Totaly Int x)
Zoffix :D
22:42 cpage_ left
timotimo constants and typechecks aren't so good. 22:42
geekosaur yeh, I think something like that was already rakudobugged 22:43
lucasb at least it can be used as code documentation
22:43 zengargo1le is now known as zengargoyle
Zoffix hah, well, actually on this box the spectest took just 5 minutes instead of the 45 ± 0–10 minutes before I noticed the throttle one froze :0 22:44
twice as many cores and I believe they're nearly twice as speedier than my other box too :)
timotimo mhh
22:45 Zoffix left 22:46 MadcapJake joined
Skarsnik why my cpu is tagged 3.4gh and windows says 3.8ghz, it's weird x) 22:46
22:47 sno joined
ilmari modern CPUs can burst individual cores to higher than the rated speed, if the total package power and thermal budget allows 22:47
s/rated/nominal/
timotimo right 22:48
usually when only a single core is busy with something
ilmari according to powertop my 2GHz Core i7 can boost to 2.6GHz 22:51
dj_goku boost == overclock!
dalek kudo/nom: 8decbf2 | TimToady++ | src/Perl6/Actions.nqp:
correctly propagate known sink to while block in

re-speeds up:
   loop (my int $i; $i < 10000000; $i++) {}; say $i
   my int $i = 0; $i++ while $i < 10_000_000; say $i;
22:52
jnthn 'night, #perl6 22:56
TimToady jnthn: did you see the note above?
jnthn TimToady: Missed it, fighting with a stupid airline booking site :/ 22:57
jnthn looks
TimToady about orelse and defor
timotimo also missed it
jnthn TimToady: Can't think of anything I'd have done like that, no 22:58
TimToady it's like EXPR started working right...
oh well, maybe I can look at it later
jnthn TimToady: According to git log, the last thing I did with EXPR (which matches my own memory) is adding the missing non-assoc check
So ++$a++ is an error
TimToady don't really wanna change list assocs back to left assoc
jnthn That was in October 22:59
TimToady this is something since the 7th
jnthn Dec?
diakopter jnthn: did you know about jetairfly.com
TimToady maybe it's something I did, but I dunno how
okay, go to sleep now
jnthn None of my patches to Grammar.nqp in the last days are anywhere near it either 23:00
So yeah, innocent your honor ;)
Skarsnik Here goes nothing
jnthn diakopter: Well, it doesn't seem to think Prague exists, so... :P 23:01
dalek Heuristic branch merge: pushed 22 commits to DBIish by Skarsnik
jnthn 'night o/
Skarsnik Not big ass message x) 23:02
Good night, here :) 23:03
23:04 Skarsnik left 23:06 kid51 joined
TimToady obligatory nap & 23:06
23:08 jme` left 23:09 cpage_ joined
diakopter jnthn: yeah it's a small belgian airline. 23:10
but they have flights from Miami to Brussels for ... 140 euros
jnthn: hopefull you use google flights 23:11
23:15 virtualsue joined 23:17 lucasb left 23:18 _nadim left 23:19 virtualsue left, jme` joined 23:26 FROGGS left 23:27 labster left 23:29 vendethiel left 23:31 espadrine left 23:32 smls_ left
autarch who controls the perl6 subreddit? 23:34
I'd greatly appreciate whoever does changing the link colors to something more like standard - every time I look at it I have no clue which links I've followed and which I haven't 23:35
timotimo autarch: i can see if i have any way to do that 23:37
23:37 regreg joined
timotimo oh, so the problem isn't that they are too similar, it's that it isn't clear which one is which? 23:37
autarch timotimo: exactly
unfollowed links should always be blue - followed links should be something darker than unfollowed 23:38
people who think that their site requires them to change this pattern are wrong
I note that perl6.org has this backwards, followed links are _brighter_ than unfollowed :(
or has perl6.org made them the same? also sinful 23:39
yeah, they're the same :(
23:39 spider-mario left
autarch I wonder if that's a bootstrap thing 23:40
AlexDaniel autarch: I agree 23:41
AlexDaniel hates this as well. … And also has this problem on a couple of his websites (can't get my hands on it, dammit) 23:42
23:42 FreezerburnV left
timotimo gist.github.com/timo/59896e1df0b1e559979c - this is the exact stylesheet used 23:42
go nuts
RabidGravy getting near to the time that I am going to have to finish the advent post 23:45
timotimo yeah, midnight was three quarters of an hour ago :) 23:46
autarch gist.github.com/autarch/b993686fd624fc3407f0 - that's the standard browser link colors
timotimo did you find all of the :visited ones?
there's multiple ones, which suggests to me the whole .css wants to be rewritten :) 23:47
autarch gist.github.com/autarch/b993686fd624fc3407f0 - all fixed, I think
timotimo yeah, did we actually want to change the link colors in the header aka .title? 23:48
is that even what .title is about?
autarch I should make a flowchart for web design - "Are you consider changing link colors?" ... Yes -> "Don't do it" ... No -> "You are a good person"
timotimo: yes, the title class is actually for each link on the page, not for the page title 23:49
timotimo oh!
that's fair, then
saved 23:50
have a look, please
23:50 konobi left 23:51 konobi joined
RabidGravy timotimo, I think UTC is fairer 23:51
23:51 konobi is now known as Guest28147
timotimo no idea what the site things 23:53
thinks
23:53 zengargoyle left
timotimo anyway, the stats page says it's already the new day. which is good, because when each post is published on its own day, wordpress gets less confused 23:53
or confuses me less
23:53 zengargoyle joined
timotimo anyway, RabidGravy++ for advent posting! :) 23:53
autarch I just noticed that a site I maintained was using red for visited links ;) 23:54
timotimo: that's much better, thank you!
timotimo you're welcome 23:56
23:56 Psyche^_ joined 23:58 rurban left
AlexDaniel autarch: what if you don't like the default colors/styles ? 23:58
autarch AlexDaniel: I was joking somewhat - really, as long as links are some blue and visited links are darker blue or purple, it's all good 23:59
and hovering on links should always do something
23:59 lichtkind left