»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by masak on 12 May 2015.
ShimmerFairy anyone else getting "Default constructor for 'Panda::Ecosystem' only takes named arguments" for latest panda (and latest rakudo) now, doing ./bootstrap.pl ? 00:02
tadzik yeah, jit bug 00:08
ShimmerFairy Can I do something about it, or am I stuck without panda for however long? :(
(also, a link to the specifics of the bug?) 00:10
tadzik: ? 00:28
raiph ShimmerFairy: irclog.perlgeek.de/perl6/2015-09-20#i_11248456 and below 00:37
ShimmerFairy thanks :) 00:38
raiph: and that 'my $ = ' workaround mentioned seems to be a usable workaround \o/ 00:40
00:47 colomon left, colomon joined 01:09 zakharyas joined 01:13 leont left 01:18 Peter_R left 01:27 aborazmeh joined, aborazmeh left, aborazmeh joined 01:29 frodwith joined 01:58 kid51 left 02:03 colomon left 02:04 colomon joined 02:32 araujo_ joined 02:33 araujo left, araujo_ left 02:34 araujo_ joined 02:46 noganex joined 02:49 noganex_ left 02:55 TEttinger joined 02:59 laouji joined 03:01 kaare_ joined 03:04 laouji left 03:24 araujo__ joined 03:25 araujo_ left 03:44 vendethiel joined 03:49 CQ2 joined 03:52 CQ left, CQ2 is now known as CQ 04:00 laouji joined 04:01 laouji left 04:03 cognominal joined 04:07 laouji joined 04:08 vendethiel left 04:12 skids left 04:14 rurban joined 04:16 laouji left 04:24 laouji joined 04:26 rmgk left, rmgk_ joined, rmgk_ is now known as rmgk 04:28 laouji left 04:56 khw left 05:25 davido_ joined 05:39 laouji joined 05:42 zacts joined 05:43 xinming left, laouji left 05:44 xinming joined 05:48 araujo__ left 05:56 [Sno] left 05:58 cognominal left 06:00 rurban left 06:04 diana_olhovik joined 06:09 laouji joined, mmapp joined, rurban joined 06:13 laouji left 06:18 mmapp left 06:20 rurban left 06:23 jack_rabbit_ joined 06:41 aborazmeh left
moritz ShimmerFairy: MVM_JIT_DISABLE=1 is also a useful workaround 06:48
ShimmerFairy ah, thanks
06:57 oetiker left 07:01 davido_ left 07:02 domidumont joined 07:07 domidumont left, domidumont joined 07:11 frodwith left 07:30 FROGGS joined 07:31 abraxxa joined 07:34 [TuxCM] joined 07:39 rindolf joined 07:51 brrt joined 07:55 salva joined 08:06 dakkar joined 08:09 laouji joined, FROGGS left 08:12 darutoko joined 08:13 Alina-malina left, laouji left 08:20 araujo joined, araujo left, araujo joined 08:22 Alina-malina joined 08:33 TEttinger left 08:43 [Sno] joined 08:47 AlexDaniel joined 08:50 rindolf left 08:51 grondilu joined 08:53 isacloud left, preyalone left 08:56 mprelude joined 09:06 cschwenz joined, cschwenz left 09:07 isacloud joined 09:12 preyalone joined 09:16 zakharyas left 09:24 laouji joined 09:28 laouji left 09:30 cognominal joined, cognominal left 09:35 larion joined 09:49 espadrine joined 09:54 laouji joined 09:56 brrt left 09:58 laouji left 10:04 andreoss joined 10:06 leont joined 10:13 Guest34943 is now known as felher, andreoss left 10:25 abraxxa left 10:26 abraxxa joined 10:27 cognominal joined
lizmat drops a pin 10:47
nine sssht! 10:49
masak combs the sound waves back to placidity 10:53
11:01 telex left 11:02 telex joined
DrForr drops a pin 180 degrees out of phase. 11:02
11:03 rindolf joined
masak I hear you can drop pins to approximate the value of pi 11:03
basically a simple Monte Carlo simulation
DrForr Yep, a wood strip floor and pins exactly as wide as the strip, I think 4/\pi pins will cross the boundary on average. French mathematician, I think. 11:05
masak I approve of anyone who assumes LaTeX notation for explaining things 11:06
moritz or simply draw a quarter circle, and drop grain or something
masak: did you mean \LaTeX notation? :-)
or was that \latex (to produce the logo)?
moritz is rusty
DrForr looks around for a bell, eventually we'll need it ;) 11:07
moritz DrForr: you mean for ee'Tex (ding) ?
DrForr Got it in one. Biobreak, back in a while.
masak .oO( ìTex )
11:10 Ven joined 11:12 ][Sno][ joined 11:13 rurban joined 11:15 [Sno] left 11:24 woolfy joined
DrForr waves at woolfy 11:24
woolfy waves back to DrForr (continent-wide wave) 11:25
Ehm...
German Perl Workshop will be on 9-12 March 2012: act.yapc.eu/gpw2016/
german Perl Workshop would like to have a lot of Perl 6 talks, since it will be shortly after the launch of Perl 6.0.0.
DrForr Well, I should be strong enough to make it by then... :) 11:26
pink_mist 2012? 0_o
moritz 2016 :-)
pink_mist that makes more sense :P 11:27
moritz woolfy: also, I'll be one of the folks deciding which talks will be accepted :-)
DrForr o/' Goin' back in time... o/'
woolfy So if you live in the neighbourhood (Germany, Czech republic, Poland, Sweden, Netherlands, France) and you are a bit or more involved in Perl 6, register, and submit a proposal to talk: act.yapc.eu/gpw2016/newtalk
2016. 2016. 2016. Raah...
moritz: it was Steffen Winkler who asked on the Perl 6 page on Facebook ( www.facebook.com/groups/1595443877388632/ ) 11:28
DrForr Have they decided on a location in Germany?
woolfy Nuremberg
Lovely city.
moritz woolfy: ah yes, one of the more active organizers 11:29
moritz guesses he should get his stuff together and become more active himself
woolfy moritz: I assume blindly that you will be impartial and make a rightful selection of Perl 5 and Perl 6 and other (maybe not-Perl-related) talks. No favoritism for Perl 6. :-) 11:30
CQ maybe a 6:5 ratio of the talks? ; )
woolfy :-) 11:31
moritz woolfy: assumptions are dangerous... :-)
woolfy certainly when made blindly...
And bny the way, the Perl 6 page on Facebook is starting to be interesting. Emil Elshishini, for example, asked a question on installing Perl 6 Rakudo via rakudobrew and had some problems, and DrForr reacted by pointing him here. 11:32
And itz reacted substantively. 11:33
moritz makes me almost sorry that I'm not active on Facebook 11:34
DrForr I'm still somewhat in pain and couldn't quite follow what he was asking. And I thought that more traffic here was a good thing.
timotimo i'd appreciate it if you could follow the messages on that facebook group without being logged in >_> 11:36
_itz timotimo: I think you can. I turned off various things on FB (inc. messenger) and get email alerts 11:38
DrForr moritz: It shouldn't. The other perl groups are a cesspool, basically Indian offshored workers either trying to get interview questions asked or asking for people to write their code for them.
_itz I'm not 100% convinced its actually worth it anyway :)
timotimo _itz: i don't have a facebook account at all
_itz timotimo: you aren't missing much 11:39
11:39 kid51 joined 11:40 kolikov joined
timotimo oh, actually, "i don't have a facebook account" is most probably wrong 11:40
"i didn't apply for one" is more accurate 11:41
DrForr I didn't either, I just got one one day. Under my real name :(
timotimo i don't think it makes a difference if you use your real name or not; facebook has such a massive collection of data that the graph just gives it away anyway
DrForr Oh, definitely. 11:42
kolikov m: sub f( Array :@x ) { }; f( x => [] );
camelia rakudo-moar c189c7: OUTPUT«Type check failed in binding @x; expected 'Positional[Array]' but got 'Array'␤ in sub f at /tmp/YKqfNG4_W7:1␤ in block <unit> at /tmp/YKqfNG4_W7:1␤␤»
kolikov m: sub f( Array :$x ) { }; f( x => [] );
camelia ( no output )
moritz m: sub f(:@x) { }; f x => []; 11:43
camelia ( no output )
timotimo kolikov: the @ sigil already declares "you want a listy thing", that's why it says "Positional"
so writing "Array @foo" is actually like "an array of arrays"
just like "Int @foo" is "an array declared to hold Int objects"
kolikov Ha ... I see thanks :) 11:44
cognominal I don't have a FB account because I thought they were pure evil; but they gave us react, so they are only mostly evil. Probably pure evil does not exist, we just want to. 11:45
Ven ohai, #perl6!
Ven hugs woolfy++
timotimo one common pitfall is that if you declare in your signature "Int @foo", you'll have to actually pass an array *declared* to hold Int objects; just putting in an array that has only Int in them is not enough
Zefram_Fysh oh, that reminds me: S02 shows things like "my Array of Int @a" to get an array of integers, whereas in Rakudo the "Array of" is implicit. S02 should be changed to match Rakudo
kolikov @ timotimo so ... sub f( Int :@x ) { }; f( x => [1] ); would throw an error ... 11:47
sub f( Int :@x ) { }; f( x => [1] );
m: sub f( Int :@x ) { }; f( x => [1] );
camelia rakudo-moar c189c7: OUTPUT«Type check failed in binding @x; expected 'Positional[Int]' but got 'Array'␤ in sub f at /tmp/vLWa1wkt__:1␤ in block <unit> at /tmp/vLWa1wkt__:1␤␤»
timotimo yeah
moritz kolikov: correct
timotimo m: sub f( Int :@x ) { }; f( x => Array[Int].new(1) );
camelia ( no output )
timotimo m: sub f( Int :@x ) { }; my Int @thingie = 1, 2, 3; f( x => @thingie );
camelia ( no output )
DrForr woolfy: Do you think pointing people to #perl6 is the right thing to do?
pink_mist can you make the Int :@x coersive? 11:48
timotimo pink_mist: we don't have a solution for that yet
pink_mist ah, darn
woolfy hugz Ven
11:49 dalek left
woolfy DrForr: don't know yet. I can just hope that some people come here and do good things. 11:49
Zefram_Fysh you can't coerce because the array is writable
timotimo aye, and the coerced array would just be a copy
Zefram_Fysh interesting variant here: 11:50
11:50 dalek joined, ChanServ sets mode: +v dalek
Zefram_Fysh m: sub f(Numeric @x) { @x[0] = 1/3; }; my Int @a; f(@a); say @a[0] 11:50
camelia rakudo-moar c189c7: OUTPUT«Type check failed in assignment to '@a'; expected 'Int' but got 'Rat'␤ in sub f at /tmp/O4Of0KFWGT:1␤ in block <unit> at /tmp/O4Of0KFWGT:1␤␤»
timotimo or you'd replace the thing passed-in, which only works if it's not literal (and it'll confuse the F out of people)
DrForr Well, as we get closer to release more people will come in, may as well start boiling the proverbial frog :)
Zefram_Fysh Array[Int] satisfies the Positional[Numeric] constraint, but the Int constraint is enforced on write
kolikov timotimo : I'll take Array[].new() then ... Thanks ! 11:51
moritz Zefram_Fysh: we'd need covariant and contravariant typing to avoid that
Zefram_Fysh yes
moritz and I don't think anybody wants that :-) 11:52
Zefram_Fysh it is somewhat strange that after the (Numeric @x) declaration you can't write an arbitrary Numeric into the array. I think I'd sometimes want to get that sort of guarantee 11:53
moritz the Perl 6 type system isn't strong enough to give that guarantuee, ever 11:54
and I don't think it can be made that way, while still staying naturally usable in a dynamic language
11:54 kid51 left 11:55 SteffenW joined
dalek kudo/nom: c26954b | lizmat++ | src/core/Str.pm:
GLRify Str.lines properly

