Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2016-09-19

| Channels | #perl6-dev index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:01 Zoffix s: &postcircumfix:<[ ]>, \(:delete)
00:01 SourceBaby Zoffix, Something's wrong: ␤ERR: Could not find candidate that can do \(:delete)␤  in sub sourcery at /home/zoffix/services/lib/CoreHackers-Sourcery/lib/CoreHackers/Sourcery.pm6 (CoreHackers::Sourcery) line 37␤  in block <unit> at -e line 6␤␤
00:01 * Zoffix wonders how adverb stuff is implemented
00:04 Zoffix s: &postcircumfix:<[ ]>, \([], 3, :delete)
00:04 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/641ee1e/src/core/array_slice.pm#L131
00:04 Zoffix Ah :) doh
00:16 Zoffix Pretty dense NQP code. I wonder if we're checking the number of elements twice, when just once is fine. Once here: https://github.com/rakudo/rakudo/blob/641ee1e/src/core/SLICE.pm#L32 and other one here: https://github.com/rakudo/rakudo/blob/641ee1e/src/core/array_slice.pm#L173
00:17 * Zoffix &
01:09 Zoffix m: my @a = ^3; @a[1]:delete;  "ac" ~~ /(.)(.)?(.)/; say ($0, $1, $2), $/.list, @a
01:09 camelia rakudo-moar 641ee1: OUTPUT«(「a」 Nil 「c」)(「a」 (Mu) 「c」)[0 (Any) 2]␤»
01:10 Zoffix ¯\_(ツ)_/¯
01:24 AlexDaniel what's up with this tag? https://github.com/rakudo/rakudo/releases/tag/47e455e426cbf2dd48a2be96322c42b704d693ee
01:25 AlexDaniel that's a weird name for a tag, isn't it?
01:32 MasterDuke joined #perl6-dev
01:34 geekosaur suspect they just forgot the tagname
01:34 geekosaur so it tagged the then current commit with the hash of the intended commit to be tagged, or something
01:35 geekosaur (which might accidentally have done the right thing)
01:48 ilbot3 joined #perl6-dev
01:48 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
01:53 FROGGS__ joined #perl6-dev
02:10 MasterDuke joined #perl6-dev
02:58 MasterDuke joined #perl6-dev
04:40 dalek joined #perl6-dev
05:54 [Tux] This is Rakudo version 2016.09-12-g641ee1e built on MoarVM version 2016.09
05:54 [Tux] csv-ip5xs        9.631
05:54 [Tux] test            16.507
05:54 [Tux] test-t           7.488
05:54 [Tux] csv-parser      18.016
06:44 nine [Tux]: I don't get this. I get 6.182s for test-t and 4.930s for csv-ip5xs. Before this weekend's changes the best I got out of csv-ip5xs was 8.239s. How can this be that a 40 % improvement doesn't show up on your end?
06:45 [Tux] no idea.
06:45 * [Tux] in pain: workstation at work seams to have died
06:49 nine ouch
06:51 nine Could someone else try this? git clone https://github.com/Tux/CSV.git && cd CSV && for i in $(seq 1 10000); do echo 'hello,","," ",world,"!"'; done > /tmp/hello.csv && time perl6 csv-ip5xs.pl < /tmp/hello.csv && time perl6 csv-ip5xs.pl < /tmp/hello.csv
07:16 jsimonet joined #perl6-dev
07:47 * moritz has to build a rakudo first
07:53 DrForr I take it it needs a recent rakudo...
07:57 nine DrForr: any 6.c should do
07:58 nine Though of course the numbers could be skewed by an old slow rakudo :)
07:58 DrForr Eeh, rebuilding. I need to see how the grammar change impacted my code anyway.
08:07 lizmat good morning
08:07 yoleaux2 18 Sep 2016 23:30Z <Zoffix> lizmat: is it correct that 9b6f2eb543 makes "ac" ~~ / (a) (b)? (c) /; $/.list has a Mu in the hole and not an Any? In 2016.04 it used to be an Any and if you do my @a = [1, 2, 3]; @a[1]:delete; dd @a you get an Any in the hole
08:08 * masak .oO( "any 6.c will do" -- Joseph and the Amazing Technicolor Perl 6 Coat )
08:08 masak morning, #perl6
08:08 lizmat Zoffix: @a is an Array, the internal result of the positionals in a Match object, is a List
08:08 masak -dev
08:09 lizmat my assumption was that Arrays can have holes, Lists can not
08:09 lizmat I was wrong
08:19 ilbot3 joined #perl6-dev
08:19 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
08:37 RabidGravy joined #perl6-dev
08:42 DrForr nine: perl6 csv-ip5xs.pl < /tmp/hello.csv  10.47s user 0.07s system 99% cpu 10.552 total
08:42 DrForr nine: perl6 csv-ip5xs.pl < /tmp/hello.csv  10.33s user 0.06s system 99% cpu 10.401 total
08:43 DrForr This is on a Linode 2-CPU machine, 2.5GHz per CPU, 4GB RAM, somewhat loaded.
08:44 gfldex joined #perl6-dev
09:17 brrt joined #perl6-dev
09:20 dalek rakudo/nom: c78f5dc | lizmat++ | src/core/Any-iterable-methods.pm:
09:20 dalek rakudo/nom: Fix RT #129304 and RT #129305
09:20 dalek rakudo/nom:
09:20 dalek rakudo/nom: As Benjamin Goldberg++ pointed out, there was a Mu missing.  This was
09:20 dalek rakudo/nom: missed when doing the refactor in 157b46e . AlexDaniel++ also for
09:20 dalek rakudo/nom: pointing out this omission.
09:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c78f5dc7df
09:20 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=129304
09:20 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=129305
09:35 lizmat ok, it appears the .5 regression in test-t is not caused by 9b6f2eb5434e71f07bc64
09:36 lizmat not sure if it is an anomaly or something else caused the .5 second regression
09:53 lizmat nine: I've just done the test you asked: first with the version of Inline::Perl5 that I had installed months ago:
10:05 ilbot3 joined #perl6-dev
10:05 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
10:08 lizmat nine: after upgrading Inline::Perl5, I get one TODO passing in spectest, and one fail
10:09 lizmat t/spec/S01-perl-5-integration/roundtrip.t fails test 4
10:09 lizmat t/spec/S01-perl-5-integration/hash passes todoed test 3
10:09 Zoffix I guess I just don't get what the main difference between a Mu, an Any, and a Nil is.
10:10 lizmat Mu is a type, the most undefined one
10:10 lizmat it does not auto-thread
10:10 lizmat Any is a type, the default undefined in most cases, it *does* auto-thread
10:11 lizmat Nil indicates the absence of a value, technically it is an instance of Mu
10:11 Zoffix m: my @a = 1, Nil, 2; dd @a
10:11 camelia rakudo-moar 7e3506: OUTPUT«Array @a = [1, Any, 2]␤»
10:11 Zoffix Ah. OK. lizmat++
10:13 lizmat hmmm.. the latter may be incorrect
10:13 Zoffix m: my $a = List.new: 1, Nil, 2; dd $a;
10:13 camelia rakudo-moar 7e3506: OUTPUT«List $a = $(1, Any, 2)␤»
10:13 lizmat apparently Nil is Cool nowadays
10:14 Zoffix It started smoking and wearing a leather jacket?
10:15 lizmat m: use nqp; my $l := nqp::list; nqp::bindpos($l,1,42); dd $l  # Zoffix
10:15 camelia rakudo-moar 7e3506: OUTPUT«(Mu, 42)␤»
10:15 DrForr Is *that* all I need to do?
10:34 Zoffix committable6, HEAD m: "ac" ~~ /(.)(.)?(.)/;  use Test; is-deeply $/.perl.EVAL, $/
10:34 committable6 Zoffix, https://gist.github.com/79c5ec54cacf679e6b05a34187869bd1
10:35 Zoffix There's this test in roast `is-deeply EVAL($/.perl), $/, 'EVAL of Match.perl recreates Match';` and it won't pass for all $/s
10:35 Zoffix committable6, 2016.04 m: "ac" ~~ /(.)(.)?(.)/;  use Test; is-deeply $/.perl.EVAL, $/
10:35 committable6 Zoffix, https://gist.github.com/de1adfd58e8b2fb2925e8d5d85b356fd
10:35 dalek rakudo/nom: 4b1864b | lizmat++ | src/core/Junction.pm:
10:35 dalek rakudo/nom: Make auto-threading almost 10% faster
10:35 dalek rakudo/nom:
10:35 dalek rakudo/nom: When auto-threading a single parameter with a 5-element Junction.
10:35 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4b1864bf17
10:36 lizmat afk&
10:36 Zoffix .ask AlexDaniel no Test.pm? For committable6, 2016.04 m: "ac" ~~ /(.)(.)?(.)/;  use Test; is-deeply $/.perl.EVAL, $/   https://gist.github.com/de1adfd58e8b2fb2925e8d5d85b356fd
10:36 yoleaux2 Zoffix: I'll pass your message to AlexDaniel.
10:36 Zoffix bisect: 2016.04 use Test; "ac" ~~ /(.)(.)?(.)/;  is-deeply $/.perl.EVAL, $/
10:37 bisectable6 Zoffix, On both starting points (good=2015.12 bad=c9b18c6) the exit code is 1 and the output is identical as well
10:37 bisectable6 Zoffix, https://gist.github.com/400515405bdccb373c364426092b156e
10:37 Zoffix bisect: use Test; "ac" ~~ /(.)(.)?(.)/;  is-deeply $/.perl.EVAL, $/
10:37 bisectable6 Zoffix, Exit code is 1 on both starting points (good=2015.12 bad=c9b18c6), bisecting by using the output
10:37 bisectable6 Zoffix, bisect log: https://gist.github.com/9890f381f4c2cbdd5b3583b3962f681a
10:37 bisectable6 Zoffix, (2016-05-29) https://github.com/rakudo/rakudo/commit/beb3c98
10:38 Zoffix Nope that's not it.
10:39 Zoffix committable6, 2015.12 m: "ac" ~~ /(.)(.)?(.)/;  use Test; is-deeply $/.perl.EVAL, $/
10:39 committable6 Zoffix, https://gist.github.com/37d1d2430b433a10a00e03346324768f
10:39 Zoffix committable6, 2015.07 m: "ac" ~~ /(.)(.)?(.)/;  use Test; is-deeply $/.perl.EVAL, $/
10:39 committable6 Zoffix, https://gist.github.com/a191db328b87f7372d8a3108da0adbb8
10:43 Zoffix Rakudobugged: https://rt.perl.org/Ticket/Display.html?id=129307
10:46 Zoffix committable6, 2016.07 use Test; "ac" ~~ /(.)(.)?(.)/; my ($one, $two, $three) = $/.list; is $one, 'a'; is $two.^name, 'Mu'; is $three, 'c';
10:46 committable6 Zoffix, ¦«2016.07»: ok 1 - ␤not ok 2 - ␤␤# Failed test at /tmp/IhdH5HUcUm line 1␤# expected: 'Mu'␤#      got: 'Any'␤not ok 3 - ␤␤# Failed test at /tmp/IhdH5HUcUm line 1␤# expected: 'c'␤#      got: (Any) «exit code = 2»
10:47 Zoffix star: use Test; "ac" ~~ /(.)(.)?(.)/; my ($one, $two, $three) = $/.list; is $one, 'a'; is $two.^name, 'Mu'; is $three, 'c';
10:47 camelia star-m 2016.04: OUTPUT«ok 1 - ␤not ok 2 - ␤␤# Failed test at <tmp> line 1␤# expected: 'Mu'␤#      got: 'Any'␤ok 3 - ␤»
10:48 Zoffix FWIW, the fact that it used to be an Any and that we can't use a simple is-deeply to test it suggests to me it should be an Any not a Mu, but I don't understand the differences well enough to argue the case.
10:51 dalek roast: e25b5eb | (Zoffix Znet)++ | S05-match/perl.t:
10:51 dalek roast: Remove trailing whitespace
10:51 dalek roast: review: https://github.com/perl6/roast/commit/e25b5eb2b4
10:51 dalek roast: 581b553 | (Zoffix Znet)++ | S05-match/perl.t:
10:51 dalek roast: $/.list returns all items even with optional captures in the middle
10:51 dalek roast:
10:51 dalek roast: RT#129299: https://rt.perl.org/Ticket/Display.html?id=129299
10:51 dalek roast: review: https://github.com/perl6/roast/commit/581b553b74
10:51 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=129299
11:24 [TuxCM] joined #perl6-dev
12:04 dalek roast: 53b327c | niner++ | S01-perl-5-integration/hash.t:
12:04 dalek roast: Un-TODO passing test
12:04 dalek roast:
12:04 dalek roast: Inline::Perl5 no longer copies hashes by default, so writes to a hash
12:04 dalek roast: are now visible in both languages.
12:04 dalek roast: review: https://github.com/perl6/roast/commit/53b327c8ab
12:04 Ven` joined #perl6-dev
12:19 nine lizmat: the spec test failure is fixed with https://github.com/niner/Inline-Perl5/commit/a46e34194d Thanks for the heads up!
12:19 lizmat nine: will try  :-)
12:20 nine It was just that the Perl5Hash class was missing keys() and values() methods :)
12:20 lizmat trivial things  :-)
13:32 dalek joined #perl6-dev
14:11 mst jnthn: more realistically, I would rather like to hand libuv a pre-opened fdno
14:11 timotimo you do get a fileno from sockets
14:12 timotimo m: say $*IN.native-descriptor
14:12 camelia rakudo-moar 4b1864: OUTPUT«0␤»
14:12 timotimo m: say $*ERR.native-descriptor
14:12 camelia rakudo-moar 4b1864: OUTPUT«2␤»
14:12 mst right, but what I then want is to pass said number
14:12 timotimo right
14:12 timotimo well, NativeCall :P
14:12 mst into something that will give me an IO::Handle::Async for it
14:12 jnthn Yup, also wants doing.
14:12 yoleaux2 18 Sep 2016 03:57Z <Zoffix> jnthn: the multi == hang is due to inlining. It inlines it, then tries to optimize the inlined bit, and so on. ATM it's over my head on how and if to fix it. I posted details on the ticket: https://rt.perl.org/Ticket/Display.html?id=127421#txn-1423789
14:14 jnthn Should get the encoding stuff I've started done first though, I guess.
14:14 mst jnthn: right, just that one would give me the freedom to, well, whatever
14:16 avar joined #perl6-dev
14:16 jnthn Aye...it's a pretty high bang for buck.
14:18 mst basically, I'm ok with perl6 saying "if it's unix specific, you don't get it in core"
14:18 mst but I need ways to integrate unix specific stuff *with* core
14:18 brrt and.. nativecall can't?
14:18 * brrt has probably missed stuff
14:19 timotimo well, you don't want to go through NativeCall just for something so basic
14:19 mst I don't believe that, currently, if I open a file descriptor myself, there's any way to get that fd into moarvm's libuv context
14:19 jnthn brrt: It can but only if we provide a way to feed, say, file descriptors you get back from NativeCall into Perl 6 space things.
14:19 timotimo ideally you'd just "connect('./foobar.socket')" than "use NativeCall" yada yada yada
14:19 jnthn brrt: Otherwise you've a hell of a lot of wheels to go re-inventing.
14:19 mst timotimo: yes, but that's more complicated, and probably wants mnore thinking about
14:19 mst whereas IO::Handle::Async.new-from-fdno($fdno)
14:20 brrt hmm… true yes
14:20 mst is a relative no-brainer, I think
14:20 timotimo right
14:20 mst also essential for e.g. situations where perl6 gets exec()ed with a filehandle already on e.g. fdno 3
14:20 brrt the other way arround is not a no-brainer though
14:20 mst and needs to make use of it
14:20 mst brrt: what other way around?
14:20 mst I can already get the fdno back out of the $fh
14:21 timotimo right, so why can't we just spell it in reverse?
14:21 timotimo m: say 'my $sock = IO::Socket::Async.new(); 5 = $sock.native-descriptor'.reverse
14:21 camelia rakudo-moar 4b1864: OUTPUT«(my $sock = IO::Socket::Async.new(); 5 = $sock.native-descriptor)␤»
14:21 timotimo m: say 'my $sock = IO::Socket::Async.new(); 5 = $sock.native-descriptor'.flip
14:21 camelia rakudo-moar 4b1864: OUTPUT«rotpircsed-evitan.kcos$ = 5 ;)(wen.cnysA::tekcoS::OI = kcos$ ym␤»
14:21 timotimo that's how
14:21 timotimo rotpircsed, what a cool word
14:23 brrt oh, yeah, you are correct
14:23 brrt i recall we implemented that some time ago
14:23 timotimo btw, a slang that reads codes line-wise in reverse. totally possible, might totally want to have that in ACME::
14:23 brrt actually, i think jnthn did
14:23 timotimo sorry, i meant ::EMCA
14:24 Ven` joined #perl6-dev
14:27 pmurias joined #perl6-dev
14:28 mst pmurias: so, basica,,y what I was saying was
14:28 mst we currently have $fh.native-descriptor
14:28 mst I would like some way to go from an fdno to an object rakudo knows about
14:36 mst RabidGravy: ^^
14:36 mst give me that and I'll do the rest
14:40 pmurias hmm, libuv seems to treat named pipes on windows like a unix socket replacement
14:40 yoleaux2 7 Sep 2016 15:06Z <[Coke]> pmurias: - hey do we need to update nqp's t/docs/opcodes.t to start looking at the JS backend?
14:43 RabidGravy yeah, as I read it the abstraction tries to DTRT with the "address" you pass it
14:46 arnsholt timotimo: ACME::EMCA, clearly =)
14:47 timotimo it's fun to stay at the E M C A!
14:47 pmurias mst: would openning /dev/fd/$fd work?
14:47 timotimo E = M C^A
14:47 timotimo pmurias: not on enough systems :)
14:48 mst it might work on enough for me to prototype though
14:49 pmurias I haven't been able to find how to feed a file descriptor to libuv
14:49 pmurias libuv has a builtin way to open unix sockets/windows named pipes
14:50 mst it would be nice to have that exposed
14:51 mst but some way to say "take this fd and use it" is probably desired too, for exec-with-open-fd type situations if nothing else
14:51 mst well, also for "i want to take this fd that I got from some perl5 code and have rakudo adopt it"
14:51 mst (because of *course* I have a bunch of plans that would be helped by that ;)
14:52 pmurias any of the unix sockets/fd descriptors stuff won't work on the jvm
14:52 timotimo yes, exec-with-open-fd currently doesn't exist
14:52 timotimo i mean for calling other programs
14:54 RabidGravy I guess grepping for fdopen in the libuv source might or might not help
15:01 mst timotimo: I'm also thinking exec-of-us-with-open-fd
15:01 mst like say socket activation type stuff
15:01 timotimo yup
15:06 Jolust joined #perl6-dev
15:35 AlexDaniel joined #perl6-dev
16:02 * [Coke] gives up on backscroll after a week away.
16:03 [Coke] Zoffix++ release + associated automation
16:04 TimToady .oO(now if Zoffix would just automate all our backscrolling, we'd have something... :)
16:40 Jolust Don't know if it's relevant to our JS backend: "I just published `optimize-js` – speed up JavaScript execution in the browser by providing hints to JS engines.": https://twitter.com/nolanlawson/status/777737533774032896
16:42 timotimo so this is basically about when you write function { foo bar } ()
16:42 timotimo and this optimize-js will turn that into (function { foo bar })() for you
16:53 dalek rakudo/nom: 08ead04 | (Zoffix Znet)++ | src/Perl6/Grammar.nqp:
16:53 dalek rakudo/nom: Include "use .blah if meant $_" in Perl6-ism errors
16:53 dalek rakudo/nom:
16:53 dalek rakudo/nom: As suggested in http://irclog.perlgeek.de/perl6/2016-09-19#i_13238064
16:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/08ead04480
16:54 dalek rakudo/nom: 77a7a4e | (Zoffix Znet)++ | src/Perl6/Grammar.nqp:
16:54 dalek rakudo/nom: Include bare put in Perl6-ism errors
16:54 dalek rakudo/nom:
16:54 dalek rakudo/nom: This prevents someone using `put for ...` for example.
16:54 dalek rakudo/nom:
16:54 dalek rakudo/nom: Discussed in http://irclog.perlgeek.de/perl6/2016-09-19#i_13237853
16:54 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/77a7a4e475
16:55 dalek roast: 2e2404d | (Zoffix Znet)++ | S16-io/bare-say.t:
16:55 dalek roast: Bare `put` and `put for ...` throw
16:55 dalek roast: review: https://github.com/perl6/roast/commit/2e2404d765
16:55 dalek roast: 987cfb1 | (Zoffix Znet)++ | S16-io/bare-say.t:
16:55 dalek roast: Include note that extra spacing in the test is not an accident
16:55 dalek roast: review: https://github.com/perl6/roast/commit/987cfb1dde
18:23 lizmat m: my %h; sub a($a) { %h{$a}++ }; a(1|2|3|4|5); dd %h   # how will this fail when autothreading becomes really multi-threaded?
18:23 camelia rakudo-moar 77a7a4: OUTPUT«Hash %h = {"1" => 1, "2" => 1, "3" => 1, "4" => 1, "5" => 1}␤»
18:24 lizmat I mean, the sub a could be an export from a module that did not anticipate to be called from several threads at the same time
18:25 lizmat perhaps we need to mark a sub to not be auto-threaded over multiple threads ?
18:25 lizmat jnthn ideas ?
18:34 masak ISTR jnthn blogging about that being basically impossible
18:40 jnthn I've generally taken "auto-threading" of junctions to mean that operations are threaded through the values of the junction, more than "we'll do this on different OS threads".
18:40 jnthn Unlike, say, @a>>.foo where we've said all along "you'd better not do side-effecty things"
18:41 jnthn Or feed operators where they're also specified as setting up a producer/consumer pipeline.
18:42 timotimo that's also how i've seen it for a long time
18:42 timotimo we might want to start calling it something else, though. something without "threading"
18:42 timotimo maybe "autospreading"?
18:42 timotimo "autofanning"?
18:43 bartolin lizmat: I saw your commit 9b6f2eb543 in the backlog. does that shed a different light on RT #128320 and the related rakudo PR 780? (that PR has conflicts now)
18:43 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128320
18:45 jnthn I think your typical usage advice on junctions also boils down to "use them in situations that collapse to a boolean value"
18:45 jnthn *our
18:45 jnthn dinner, bbl &
18:47 timotimo hm
18:52 arnsholt Regarding platform-dependent stuff like file descriptors and fdopen(3): Maybe there needs to be well-defined places where this kind of support can go, so that a compiler can provide efficient primitives for operations available on its platform(s)?
19:10 lizmat bartolin: looking
19:11 lizmat bartolin: I don't think so, because #128320 is about Arrays not Lists
19:11 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128320
19:13 lizmat ah, reading the pull request: perhaps the jvm has problems pushing nqp::null to an array ?
19:14 timotimo we don't have something like VMNull on JVM? that surprises me
19:14 arnsholt IIRC nqp::null on JVM is just plain null
19:15 lizmat well, that's basically what https://github.com/rakudo/rakudo/pull/780/files does: make sure we don't push nqp::null
19:16 arnsholt There are two potential solutions here, IMO
19:16 arnsholt Either guard against the null from Rakudo (like in the PR), or find the spot in the Java runtime code that doesn't check for null and add a null check there instead
19:16 bartolin lizmat: IIRC the problem occured because we used map in the failing code -- and inside map the List iterator is used
19:17 arnsholt I'd be inclined to go for finding the problem in the Java code, I think
19:18 bartolin sounds fair. I'll add this discussion to the ticket (and close the PR)
19:19 bartolin arnsholt++ lizmat++ # thanks for looking
19:19 lizmat bartolin: if this is still a problem, then I could make it JVM only
19:20 bartolin lizmat: no, it's not a big problem (not worth a special case IMHO)
19:20 lizmat ok
19:20 brrt joined #perl6-dev
19:21 bartolin (I fudged the failing test as todo some time ago)
19:21 lizmat well, if it's todoed, is no longer NPEing ?
19:22 lizmat *it's
19:23 bartolin it's a 'lives-ok' test :-)
19:26 lizmat but still, an NPE would exit the test script, wouldn't be catchable ?
19:26 timotimo not sure if we turn an NPE into a perl6-level catchable exception
19:28 bartolin well, the test file (S32-array/delete.t) has no passed todos and it does not die, either
19:28 * lizmat is building an up-to-date JVM backend
19:29 lizmat and another Perl 6 Weekly hits the Net: https://p6weekly.wordpress.com/2016/09/19/2016-38-we-are-the-robots/
19:31 avar Are rakudo releases not also announced on http://rakudo.org/ anymore?
19:32 lizmat avar: only Rakudo Star release
19:32 lizmat s
19:32 lizmat this is "just" a compiler release
19:33 lizmat of course, one hopes there will be a Rakudo Star release based on this compiler release soon    :-)
19:33 timotimo oh, right
19:33 avar h, I see
19:35 lizmat bartolin: seems the problem on JVM is now also gone:
19:35 lizmat $ ./perl6-j -e 'my @a; @a[1] = 42; say @a.map: { 1 }'
19:35 lizmat (1 1)
19:36 lizmat oops, it isn't:
19:36 lizmat $ ./perl6-j -e 'my @a; @a[1] = 42; say map { $_ }, @a'
19:36 lizmat java.lang.NullPointerException
19:36 lizmat in block <unit> at -e line 1
19:37 bartolin yepp, it's only the sub form of map
19:39 lizmat m: sub a(+v) { dd v }; a( my @ = ^10 )
19:39 camelia rakudo-moar 77a7a4: OUTPUT«(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)␤»
19:39 lizmat m: sub a(+@v) { dd @v }; a( my @ = ^10 )
19:39 camelia rakudo-moar 77a7a4: OUTPUT«[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]␤»
19:40 lizmat seems like adding a sigil makes it an Array, and thus circumvent the issue
19:41 bartolin lizmat: you mean in multi sub map?
19:41 lizmat yeah...
19:42 lizmat testing that now
19:47 bartolin hmm, Larry introduced the +value there exactly one year ago (d9c21e99f5)
19:48 lizmat ./perl6-j -e 'my @a; @a[1] = 42; say map { $_ }, @a'
19:48 lizmat ((Mu) 42)
19:48 ugexe m: my @a = <1 2 3> say @a.tail; say @a.pick; # should arg-less tail/head act like arg-less pick/roll?
19:48 camelia rakudo-moar 77a7a4: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> my @a = <1 2 3>⏏ say @a.tail; say @a.pick; # should arg-␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        stateme…»
19:49 ugexe m: my @a = <1 2 3>; say @a.tail; say @a.pick;
19:49 camelia rakudo-moar 77a7a4: OUTPUT«(3)␤1␤»
19:49 lizmat ugexe: you mean, not returning a list but a scalar?
19:49 ugexe lizmat: yeah
19:52 lizmat I guess the same could be argued for .head then
19:53 lizmat fwiw, I think it makes sense
19:59 lizmat bartolin: alas, no go
20:00 lizmat m: my @a = ^10; map { $_ = 42 }, @a; dd @a   # this breaks
20:00 camelia rakudo-moar 77a7a4: OUTPUT«Array @a = [42, 42, 42, 42, 42, 42, 42, 42, 42, 42]␤»
20:00 lizmat apparently the array is a copy
20:01 bartolin ah.
20:02 bartolin anyway, it's not the biggest problem with the jvm backend ... but thanks for looking!
20:03 lizmat bartolin: yw
20:11 [Coke] buggable: rt?
20:11 buggable [Coke], Total: 1366; BUG: 530; UNTAGGED: 287; LTA: 115; NYI: 91; JVM: 63; RFC: 57; CONC: 53; SEGV: 38; REGEX: 35; UNI: 30; PERF: 27; @LARRY: 21; IO: 17; POD: 17; NATIVECALL: 14; BUILD: 11; TODO: 11; PRECOMP: 10; TESTCOMMITTED: 10; OO: 8; MATH: 7; STAR: 6; BOOTSTRAP: 5; GLR: 4; OSX: 4; REPL: 3; WEIRD: 3; REGRESSION: 2; CONFIGURE: 1; DOCS: 1; LIBRARY: 1; RT: 1; SITE: 1; SPEC: 1; TESTNEEDED: 1; See http://perl6.fail/
20:13 [Coke] Zoffix, how often is that updated?
20:17 ZoffixMobile joined #perl6-dev
20:17 ZoffixMobile every 10 minutes
20:17 [Coke] danke
20:18 [Coke] does your URL only match uppercase tags?
20:18 [Coke] er, s/URL/code/
20:18 [Coke] "#128442: [precomp] $?FILE contains bogus shortname when precompiled" is listed as untagged, e.g.
20:18 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128442
20:19 Ven_ joined #perl6-dev
20:19 [Coke] ditto one with NativeCall
20:20 ZoffixMobile loolks like it. Gonna change it to case insensitive when I get home
20:20 [Coke] Zoffix++
20:29 dalek rakudo/nom: 96df2d7 | lizmat++ | src/core/Any-iterable-methods.pm:
20:29 dalek rakudo/nom: Make .head/.tail act like .roll/.pick
20:29 dalek rakudo/nom:
20:29 dalek rakudo/nom: As in not returning a list, but just a single item.  As suggested by
20:29 dalek rakudo/nom: ugexe++
20:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/96df2d7148
20:44 dalek rakudo/nom: 8be36b1 | niner++ | src/core/CompUnit/Repository/Installation.pm:
20:44 dalek rakudo/nom: Fix CURI::installed, broken by refactor
20:44 dalek rakudo/nom:
20:44 dalek rakudo/nom: Regression of commit 601f4f08ec4d90102b9a0029b3a2b007c359389b
20:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8be36b1228
20:56 lizmat good night, #perl6-dev
20:56 bartolin o/
20:58 timotimo gnite lizmat
21:08 Ven_ joined #perl6-dev
21:51 ugexe joined #perl6-dev
21:51 lizmat joined #perl6-dev
21:57 Zoffix buggable, tags
21:57 buggable Zoffix, Total: 1363; BUG: 531; UNTAGGED: 272; LTA: 115; NYI: 91; JVM: 64; RFC: 59; CONC: 53; SEGV: 38; REGEX: 35; UNI: 31; PERF: 27; @LARRY: 21; IO: 18; POD: 17; NATIVECALL: 15; BUILD: 11; PRECOMP: 11; TODO: 11; TESTCOMMITTED: 10; OO: 8; MATH: 7; STAR: 6; BOOTSTRAP: 5; GLR: 5; OSX: 4; REPL: 3; WEIRD: 3; DOCS: 2; REGRESSION: 2; TESTNEEDED: 2; @IXS: 1; CONFIGURE: 1; CSTRUCT: 1; EFG: 1; FOO: 1; INT: 1; LIBRARY: 1;
21:57 Zoffix buggable, efg
21:57 Zoffix buggable, tag efg
21:57 buggable Zoffix, There is 1 ticket tagged with EFG; See http://perl6.fail/t/EFG for details
21:59 Zoffix heh, now I remember why I went with all-caps
21:59 AndroUser2 joined #perl6-dev
21:59 Zoffix buggable, tags foo
21:59 buggable Zoffix, There is 1 ticket tagged with FOO; See http://perl6.fail/t/FOO for details
21:59 Zoffix :)
22:00 Zoffix gonna fix that later; too tired for P5 right now.
22:10 [TuxCM] joined #perl6-dev

| Channels | #perl6-dev index | Today | | Search | Google Search | Plain-Text | summary