»ö« 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/dWY0zqIU1lList cannot be parameterizedat /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 %) | |||
Zefram_Fysh | m: sub aa (Hash[Any] @a) { }; my @a of Hash[Any]; aa(@a) | 15:25 | |
camelia | rakudo-moar b578b4: OUTPUT«Type check failed in binding @a; expected 'Positional[Hash[Any]]' but got 'Array[Hash[Any]]' in sub aa at /tmp/K0isqvhFkg:1 in block <unit> at /tmp/K0isqvhFkg:1» | ||
Zefram_Fysh | that type mismatch looks nonsensical | 15:26 | |
timotimo | m: say Array[Hash[Any]] ~~ Positional[Hash[Any]] | ||
camelia | rakudo-moar b578b4: OUTPUT«True» | ||
timotimo | yeah | ||
Zefram_Fysh | should I RT it? | 15:27 | |
timotimo | m: sub aa (Hash[Any] @a) { }; my Hash[Any] @a; aa(@a) | ||
camelia | ( no output ) | ||
timotimo | huh, interesting | ||
so just "of" being wrong? | |||
Zefram_Fysh | er, not sure | ||
the prefix is certainly behaving differently from the "of" | 15:28 | ||
timotimo | well, without using "of" it seems to work | ||
right | |||
Zefram_Fysh | m: sub aa(Int @a) { }; my Hash[Any] @a; aa(@a) | ||
camelia | rakudo-moar b578b4: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dI0qCfs3JuCalling aa(Positional[Hash[Any]]) will never work with declared signature (Int @a)at /tmp/dI0qCfs3Ju:1------> 3sub aa(Int @a) { }; my Hash[Any] @a; 7⏏5aa(@a)» | ||
Zefram_Fysh | m: sub aa(Int @a) { }; my @a of Hash[Any]; aa(@a) | 15:29 | |
camelia | rakudo-moar b578b4: OUTPUT«Type check failed in binding @a; expected 'Positional[Int]' but got 'Array[Hash[Any]]' in sub aa at /tmp/Rr20o0AT5e:1 in block <unit> at /tmp/Rr20o0AT5e:1» | ||
Zefram_Fysh | why are those so different? | ||
15:30
diana_olhovik left,
FROGGS joined
15:31
larion left
|
|||
Zefram_Fysh | m: sub aa (Hash[Any] @a) { }; my Hash[Any] @a; aa(@a) | 15:31 | |
camelia | ( no output ) | ||
15:36
frodwith joined
15:37
domidumont left
|
|||
timotimo | i may have done the check wrong after reverting | 15:39 | |
timotimo re-checks | |||
brrt | dinner & | 15:41 | |
timotimo | no, reverting that commit in question fixes things | 15:42 | |
brrt | timotimo++ for bughunting :-) | ||
timotimo | and --optimize=off (as i thought may change things) doesn't do anything | ||
i may be hunting, but ... not really progressin' | 15:43 | ||
15:46
brrt left
|
|||
FROGGS | o/ | 15:47 | |
yoleaux | 20 Sep 2015 10:14Z <jnthn> FROGGS: thanks, added those to gist.github.com/jnthn/040f4502899d39b2cbb4 | ||
[Coke] | GLoRious | 15:50 | |
ilmari | a workaround would be to do my $panda-ecosystem = Panda::Ecosystem.new(...); return $panda-ecosystem; | 15:51 | |
timotimo | yeah | 15:52 | |
i actually do have commit access to panda ... | |||
ilmari | I guess the promotion should only be inhibited at the top-level of return's arguments | ||
[Coke] | 04-phasers/pre-post.t is dying with a SORRY. | ||
ilmari | not when parsing arguments to other subs/methods within the return | ||
15:53
baest_ joined
|
|||
timotimo | i've committed something | 15:53 | |
ilmari | is there a good perl6-mode for emacs? | 15:54 | |
lizmat | [Coke]: it's been for a while :-( | 15:55 | |
15:56
abraxxa left
|
|||
[Coke] | m: sub bar(Int $i) { POST { $i < 5 } } | 15:57 | |
camelia | rakudo-moar b578b4: OUTPUT«===SORRY!===Lexical '$_' already declared» | ||
[Coke] | ^^ | ||
15:57
xinming left
15:59
xinming joined
|
|||
[Coke] | m: sub bar { POST {} } | 16:00 | |
camelia | rakudo-moar b578b4: OUTPUT«===SORRY!===Lexical '$_' already declared» | ||
[Coke] | m: POST {} | ||
camelia | rakudo-moar b578b4: OUTPUT«===SORRY!===Lexical '$_' already declared» | ||
[Coke] | whee. | ||
japhb waves from his usual morning location: in a bus in a traffic jam | 16:02 | ||
lizmat | japhb o/ | 16:03 | |
japhb | timotimo: Did you ever merge your new benchmarks into perl6-bench? | ||
timotimo | oh | ||
perhaps i didn't | |||
gimme a sec | |||
japhb | np | ||
timotimo | pushed | 16:04 | |
dalek | rl6-bench: d0b8fda | timotimo++ | microbenchmarks.pl: add a benchmark for 2d indices with unpacking |
||
japhb | lizmat++ # Lots and lots of optimization work on commonly-used paths | ||
Thanks, timotimo | |||
16:04
eternaleye left
|
|||
nine | ilmari: that's already fixed. And I've so far failed to reproduce the bug outside of panda. | 16:04 | |
timotimo | lizmat: if you're interested, i think putting the values of an xx into an array could be GLRified for big wins | 16:05 | |
lizmat | japhb: for me it's really just getting a feel of the GLR and it's possibility | ||
*ies | |||
timotimo: noted | |||
I'm eyeing Str.split and Str.comb atm | |||
dalek | ast: 9505191 | coke++ | S04-phasers/pre-post.t: Merge duplicate tickets |
16:07 | |
timotimo | ah, cool | ||
japhb | Yeah, I'm going to need to do that at some point too (really get a feel for the GLR API and its possibilities). For now most of my GLR-ification has been unbreaking places in my code that assumed different flattening behavior. | 16:08 | |
16:09
larion joined
|
|||
japhb | .ask jnthn Are the specs for GLR internal API on your short list? Or is there other stuff in front of them? | 16:09 | |
yoleaux | japhb: I'll pass your message to jnthn. | ||
16:10
Loren left
|
|||
timotimo | lizmat: did you get behind why some code was calling push-one over and over, instead of using push-exactly? | 16:11 | |
[Coke] is bisecting the POST failure.. | 16:13 | ||
16:13
perl6_newbee joined
|
|||
lizmat | timotimo: no, I didn't look into that further: | 16:14 | |
timotimo | maybe i can lend a hand | ||
lizmat | and it was "push-exactly" being called with 1 , rather than pull-one() | 16:15 | |
timotimo | ah | ||
moritz | japhb: fwiw doc.perl6.org has something on the Iterator API | 16:17 | |
japhb: as well as Seq | |||
dalek | kudo/nom: 5253ae0 | lizmat++ | src/core/Str.pm: Make Str.ords about 3x as fast Also intruduce a basic ProcessStr role for convenience in further work |
||
kudo/nom: e2482f4 | lizmat++ | src/core/Str.pm: Make Str.lines consume the ProcessStr role |
|||
moritz | doc.perl6.org/type/Iterator doc.perl6.org/type/Seq | ||
16:18
rurban left
|
|||
moritz | the GLR is about much more than that, but it helped me a lot to understand those two pieces | 16:19 | |
16:24
laouji joined
|
|||
[Coke] | moritz: I want to add something to the six docs that would keep the title visible as you scroll down, and maybe part of the header. Any complaints/suggestions? | 16:25 | |
also perhaps multicolumn the routines listing, as that gets kind of unweildy on long lists. | 16:26 | ||
moritz | [Coke]: +1 to multicolumn routine listings | ||
16:26
spider-mario joined
|
|||
moritz | [Coke]: -0.5 to sticky title; what's the use case? | 16:26 | |
[Coke] | So I know where I am when I'm 20 page-downs on a page. | 16:27 | |
and have an easy way to jump to the next thing. | |||
(without having to scroll back to top) | |||
dalek | c: e320a97 | TimToady++ | lib/Type/Seq.pod: s/.lines/.cache/ |
||
TimToady | er, .list | ||
moritz | [Coke]: I usually look at the title bar of my browser window for that | 16:28 | |
16:28
laouji left
|
|||
dalek | c: 9cf2469 | coke++ | lib/Type/PositionalBindFailover.pod: fix typos |
16:29 | |
moritz | sticky titles permantently use up screen estate, and are annoying on low-powered devices | ||
timotimo | agreed; if you put something in, make sure it's "responsive" | 16:30 | |
[Coke] | lack of navigation is a PITA for people spending a long time going to different locations on the site. | ||
I'll mock something up for that part instead of just committing, we can argue about an implementation. :) | |||
dalek | kudo/nom: 07ef13a | lizmat++ | src/core/Str.pm: Make Str.comb() about 3x as fast |
16:32 | |
japhb | moritz: Thanks for the doc pointers! | 16:33 | |
jnthn++ # Making the internal API good enough to gain us such nice performance wins | 16:35 | ||
16:47
dakkar left
16:50
spider-mario left
16:51
spider-mario joined,
larion left,
patrickz joined
16:53
laouji joined
16:54
muraiki joined
16:57
dnmfarrell joined
16:58
laouji left
|
|||
dnmfarrell | good afternoon sixers! I've written an article on setting Vim syntax highlighting for Perl 6 files. It's not yet live, but would you mind taking a look (particularly the Conclusion) and letting me know if I'm way off base here? Planning to publish it later this week. perltricks.com/article/194/2015/9/...ing-in-Vim | 16:58 | |
hoelzro | dnmfarrell: nice writeup! btw, vim-perl has a script for determining whether or a not a script looks like Perl 6: github.com/vim-perl/vim-perl/blob/...perl11.vim | 17:01 | |
dnmfarrell | nice work hoelzro ! | 17:02 | |
[Coke] | jnthn: you broke POST with a328aab7acd070b5c0a5565a5840e26706484f5a | ||
17:03
[TuxCM] joined,
diana_olhovik_ joined
|
|||
[Coke] updates RT #124961 | 17:03 | ||
lizmat | m: "aaaa".comb("aa").say # this feels wrong | ||
camelia | rakudo-moar 07ef13: OUTPUT«(aa aa aa)» | ||
[Coke] | lizmat: I recall something like :overlap somewhere. don't see it on comb, though. | 17:05 | |
m: "92p3874234".comb(/../).say | |||
camelia | rakudo-moar 07ef13: OUTPUT«(92 p3 87 42 34)» | ||
[Coke] | m: "aaaa".comb(/'aa'/).say | ||
camelia | rakudo-moar 07ef13: OUTPUT«(aa aa)» | ||
lizmat | yeah., so it's wrong | 17:06 | |
[Coke] | oh. That's probably my fault. I think I just implemented that at SPW. | ||
Want me to fix it? | |||
ah, it was the GLR-ified. | 17:07 | ||
17:08
rurban joined
|
|||
[Coke] | *then | 17:08 | |
17:08
[TuxCM] left
|
|||
[Coke] | oh, maybe I did the regex one? That was actual weeks ago, I have no idea. :) | 17:09 | |
17:09
laouji joined
|
|||
lizmat | no pb, fixing it now :-) | 17:09 | |
dalek | kudo/nom: a297b94 | lizmat++ | src/core/Str.pm: Add twigils, for consistency |
17:12 | |
17:12
kivutar left
17:14
laouji left
|
|||
[Coke] | t/spec/S17-supply/watch-path.t failed under high TEST_JOBS | 17:20 | |
timotimo | did i already report that split_string_constant has become 8.5x slower since the pre-glr release? | 17:21 | |
oh, and there's "rand" which is also slower compared to pre-glr, but that's most probably just the for-to-while optimization missing | 17:24 | ||
[Coke] | might be worth opening RTs so we don't lose those reports. | 17:25 | |
(and tagging them [GLR]) | 17:26 | ||
17:27
rurban left
17:29
perl6_newbee left
|
|||
TimToady | turns out that making List a distinguished smartmatch return value does not interfere with List.ACCEPTS, so we're just gonna leave it there | 17:39 | |
17:39
laouji joined
17:40
FROGGS left
|
|||
TimToady | however, the current semantics are wimpy, and even mis-implemented (won't work on wildcards over non-numerics), so we're gonna powerup to recursive smartmatch, and do the variable-width wildcard with ** instead of * | 17:40 | |
so * will match a single list item | |||
17:42
[TuxCM] joined
|
|||
[Coke] | m: say $\ | 17:43 | |
camelia | rakudo-moar 07ef13: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4UbBiB4LPaConfusedat /tmp/4UbBiB4LPa:1------> 3say $\7⏏5<EOL> expecting any of: postfix» | ||
17:43
laouji left
|
|||
TimToady | Using !== instead of !=== is the cause for RT #123144 btw | 17:43 | |
synbot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=123144 | ||
TimToady | so that'll fix too | ||
[Coke] | TimToady: ^^ that looks like an extra <terminator> is in the rule for $\ that might want to go away. | ||
(RT #123887) | |||
synbot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=123887 | ||
TimToady | m: say $\ ; | 17:44 | |
camelia | rakudo-moar 07ef13: OUTPUT«5===SORRY!5=== Error while compiling /tmp/PRBAlRRvqvUnsupported use of $\ variable; in Perl 6 please use the filehandle's .nl attributeat /tmp/PRBAlRRvqv:1------> 3say $\7⏏5 ;» | ||
17:44
[TuxCM] left
|
|||
TimToady | m: say $\ .WHAT | 17:44 | |
camelia | rakudo-moar 07ef13: OUTPUT«5===SORRY!5=== Error while compiling /tmp/FLP4dQ1YE9Unsupported use of $\ variable; in Perl 6 please use the filehandle's .nl attributeat /tmp/FLP4dQ1YE9:1------> 3say $\7⏏5 .WHAT» | ||
TimToady | so not parsing as unspace | ||
m: say $\ | 17:45 | ||
camelia | rakudo-moar 07ef13: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Sx6z8Pl479Unsupported use of $\ variable; in Perl 6 please use the filehandle's .nl attributeat /tmp/Sx6z8Pl479:1------> 3say $\7⏏5<EOL>» | ||
TimToady | it doesn't recognize $\ at EOF, is all | ||
[Coke] | Right. | 17:46 | |
the token for that has an explicit <terminator> which isn't included in most of the other var tokens near it, which was my guess. Figured it was LHF for you. :) | 17:47 | ||
17:54
laouji joined
17:59
laouji left
18:07
patrickz left
18:09
rurban joined,
patrickz joined,
laouji joined
18:13
laouji left
18:18
vendethiel joined
|
|||
bartolin | good evening, #perl6 | 18:21 | |
can someone give me a pointer what the syntax $var:adverb is about? | 18:22 | ||
m: my $a = 5; say $a:foobar | |||
camelia | rakudo-moar a297b9: OUTPUT«5» | ||
mst | [Coke]: if you happen to remember where, I' | 18:31 | |
[Coke]: if you happen to remember where, I'd love to look; if you don't immediately, no need to spend time looking for it now, I won't be using it any time soon, I'll ask you when I'm closer :) | 18:32 | ||
TimToady | std: my $a = 5; say $a:foobar | 18:36 | |
camelia | std 28329a7: OUTPUT«5===SORRY!5===Variable $a:foobar is not predeclared at /tmp/EXcAAgx311 line 1:------> 3my $a = 5; say 7⏏5$a:foobarCheck failedFAILED 00:00 137m» | ||
TimToady | std and rakudo have a difference of opinion there | 18:37 | |
18:38
rurban left,
laouji joined
18:39
yqt joined,
mr_ron joined
|
|||
mr_ron | m; my $a:b = 3; say $a:b | 18:40 | |
18:40
gt9k joined
|
|||
mr_ron | m: my $a:b = 3; say $a:b | 18:41 | |
camelia | rakudo-moar a297b9: OUTPUT«5===SORRY!5=== Error while compiling /tmp/H_ObjCSL9CVariable '$a' is not declaredat /tmp/H_ObjCSL9C:1------> 3my $a:b = 3; say 7⏏5$a:b» | ||
lizmat | m: "abcd".comb.say; "abcd".comb("").say # shouldn't these be the same ? | 18:42 | |
camelia | rakudo-moar a297b9: OUTPUT«(a b c d)( )» | ||
TimToady | you're confusing comb with split | 18:43 | |
18:43
laouji left
|
|||
lizmat | not really, just looking at the implementation of Str.comb :-) | 18:43 | |
TimToady | comb returns what was matched, and "" can never match a character | 18:44 | |
lizmat | I guess .comb("") combs out 5 empty strings between 4 letters above | ||
18:44
Peter_R joined
18:46
eternaleye joined
|
|||
bartolin | TimToady: interesting, thanks! I found three tests in roast which look related. (with grep -r '\$[a-z]\+:[a-z]') | 18:47 | |
m: use Test; throws-like { EVAL q[my $fo:o::b:ar = "bla"] }, X::Syntax::Confused, "var names cannot have colons in their names either" | |||
camelia | rakudo-moar a297b9: OUTPUT« 1..2 ok 1 - code dies ok 2 - right exception type (X::Syntax::Confused)ok 1 - var names cannot have colons in their names either» | ||
bartolin | m: use Test; my $three = 3; my $thing = 1 ?? $three:foo !! 2; is $three, 3, "variable and adverb in second part of ternary" | 18:48 | |
camelia | rakudo-moar a297b9: OUTPUT«ok 1 - variable and adverb in second part of ternary» | ||
bartolin | m: my $a = 1; eval-dies-ok q[$a:delete], "Cannot :delete a scalar" | ||
camelia | rakudo-moar a297b9: OUTPUT«5===SORRY!5=== Error while compiling /tmp/3VH3rAYDXqUndeclared routine: eval-dies-ok used at line 1» | ||
bartolin | m: use Test; my $a = 1; eval-dies-ok q[$a:delete], "Cannot :delete a scalar" | ||
camelia | rakudo-moar a297b9: OUTPUT«ok 1 - Cannot :delete a scalar» | ||
bartolin | at least that last one seems to pass for the wrong reason: | 18:49 | |
18:49
rurban joined
|
|||
bartolin | m: use Test; eval-dies-ok q[my $a = 1; $a:delete], "Cannot :delete a scalar" | 18:49 | |
camelia | rakudo-moar a297b9: OUTPUT«not ok 1 - Cannot :delete a scalar# Failed test 'Cannot :delete a scalar'# at /tmp/aWCh6BtzOu line 1» | ||
18:50
larion joined,
eternaleye left
|
|||
bartolin | so, roast seems to have a difference of opinion there, too :-) | 18:50 | |
lizmat | eval-dies-ok and dies-ok are evil, in my opinion, as they very easily create false positives | 18:53 | |
18:54
laouji joined,
eternaleye joined
|
|||
jnthn | [Coke]: Oops...though that is rather odd. Hmm. | 18:54 | |
yoleaux | 16:09Z <japhb> jnthn: Are the specs for GLR internal API on your short list? Or is there other stuff in front of them? | ||
bartolin | lizmat: yeah, i stumbled about this while trying to replace 'eval-dies-ok q[...]' with 'dies-ok { EVAL q[...] }' | 18:55 | |
[Coke] | mst: what? | ||
jnthn | .tell japhb Well, they're on the shortlist, yeah, but stuff figuring out the JIT issue that causes Panda explosions is higher priority... :) | 18:56 | |
yoleaux | jnthn: I'll pass your message to japhb. | ||
18:59
laouji left
|
|||
bartolin | lizmat: wrt dies-ok: if there is no typed exception, then 'dies-ok { EVAL q[...] }' is equivalent with 'throws-like q[...], Exception', isn't it? | 19:00 | |
lizmat | well, one would hope | ||
better is probably X::AdHoc | |||
Exception is too broad, that would also cover any other exception | 19:01 | ||
jnthn | Well, otoh Exception means the test will keep working if we upgrade to a typed exception. | ||
dalek | kudo/nom: af39b8d | lizmat++ | src/core/Str.pm: Make Str.comb("a")/comb("a",limit) 50x faster |
||
lizmat | jnthn: then one might as well use dies-ok | 19:02 | |
jnthn | We should prolly audit our remaining non-typed ones thrown in CORE and the compiler ahead of 6.christmas | ||
lizmat: Indeed :) | |||
vendethiel | lizmat: is there any kind of performance benefit from moving the class out of the function? | ||
or does our very smart compiler/vm takes care of this sort of stuff for me? :) | |||
lizmat | vendethiel: not sure if I follow you | 19:03 | |
vendethiel | lizmat++: move the anonymous class out of the function (in your last commit) | ||
lizmat | did I? | ||
vendethiel | I'm asking if it'd improve performance | 19:04 | |
mst | [Coke]: < [Coke]> mst: Pretty sure I have a tcl grammar lying about somewhere. | ||
jnthn | vendethiel: There was a benefit, then I fixed our code-gen, and now there ain't really :) | ||
vendethiel | nice :-) | ||
lizmat | vendethiel: I'm pretty sure I left it inside the function | ||
[Coke] | mst: github.com/partcl/partcl-nqp/blob/...Grammar.pm | ||
From my unfinshed attempt to migrate from parrot-nqp to perl6/nqp | 19:05 | ||
mst | ta | ||
[Coke] | (you can tell it's old because it's got :pirop's in it!) | ||
19:08
mr_ron left
19:10
gt9k left
|
|||
jdv79 | and its got par in the name... | 19:12 | |
[Coke] | that was historic. I wasn't going to change the name of the project at that point. | 19:13 | |
mst | [Coke]: cute, though I'm faintly confused by the true/false as a first class thing | 19:14 | |
[Coke] | oh, here: | ||
github.com/partcl/partcl-nqp/blob/...Grammar.pm | |||
mst | that's not how tcls normally work | ||
jnthn | It means we get to make partcl accelerator puns if we make it run faster :P | ||
jdv79 | let the par rot | 19:15 | |
[Coke] | that's a slightly better version that might work on Moar but probably doesn't. | ||
mst: sure, probably some cheats there. | |||
mst: note that the true/false in that grammar aren't referenced by anything else. | |||
japhb | jnthn: Gotcha, thank you | 19:16 | |
yoleaux | 18:56Z <jnthn> japhb: Well, they're on the shortlist, yeah, but stuff figuring out the JIT issue that causes Panda explosions is higher priority... :) | ||
[Coke] | they are just tokens that we can use later to verify if a string is trueish | ||
mst | ah, right, ok | ||
sorry, I just skimmed it | 19:17 | ||
... | |||
jnthn: admittedly, the mental image I got for 'panda explosions' was AWESOME | |||
jnthn: GIB! GIB! GIB! GIB! | |||
[Coke] | GIB: CGI Technologies and Solutions Inc , 37.18 up .99 | 19:18 | |
19:19
rurban left
|
|||
jnthn | :P | 19:19 | |
19:20
ab6tract joined
|
|||
jnthn | Well, it'll be tomorrow before I do that bug hunt. Full of cold and have to get up and give a talk in the morning... | 19:20 | |
19:20
rurban joined
19:22
TEttinger joined
19:23
laouji joined
19:24
darutoko left,
patrickz left,
mprelude left
19:25
patrickz joined,
brrt joined
|
|||
lizmat | jnthn: get well | 19:26 | |
brrt | yes, do that | 19:27 | |
meanwhile, i have an hypothesis | |||
but it requires some checking | |||
jnthn | lizmat: Thanks...think it's nothing more than a minor cold. | ||
Just annoying more than anything. | |||
lizmat | know the feeliing :-) | 19:28 | |
19:28
laouji left
19:30
muraiki left,
pullphinger left
19:32
rurban left
|
|||
brrt | ok, my suspicion is very strongly that with and without jit rakudo compiles panda in different ways | 19:34 | |
19:34
rurban joined
|
|||
brrt | i'm... not 100% convinced that is the case | 19:34 | |
but there are certainly suspicious things in the patch | 19:35 | ||
19:35
flussence left
|
|||
brrt | wait | 19:35 | |
actuall in the diff | |||
19:36
flussence joined
19:37
larion left
|
|||
brrt | ok, i'm wrong, that's certainly not it | 19:38 | |
(same exact MAST once compilation identifiers have been removed) | |||
19:39
laouji joined
|
|||
[Coke] wonders again if he should add panda to the daily runs. | 19:39 | ||
[Coke] guesses so. | |||
dalek | rl6-roast-data: ea1f8a4 | coke++ | / (9 files): today (automated commit) |
||
19:40
][Sno][ left
|
|||
brrt | i have one more theory up my sleeve | 19:40 | |
the extop check for the moarvm interpreter has finer granularity than the invokish check i'm currently using | 19:41 | ||
19:41
kolikov left
|
|||
nine is crossing fingers | 19:41 | ||
jnthn | brrt: Good luck! | ||
'night, #perl6 | 19:42 | ||
brrt | goodnight :-) | ||
nine | Good night! | ||
19:43
eternaleye left,
muraiki joined,
laouji left
|
|||
dalek | ast: e7bb759 | usev6++ | S03-binding/ (3 files): Replace eval-dies-ok with throws-like in S03-binding/* |
19:45 | |
ast: 69f7679 | usev6++ | S32-array/ (4 files): Replace most eval-dies-ok with throws-like in S32-array/* |
|||
kudo/nom: 2473067 | lizmat++ | src/core/Iterator.pm: Add 'bool-only' method for Iterators The idea being that if we want the boolean value of a Seq, we can call this method (which would only do a pull-one once), and thus save a *lot* of work. Making Seq.Bool call this method, only causes 1 test-file with errors: t/spec/S03-smartmatch/signature-signature.t . Not sure whether that are just lame tests or something more nefarious. Waiting for a general ++ from jnthn for the concept before digging deeper into this. |
19:48 | ||
lizmat | with this change, something like "if @a.grep{something} { " would become very fast, as it would become equivalent to @a.first(something) | 19:50 | |
well, technically @a.first(something).Bool | |||
nine | m: my $a = (1, 2).grep(*); say so $a for 1 .. 10; | 19:51 | |
camelia | rakudo-moar af39b8: OUTPUT«TrueTrueTrueTrueTrueTrueTrueTrueTrueTrue» | ||
nine | lizmat: ^^^ | ||
19:51
lichtkind joined
|
|||
nine | Right now one can call .Bool on a Seq as often as one likes | 19:52 | |
lizmat | yes, I understand | ||
19:52
telex left
|
|||
lizmat | my change would change that, indeed | 19:52 | |
but the performance benefits would be very big | 19:53 | ||
nine | And you can simply cache the result, so you only run pull-one once | ||
lizmat | also, I was considering caching the numeric / boolean value of a Seq inside the Seq | 19:54 | |
19:54
kaare_ left
|
|||
brrt | something like p6finddispatcher is basically unjittable | 19:54 | |
or, almost unjittable | |||
19:54
telex joined
|
|||
brrt | maybe it's marked that way | 19:54 | |
lizmat | so Seq.elems would become something like $!count //= self.is-laze ?? fail.new !! self.iterator.count-only | ||
then you could do something like 20 < @a.grep(something) < 40 | 19:55 | ||
and not have to actually cache the result of the grep | |||
19:55
ab6tract left,
eternaleye joined
19:56
eternaleye left
|
|||
nine | Is grep specced to actually evaluate the code for the whole list or is it allowed to shortcut that way? | 19:56 | |
lizmat | good question... | ||
19:56
larion joined
|
|||
lizmat | can't find much about it :-( | 19:59 | |
brrt | nope, that's not it | 20:00 | |
darn | |||
damnit, it's not devirt either | 20:02 | ||
ok, we may rule those two out | |||
i have no good hypotheses left | |||
colomon | nine, lizmat: grep is allowed to be lazy, no? | 20:04 | |
lizmat | well, I assumed so, but can't find anything in the spec about it | 20:05 | |
nine | If grep is not allowed to be lazy, it's current implementation is wrong anyway, isn't it? | 20:06 | |
lizmat | probably :-) | ||
dalek | ast: ad86ccc | usev6++ | S32- (4 files): Replace some eval-dies-ok with throws-like in S32-*/* |
20:07 | |
line-Perl5: 91d78b8 | (Stefan Seifert)++ | / (2 files): Inline Sub::Util::set_subname to get rid of the dependency Code of set_subname copied from Sub::Util and reduced to what we actually need for use in Inline::Perl5. This gets us rid of the only non-core dependency. Can be reverted (and changed to Sub::Util) once we drop support for perl < 5.22 Thanks to lizmat++ for the reminder. |
20:08 | ||
20:09
laouji joined
|
|||
lizmat | nine++ :-) | 20:09 | |
brrt afk without succes :-( | 20:10 | ||
20:10
brrt left
20:13
laouji left
|
|||
lizmat | have we tried this on the JVM to see if iits error (if any) could be enlightning? | 20:16 | |
20:17
patrickz left
20:20
jnthn joined
20:21
TEttinger left,
integral left
20:22
pullphinger joined,
integral joined
|
|||
TimToady | grep is supposed to be lazy | 20:23 | |
zostay | woo woo, i like the new Pair with bound values: nine++ | ||
20:24
laouji joined
|
|||
zostay | time to completely rethink KnottyPair | 20:25 | |
lizmat | TimToady: ok, so a Seq.Bool calling Iterator.bool-only would make sense | 20:28 | |
20:28
laouji left
|
|||
zostay | m: class C { method m($v) { say $v } }; sub s($v) { say $v }; C.new.m(42, :foo); s(42, :foo); | 20:28 | |
camelia | rakudo-moar 247306: OUTPUT«42Unexpected named parameter 'foo' passed in sub s at /tmp/1HDxKRrc5A:1 in block <unit> at /tmp/1HDxKRrc5A:1» | ||
zostay | is there a reason why extra named params work on methods, but not subs? | 20:29 | |
less passive aggressive: what's the reasoning for why extra named params work on methods, but not subs? | |||
20:34
patrickz joined,
vendethiel left
|
|||
mst | zostay: I don't think that's precisely true | 20:35 | |
zostay: I think what you're seeing is that the compiler can tell that the s() call is never going to work, so throws an exception then and there | |||
zostay: whereas it can't necessarily be sure that the m() is never going to work, so doesn't throw on that | 20:36 | ||
zostay: so you get a compile time exception from the s() | |||
zostay: which means it never gets as far as running the m() call and blowing that up at runtime | |||
m: class C { method m($v) { say $v } }; sub s($v) { say $v }; C.new.m(42, :foo); | |||
camelia | rakudo-moar 247306: OUTPUT«42» | ||
mst | or I'm completely wrong | ||
never mind | |||
summon somebody who knows what they're talking about :D | 20:37 | ||
20:37
felher left
|
|||
moritz | design.perl6.org/S12.html#Interface_Consistency | 20:38 | |
though I still think it's a stupid rule | 20:39 | ||
20:39
laouji joined
20:40
rindolf left
20:41
integral left,
smash joined
|
|||
hoelzro | I wish we could tell methods "if named parameter isn't touched by you or any ancestor calls, throw an exception", but that would likely come with an unacceptably huge runtime cost | 20:42 | |
20:42
jnthn left,
jnthn joined,
integral joined
|
|||
dalek | ast: 347cc36 | usev6++ | S03- (6 files): Replace some eval-dies-ok with throws-like in S03-*/* |
20:43 | |
TimToady | zostay: current policy is discussed in design.perl6.org/S12.html#Interface_Consistency | ||
20:43
laouji left
|
|||
TimToady | but yes, it would be nice to know if something is unused | 20:43 | |
lizmat | hoelzro: afaik, jnthn has some ideas about it, but I'm afraid they will wind up on the nope list for now | 20:45 | |
hoelzro | lizmat: I'm guessing it's 6.1 if anything? | ||
lizmat | I would hope so :-) | 20:46 | |
hoelzro | wouldn't changing that behavior break otherwise functional 6.0 programs? | 20:48 | |
or would it only be active if one has 'use 6.1' in scope? | |||
lizmat | I can think of scenario's where this would break code, indeed | 20:49 | |
PerlJam | hoelzro: assuming we have a way to actually make that work. | 20:52 | |
hoelzro | right | ||
PerlJam: I would love to hear jnthn's ideas on the matter, but it's not a priority atm, I understand | 20:53 | ||
20:54
xfix left
|
|||
lizmat | exploding panda is | 20:54 | |
.oo( teasing mst with the imagery ) | |||
20:57
pullphinger left
21:02
eternaleye joined
21:04
[Sno] joined
21:06
diana_olhovik_ left
21:08
rurban left,
laouji joined
21:09
vendethiel joined
21:10
skids left
|
|||
lizmat | Attempt at making rand xx N two times faster: gist.github.com/lizmat/b74af9a1d79a9f48bf8b | 21:10 | |
m: say q/Whfg nabgure Crey unpxre/.trans('a .. z' => 'n .. za .. m', 'A .. Z' => 'N .. ZA .. M') # hangs with the above change | 21:11 | ||
camelia | rakudo-moar 247306: OUTPUT«Whfg nnbgure Crey unpxre» | ||
patrickz | What program file types can I expect to find in the Perl6 ecosystem (on Windows)? Executables, Perl6, .bat, Perl?, anything else? | ||
21:13
laouji left
|
|||
lizmat | Attempt at making "foo" xx * three times faster: gist.github.com/lizmat/a24f1fb4c2d3d8aa7465 | 21:13 | |
also causes several test failures, most notably related to meta-ops: | 21:14 | ||
m: say (0,0,0,0,0,0) >>+>> (Slip(1,2,3) xx *) # non-dwimmy hyperop must have same length: left: 1 elements, right: 3 elements | |||
camelia | rakudo-moar 247306: OUTPUT«(1 2 3 1 2 3)» | ||
lizmat | leaving these patches for some other eyeballs to see, as mine are getting to tired now | 21:15 | |
*too | |||
hoelzro | .tell pmurias I added support for negative bitwise ops to node-bignum for nqp-js: github.com/justmoon/node-bignum/pull/61 | 21:17 | |
yoleaux | hoelzro: I'll pass your message to pmurias. | ||
leont | Just wondering, is there a difference between Seq.cache and Seq.list? | 21:18 | |
TimToady | yes, .list no longer caches | 21:19 | |
all .list means now is "gimme something that can act like a list" | 21:20 | ||
dalek | kudo/nom: 8394bc7 | TimToady++ | src/core/ (2 files): List.ACCEPTS now uses ~~ and treats ** as glob List.ACCEPTS was really wimpy and not pulling its weight. It now recursively matches a list with smartmatch. Since * is a valid smartmatch matching a single item, we now use ** as the globber that can match multiple items, which is more consistent with the rest of the language. And since the submatches are now approximate, we can get temporary false positives, so in that case it now backtracks more like regex patterns do. |
21:21 | |
kudo/nom: b7cabad | TimToady++ | src/core/List.pm: accidentally broke List as OKness |
|||
kudo/nom: a6b9e8d | TimToady++ | t/spectest.data: remove bogus/obsolete spectests |
|||
kudo/nom: 8cc5f80 | TimToady++ | src/core/List.pm: List.ACCEPTS now only passes Match lists as self |
|||
ast: 90ba9fc | TimToady++ | S03-smartmatch/a (2 files): test new powered-up List.ACCEPTS semantics Also fixes RT#123144 as it happens. |
|||
synbot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=123144 | ||
21:22
rangerprice joined
|
|||
leont | I see, thanks! | 21:24 | |
21:30
pmurias joined
|
|||
pmurias | hoelzro: great :) | 21:30 | |
yoleaux | 21:17Z <hoelzro> pmurias: I added support for negative bitwise ops to node-bignum for nqp-js: github.com/justmoon/node-bignum/pull/61 | ||
hoelzro | we'll see if/when they accept it =/ | 21:31 | |
pmurias | hoelzro: I'll get back to work on nqp-js tommorow | ||
hoelzro | excellent! | 21:32 | |
21:36
mullagainn left
21:43
muraiki left
21:44
vendethiel left
22:00
cognominal left
|
|||
dalek | kudo/nom: 871268e | lizmat++ | t/harness: Add randomize option The idea being that if test files are executed in random order, the ones that are twiddling their thumbs (like the S17-supply tests) will be more evenly distributed over the course of the test, and thus cause a lower wallclock time. So far, that didn't turn out the case just yet. :-( Adding the option for further testing anyway. |
22:07 | |
22:07
TEttinger joined
|
|||
lizmat | took me a while to figure out how to to @a.pick(*) again in Perl 5 :-) | 22:07 | |
22:08
espadrine left
|
|||
lizmat | and on that note, I wish #perl6 a good night | 22:08 | |
colomon | o/ | 22:10 | |
22:12
pmurias left
22:15
adu joined
22:17
dnmfarrell left
22:34
hernanGOA left
22:39
laouji joined
|
|||
TimToady | m: say (1,2,3,4,5) ~~ (**, Cool, 3, **, 5) | 22:42 | |
camelia | rakudo-moar 871268: OUTPUT«True» | ||
TimToady | m: say (1,2,3,4,5) ~~ (**, Cool, * == 5) | ||
camelia | rakudo-moar 871268: OUTPUT«True» | ||
22:43
kid51 joined
22:44
laouji left
22:47
jack_rabbit_ joined
22:50
spider-mario left
22:54
laouji joined
22:58
laouji left,
patrickz left
23:10
BenGoldberg joined
|
|||
TimToady | hmm, #?v6.0.0+ seems like a fudge line that is guaranteed to break the moment we release 6.0.0 | 23:17 | |
23:17
BenGoldberg left
23:19
avuserow joined
23:20
yqt left
23:23
laouji joined
|
|||
ShimmerFairy | TimToady: I don't think I've ever seen it used, to be honest. I don't know where it would be used, and I'm not sure how it would be more useful than, say, tags/branches on roast for particular P6 versions. | 23:26 | |
23:26
zed_ joined,
mantovani joined
|
|||
mantovani | the perl6 compiler production ready will be released this year ? | 23:27 | |
23:27
rangerprice left
23:28
laouji left
|
|||
TimToady | mantovani: that's the plan | 23:29 | |
zostay | thx TimToady | 23:30 | |
23:31
rurban joined
|
|||
ShimmerFairy | TimToady: surprisingly, every single '#?v6...' line comes from 2015 (or at least was last touched this year) O_o | 23:31 | |
TimToady | it's intended to indicate things that are post-6.0, but it's botched a bit, since 6.0.0+ includes 6.0.0 | 23:32 | |
23:33
zed_ left
|
|||
TimToady | also, our version numbers don't support v6.christmas and such | 23:33 | |
ShimmerFairy | TimToady: I think that's why some of them use arbitrary later version numbers, which seems just as bad, if not worse | ||
mantovani | does rakudo runs under AIX ? | ||
ShimmerFairy | m: say Version.new("6.christmas"); # we can have Versions like that, just not version literals :P | ||
camelia | rakudo-moar 871268: OUTPUT«v6.christmas» | ||
TimToady | mantovani: only supporting Linus, OSX, and Windows to begin with | 23:34 | |
mantovani | How can I contribute to run under AIX ? | 23:35 | |
That's importante for me. | |||
TimToady | well, it just needs someone to port it | ||
mantovani | that's a guide, I mean people already did for Windows and OSX. | 23:36 | |
maybe there is a doc | |||
23:38
BenGoldberg joined
|
|||
mantovani | s/that's a guide,/there is a guide ?/ | 23:39 | |
23:40
thundergnat joined
|
|||
mantovani | "migration to an OS considerations" | 23:40 | |
23:40
leont left
|
|||
ShimmerFairy | mantovani: if AIX can run the JVM, then you can try rakudo on jvm. The other option would be to add AIX support to MoarVM (which I don't think there's an explicit guide for at the moment, and I wouldn't know how it'd be done myself). | 23:44 | |
mantovani: if AIX can handle most things that assume posix, then platform shouldn't be an issue for MoarVM (I wouldn't think). The only concern might be what kind of processor you have, but I don't know MVM enough to say where processor-dependent things will crop up. | 23:53 | ||
23:53
laouji joined
|
|||
TimToady | well, you might not get to have a JIT if it's not x86 | 23:57 | |
ShimmerFairy | Yes, that's the one thing I saw in Moar's source, at least via filenames. You'd have to add a JIT for your platform if it's not x86 or x86_64 | 23:58 | |
23:58
laouji left
|
|||
ShimmerFairy | (you can run without a jit though, it's not a requirement for having a usable moarvm) | 23:59 |