for $str.lines now 40% faster, and $str.lines.elems 14x as fast.
11:56
Zefram_Fysh the Positional[Numeric] parameter type could be taken to require an exact match on Numeric for writable Positional types, and that would be useful
moritz no 11:57
Zefram_Fysh no?
moritz in your exmaple, Positional[Any] would also allow the write
so it'd be too strict
Zefram_Fysh but Positional[Any] would lack the read guarantee
for read/write types, you need an exact match on the element type
moritz but the rabbit hole goes much deeper
you can't require an exact match for Positional[Numeric]; Array[Numeric] isn't an exact match 11:58
so you have to special-case the first part of the type check
Zefram_Fysh I only said you'd need an exact match on the element type
and only for read/write Positional classes, such as Array
for read-only container classes, a covariant match of element type is appropriate 11:59
moritz but that gives trouble for nesting
Zefram_Fysh and in theory, a write-only container class would want a contravariant match of element type
moritz sub f(Positional[Numeric] @x) { g(@x[0]) }; sub g (Numeric @x) { g[0] = 1/3 } 12:00
Zefram_Fysh the nesting works just fine. same rules apply at each level, based on the kind of match required by the level above
moritz so you don't want to special-case based on nesting, but on whether it's a container vs. element type?
Zefram_Fysh huh?
container vs element type is not an inherent feature of the classes, it's about the relationship between them 12:01
moritz in sub f(Positional[Numeric] @x)
the expected type is Positional[Positional[Numeric]]
Zefram_Fysh yes
moritz would you allow passing an Array[Array[Numeric]] to it? 12:02
Zefram_Fysh no
moritz then it's pretty useless
because you can't instantiate Positional
Zefram_Fysh an Array[] argument would require exact match of the element type, and Array[Numeric] isn't the same as Positional[Numeric]
Positional[Positional[Numeric]] would accept a read-only container at top level with Array[Numeric] elements 12:03
12:03 pullphinger joined
SteffenW act.yapc.eu/gpw2016/ German Perl Workshop, Wed 2016-03-09, registration is open, think about your talks, 3 conference days + 1 hackathron day + partnerprogramm 12:03
Zefram_Fysh does List work as a read-only Positional? 12:04
moritz SteffenW: woolfy already came in here :-)
m: say List ~~ Positional
camelia rakudo-moar c189c7: OUTPUT«True␤»
Zefram_Fysh m: say List[Int].new(1,2) 12:05
camelia rakudo-moar c189c7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dWY0zqIU1l␤List cannot be parameterized␤at /tmp/dWY0zqIU1l:1␤------> 3say List[Int]7⏏5.new(1,2)␤»
Zefram_Fysh I think you'd want a List that actually contains only T values to count as a Positional[T], despite the lack of explicit parameterisation of List for construction 12:07
moritz Zefram_Fysh: that would be nice, but also confusing, because Lists are lazy 12:08
Zefram_Fysh oh, right
is there an eager equivalent? 12:09
moritz no
Zefram_Fysh that's troublesome, then
moritz well, there's array (with lower case), but that's already natively typed
Zefram_Fysh a lack of immutable structured types would certainly impact the practicality of the theoretically-correct type system 12:10
moritz any theoretician will facepalm when confronted with Perl 6's type system 12:13
timotimo aye, sadly it's no good for those kinds of people
it's still loads better than what perl5 offers, mind you :P
Zefram_Fysh with List being lazy, maybe it *should* be explicitly parameterisable 12:15
[TuxCM] when will panda be fixed?
moritz when will MoarVM be fixed? 12:19
12:21 luiz_lha joined
pink_mist . o O ( panda fixed? a neutered panda? ) 12:21
12:21 luiz_lha is now known as Guest81364
timotimo was there ever a change to moarvm to make the "return with nameds" thing work? 12:22
moritz timotimo: seems not; which is why panda is still broken
timotimo but then why does disabling the jit fix the problem?
i haven't looked at gen'd code yet, but the jit isn't really treating return ops differently from the interpreter 12:23
12:23 Guest81364 is now known as luiz_lha
jnthn afternoon, #perl6 12:23
timotimo the only thing that'd make sense to me would be that the spesh'd versions of the return ops don't work perfectly, but return ops don't actually get spesh'd *and* then keeping spesh on should also show the problem
moritz timotimo: I have no idea
DrForr Afternoon. 12:24
12:24 Ven left
timotimo me neither :| 12:29
i should look at the generated code to figure out what's wrong
dalek kudo-star-daily: e1b343f | coke++ | log/ (8 files):
today (automated commit)
12:32
rl6-roast-data: 15e0990 | coke++ | / (9 files):
today (automated commit)
12:33 aborazmeh joined, aborazmeh left, aborazmeh joined
nine woolfy: are there still talk slots available for FOSDEM? 12:35
timotimo wait ... 12:36
the problem arises from having "return Foo::Bar.new(named parameters here)" vs "Foo::Bar.new(named parameters here)" ?!?
jnthn timotimo: Did you manage to recreate it? 12:37
timotimo no, just digging through the irclog so far 12:38
jnthn ah
[Coke] mst: Pretty sure I have a tcl grammar lying about somewhere.
timotimo irclog.perlgeek.de/perl6/2015-09-19#i_11245158 - this is a relevant section
DrForr There's a TCL ANTLR grammar, maybe use my converter? 12:42
lizmat nine: could it be that Inline::Perl5 has not be de-EnumMapped ? 12:47
nine lizmat: oh indeed! 12:48
dalek line-Perl5: fd6413e | (Stefan Seifert)++ | lib/Inline/Perl5.pm6:
EnumMap is now Map

Thanks to lizmat++ for the reminder!
12:50
lizmat nine: Can't locate Sub/Name.pm in @INC # didn't know Sub::Name is now a requirement ?
[TuxCM]: export MVM_JIT_DISABLE=1 will for now allow you to build panda 12:51
Ulti nine if I wanted to fix my code ahead of lots of hash/map changes should I work against your GMR branch? or is that more speculative than spec at the moment? 12:52
nine timotimo: maybe github.com/rakudo/rakudo/commit/0d40e0080 gives a hint what could go wrong?
Ulti: it's already merged
Ulti nine ahh ok cool
I will start fixing my BioInfo package then 12:53
its a lot more dead than I had hoped for ;___;
12:53 cognominal left
nine lizmat: yes Sub::Name is a requirement now. I seem to have thought that it's in CORE. May degrade it to a runtime requirement, since it's only required if you use v6::inline; 12:53
timotimo nine: are we sure that the $*IN_RETURN gets cleared properly for things?
Ulti I suspect mostly a generous sprinkle of .flat or .list will bring it back to life
nine timotimo: do not assume that. If anything I cargo culted and no one has cought me yet. 12:54
12:54 brrt joined
timotimo hah 12:54
lizmat nine: This is perl 5, version 20, subversion 0 (v5.20.0) built for darwin-2level is on OS X 10.10.5 and does not have Sub::Name
woolfy nine: there's no official call for proposals for FOSDEM yet. But... 12:55
lizmat checks for updates
timotimo AFK for a bit
ilmari nine: Sub::Name is not in core. Sub::Util is as of 5.22
Sub::Util includes the functionality from both Sub::Name and Sub::Identify
woolfy nine: FOSDEM no news yet: fosdem.org/2016/news/
[Coke] sees that PerlJam closed a ticket assigned to Coke without checking with coke, and coke didn't get an email. 12:56
nine woolfy: with so much time still available, I'm not sure what exactly I'm gonna be able to talk about. However I do know that I would want to give a talk again :) 12:57
ilmari: oh, nice. So replacing Sub::Name::subname by Sub::Util::set_subname would already help many people.
[Coke] woolfy: there's a perl 6 page on facebook?
Ulti there's also a Perl 6 sub reddit that no one goes to :S 12:58
or at least no one comments on
DrForr Courtesy yours truly. There wasn't much p6 traffic, I thought it was because everyone was fixated on p5.
[Coke] Ulti: if I reddited, I'd use it. :) 12:59
brrt timotimo: broken stuff?
DrForr Lots of modules in the ecosystem, but very few people talking about them. 13:00
brrt aye, but jit bug?
nine lizmat: demoting to a runtime dependency won't help much if the tests still fail....hmm... 13:01
Ulti [Coke] I just use it for Perl news, other than twitter its about the only place with up to date info 13:02
lizmat if I recall correctly, Sub::Name is a minimal amount of XS
nine: maybe it would be handier to just put the XS into the Inline::Perl5 logic ?
woolfy Slides of Perl 6 talk by garu during YAPC::Brasil. In Portuguese. www.slideshare.net/garux/introduo-ao-perl-6
brrt .ask timotimo is this a new jit bug or the old one? 13:03
yoleaux brrt: I'll pass your message to timotimo.
nine lizmat: that's my current line of thinking. It's not that much code.
woolfy nine: you are welcome to send a talk proposal to me. Or just tell me you want to talk in the Perl-devroom, and I will put you on the list to contact next month, to ask you for a title, summary, and your "bio". 13:04
[Coke]: Perl 6 page on Facebook: indeed. www.facebook.com/groups/1595443877388632/ 13:05
DrForr He's already signed up :)
nine woolfy: yes I do want to talk in the Perl-devroom and please put me on the list :) I will probably talk about some Perl 5 <-> Perl 6 stuff :)
DrForr Sigh. Throw my name on there as well, I'll try a different approach :) 13:06
13:06 larion left
woolfy nine: will do. by the way, I am utterly surprised that you want to talk about Perl 5 <-> Perl 6 stuff. ;-) 13:06
nine brrt: the bug faced with merging the gmr branch which adds a Pair.new($key, $value) candidate. So far I've failed to reproduce it outside of panda. 13:07
brrt gmr branch?
woolfy DrForr: throw your name on the list of speakers for Perl-devroom at FOSDEM? Or were you not talking to me?
DrForr Yes, that.
nine woolfy: yeah, who'd have thought? ;)
woolfy DrForr: done 13:08
nine: me me me me me! 13:09
DrForr I missed a chance to promote ::ToPerl6 at YAPC, FOSDEM will have to do :)
woolfy DrForr: I can't guarantee we will get a devroom. I can't even apply for one yet, since they did not start the process yet. 13:10
DrForr 'sokay, I can see the writing on the wall.
nine brrt: basically postcircumfix.com/2015-08-29-untang...-hierarchy
brrt oh, yes
i read that, looked good 13:11
hmmm
nine brrt: thought so, too, so I implemented it :)
brrt ok, so with that, we have a bug in panda
somehwere
brrt realizes he's some weeks behind his rakudo 13:12
13:13 Ven joined
nine brrt: return 1, :foo(2); needed fixing because foo got promoted to a named argument, despite being just a Pair constructor. My first attempt caused foo in return Foo.new(:foo(1)) to no longer be a named argument, but I fixed that. It seems like the JIT needs some fix for that as well. 13:13
[TuxCM] OH WOW 13:14
test 50000 34.591 34.512
test-t 50000 35.531 35.451
brrt so, return 1, :foo(2) breaks evilly in the JIT?
moritz nine: there's nothing wrong with return 1, :foo(2) having :foo as a named argument, as long as &return doesn't discard named params 13:15
13:15 aborazmeh left
nine moritz: but &return does 13:16
moritz nine: then &return needs fixing, not the grammar or actions
13:17 andreoss joined
nine moritz: is return a function or is it just implemented as one? 13:17
moritz src/core/control.pm:my &return := -> | { 13:18
nine: it's a block, actually
not a function
13:19 aborazmeh joined, aborazmeh left, aborazmeh joined
nine That's how it's implemented. I'm wondering about the design. 13:20
lizmat [TuxCM]: better ? 13:22
fwiw, I think it should be a sub :-) 13:23
but I seem to recall, that breaks things at least on the JVM
nine brrt: no, this: github.com/tadzik/panda/blob/maste...App.pm#L39
13:23 cognominal joined
brrt hmm, ok 13:24
oh, i have a hypothesis
nine brrt: the error message indicates, that those arguments to the constructor are no longer promoted to named ones.
brrt oh, i no longer have a hypothesis
nine :(
brrt: github.com/rakudo/rakudo/commit/0d40e0080 was my fix for return 1, :a(2); 13:25
timotimo brrt: it actually seems like a function that takes named arguments breaks when a "return" is put in front of it
yoleaux 13:03Z <brrt> timotimo: is this a new jit bug or the old one?
timotimo but only if the jit is turned on
which ... wtf?
brrt ok, let's try that out 13:26
this in all rakudo's or just the gmr rakudo
timotimo there's no "gmr rakudo"
gmr has been merged into nom already
brrt oh
ok :-) 13:27
13:31 cschwenz joined, cschwenz left 13:35 Ven left
[TuxCM] lizmat, yes 13:36
first time ever under 36 13:37
lizmat I guess it's my .lines changes...
13:37 AlexDani` joined
lizmat hmmm... can't be 13:37
[TuxCM]: no idea what caused that improvement 13:38
[TuxCM] and my stuff has no .lines calls anywhere :)
lizmat yeah :-)
jnthn I thought the outer loop of test-t uses lines() ?
13:38 AlexDaniel left
lizmat ah, could be :-) 13:39
13:40 larion joined
nine Yes, it does. 13:40
13:42 Ven joined 13:43 SteffenW left, mullagainn joined
[Coke] RT: 1,025 ; GLR - 3; testneeded - 9; Christmas - 108 13:48
[TuxCM] else { # fastest, but unsafe 13:49
for lines () :eager {
jnthn [Coke]: How'd you get the 108? :)
[TuxCM] that one?
timotimo you can kick out the :eager fwiw
jnthn [Coke]: I'm guessing you counted dependencies of RT #123766?
[Coke] jnthn: the hard way.
jnthn Damn, I thought you had a clever way. But when I counted yesterday I got 118...hmm :) 13:50
[Coke] right, looked at linked tickets,copied them into vi, checked the #lines.
jnthn Hm
OK :)
[Coke] double checks..
same.
[Coke] chuckles at rt.perl.org/Ticket/Graphs/index.html?id=123766 13:51
timotimo blergh %) 13:52
brrt oh, lord, that is indeed difficult to reproduce 13:53
nine [Coke]: I cannot look at that graph. Neither with the anonymous user, nor with my own. 13:54
13:54 laouji joined, AlexDani` is now known as AlexDaniel
lizmat [TuxCM]: forget about :eager, just use .lines: it's safe now 13:54
nine and fast :) 13:55
[TuxCM] test 50000 34.742 34.663
test-t 50000 35.831 35.752
without :eager
[Coke] sees a ticket mail, ponders replying to it as a DIHWIDT, and sees that jnthn++ has already fixed it, added tests, and closed it. 13:56
13:57 aborazmeh left 13:58 laouji left 13:59 rurban left 14:02 hernanGOA joined 14:04 Ven left, skids joined
andreoss could list comprehension be lazy? 14:04
m: my @f = ($_ if $_ %% 2 for 1..*); say @f[^10]; 14:05
camelia rakudo-moar c26954: OUTPUT«(timeout)»
timotimo hmm 14:06
i was hoping i could get the extra node info from SpecialArg as well as Op by using "~ callsame", but no joy :(
skids Array assignment is eager, no?
leont But binding isn't
andreoss m: my @f = 1..*; say @f[^10] 14:07
camelia rakudo-moar c26954: OUTPUT«(1 2 3 4 5 6 7 8 9 10)␤»
leont my @f := (1..*).grep(* %% 2).list; say @f[^10];
andreoss m: my @f = (1..*).grep(* %% 3); say @f[^10]; 14:08
camelia rakudo-moar c26954: OUTPUT«(3 6 9 12 15 18 21 24 27 30)␤»
andreoss it should detect infinite structures and make array lazy explicitly 14:10
but should it work with python-styled list comprehension? 14:11
colomon panda’s broken for nom?
timotimo there's a simple fix available, IIUC 14:12
14:12 brrt left
timotimo we could "just" turn the offending line into two lines 14:12
14:12 Sqirrel_ left 14:16 Ven joined, khw joined
skids Ah, It's for. IIRC for was to stay eager at one point due to usual expectations from procedural languages. 14:20
14:23 aiacob joined 14:24 laouji joined 14:29 laouji left 14:33 Loren joined
Loren evening #perl6 . 14:33
hoelzro o/ #perl6 14:34
[Coke] hoelzro, Loren: ohai. 14:36
hoelzro o/ [Coke]
Loren (Coke, hoelzro).map(&sayhi) 14:37
Is it right? 14:38
14:38 hernanGOA left
hoelzro looks good to me =) 14:38
14:39 hernanGOA joined
Loren haha. 14:41
dalek kudo/nom: b578b41 | lizmat++ | src/core/IO/Handle.pm:
Only one consumer, we don't need a role

This makes IO.words again 20-30% faster, as we're no longer bothered by RT #126120, so we can use a native int for the position.
14:45
14:46 synbot6 joined, kivutar joined
andreoss m: sub say-hi { "hi, $^x!" }; qw/coke hoelzro/».&say-hi 14:49
camelia ( no output )
14:49 Sqirrel joined
andreoss m: sub say-hi { "hi, $^x!".say }; qw/coke hoelzro/».&say-hi 14:49
camelia rakudo-moar c26954: OUTPUT«hi, coke!␤hi, hoelzro!␤»
14:50 brrt joined, Loren left 14:51 jack_rabbit_ left, Loren joined 14:53 andreoss left 14:54 xfix joined 14:55 aindilis left 14:56 aindilis joined 14:57 rurban joined
brrt you know what i find confusing? i wouldn't expect make-default-ecosystem to run often at all 14:58
nine I also have not been able to reproduce by doing something like sub foo() { return Foo.new(:bar(1)) }; foo() for 1 .. 10000; 14:59
brrt that is almost, to the letter, my exact test :-) 15:00
nine woah :) 15:01
timotimo brrt: you are right, that confused me quite a bit, too 15:03
nine Are we sure the JIT is at fault here?
15:04 aiacob left, oZ_ joined, oZ_ is now known as oZ]
timotimo well, turning the jit off is the one thing that fixes it ... for no good reason at all IMO 15:04
15:04 oZ] left
nine That's the only (albeit strong) indicator pointing in the JIT's direction. OTOH I'd assume that the JIT is far too low level for a bug like this. Am I wrong? 15:05
15:05 domidumont left
timotimo don't think you're wrong 15:05
but what do i know
15:06 domidumont joined
brrt hmmm 15:06
i could imagine a bug in handling named arguments, but i'm not seeing good evidence of it
timotimo did we already check reverting just the "return 1, :a(1)" commit fixes this 15:08
15:15 [TuxCM] left, Ven left
moritz timotimo: not that I'm aware of 15:17
timotimo i shall have a go 15:18
brrt interesting
15:19 DrForr left, DrForr joined
timotimo yeah, that fixes it 15:20
i was assuming for a little bit that the constructor to ecosystem is being called with the named parameters as Pair objects instead
but the QAST doesn't look like that
oh, look at that 15:21
er, no, the bug isn't going to suddenly show itself again unless i undo the revert %)