Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2016-11-30

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

All times shown according to UTC.

Time Nick Message
00:13 MasterDuke yeah
00:14 MasterDuke ah, there's an MVMContainerSpec in moarvm
00:43 vendethiel joined #perl6-dev
00:43 seatek joined #perl6-dev
01:24 dalek roast: 9008f33 | (Aleks-Daniel Jakimenko-Aleksejev)++ | S02-literals/numeric.t:
01:24 dalek roast: Tests for attempts to create a Complex using <> with --Inf
01:24 dalek roast: review: https://github.com/perl6/roast/commit/9008f3312e
01:26 AlexDaniel viki: that's it, I guess
01:30 dalek roast: c61f7f1 | MasterDuke17++ | S06-traits/misc.t:
01:30 dalek roast: Test error when assigning to ro var has the name
01:30 dalek roast: review: https://github.com/perl6/roast/commit/c61f7f1e32
01:30 viki wtf...
01:30 * viki looks at other tests in that file
01:30 viki m: dd <-3.1e-23-2.9e-23i>
01:30 camelia rakudo-moar 843a6b: ( no output )
01:30 viki m: dd <-3.1e-23-2.9e-23i>
01:30 camelia rakudo-moar 843a6b: ( no output )
01:30 viki eval: dd <-3.1e-23-2.9e-23i>
01:30 evalable6 viki, rakudo-moar 3800e99: OUTPUT«<-3.1e-23-2.9e-23i>»
01:30 viki eval: dd <-3.1e-23-2.9e-23i>.^name
01:30 evalable6 viki, rakudo-moar 3800e99: OUTPUT«"Complex"»
01:30 viki 0_0
01:31 viki eval: dd <-3.1e-23-2.9e-23i+5+10-42+22i>.^name
01:31 evalable6 viki, rakudo-moar 3800e99: OUTPUT«"Str"»
01:31 * viki doesn't follow where the line gets drawn
01:31 viki Oh
01:31 viki doh
01:31 viki I thought it was a weird combined number :}
01:33 viki AlexDaniel: that's it? That's lacking in most of the weird stuff that was found buggy in the past two days. Like <2/١> vs <١/2>, U+2212 minus, the thing you had me try to guess what will come out.
01:33 * viki drops to bed
01:33 AlexDaniel viki: but I have no idea what is the right behavior in all of these cases
01:35 AlexDaniel the unicode stuff arguably does not work at all, so vOv
01:47 MasterDuke eval: use MONKEY; EVAL q|sub a($bbb) { $bbb = 1 }; a(2); CATCH {}|
01:47 evalable6 MasterDuke, rakudo-moar 3800e99: OUTPUT«(exit code 1) Cannot assign to a readonly variable ($bbb) or a value␤  in sub a at EVAL_0 line 1␤  in block <unit> at EVAL_0 line 1␤  in block <unit> at /tmp/c0RPPDivKw line 1␤»
01:47 MasterDuke eval: use MONKEY; EVAL q|sub a($bbb) { $bbb = 1 }; a(2)|
01:47 evalable6 MasterDuke, rakudo-moar 3800e99: OUTPUT«(exit code 1) Cannot assign to an immutable value␤  in block <unit> at EVAL_0 line 1␤  in block <unit> at /tmp/CHL2KIW9A2 line 1␤»
01:48 MasterDuke the first error comes from here: https://github.com/rakudo/rakudo/blob/nom/src/vm/moar/ops/container.c#L85
01:49 MasterDuke the second error comes from here: https://github.com/MoarVM/MoarVM/blob/master/src/6model/containers.c#L500
01:50 MasterDuke anybody have an idea why the difference?
02:19 kalkin-_ joined #perl6-dev
02:20 geekosaur joined #perl6-dev
02:49 ilbot3 joined #perl6-dev
02:49 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
03:19 MasterDuke oops, second one is actually https://github.com/MoarVM/MoarVM/blob/master/src/core/interp.c#L2829, i guess being interpreted or not is the difference
05:44 chatter joined #perl6-dev
05:46 chatter joined #perl6-dev
05:53 kalkin- joined #perl6-dev
05:59 japhb joined #perl6-dev
06:25 japhb joined #perl6-dev
06:49 RabidGravy joined #perl6-dev
06:55 japhb joined #perl6-dev
07:04 bartolin eval: my @a[2;2] = <a b c d>
07:04 evalable6 bartolin, rakudo-moar 3800e99: OUTPUT«(exit code 1) X::Assignment::ToShaped exception produced no message␤  in block <unit> at /tmp/4sulD5US8b line 1␤»
07:04 bartolin j: my @a[2;2] = <a b c d>
07:04 camelia rakudo-jvm 76b061: OUTPUT«Assignment to array with shape 2 2 must provide structured data␤  in block <unit> at <tmp> line 1␤␤»
07:05 bartolin lizmat: looks like that 87dcc0873b broke the message generation for X::Assignment::ToShaped
07:07 bartolin lizmat: maybe you have a short fix for that? (I took a look but didn't have a good idea.) AFAIU the problem happens because $!dims is passed as shape to the exception, but can't be stringified later: https://github.com/rakudo/rakudo/blob/3800e990a395776f039e44fbffc2313e1b8344e6/src/core/ShapedArray.pm#L364
07:10 bartolin current rakudo-j dies with a StackOverflowError for the above code
07:13 [TuxCM] This is Rakudo version 2016.11-95-g3800e99 built on MoarVM version 2016.11-20-g0f7277a
07:13 [TuxCM] csv-ip5xs        3.133
07:13 [TuxCM] test            13.924
07:13 [TuxCM] test-t           6.480
07:13 [TuxCM] csv-parser      13.904
07:16 lizmat Files=1155, Tests=53799, 189 wallclock secs (10.67 usr  4.44 sys + 1102.93 cusr 121.44 csys = 1239.48 CPU)  # new MBP
07:21 japhb joined #perl6-dev
07:33 dalek rakudo/nom: d2ce52c | lizmat++ | src/core/ (2 files):
07:33 dalek rakudo/nom: Make sure we can display dimensions as list_i
07:33 dalek rakudo/nom:
07:33 dalek rakudo/nom: As bartolin++ pointed out, 87dcc0873b broke error generation for the
07:33 dalek rakudo/nom: given shape, because $!dims is now a list_i, and not a list.  Fixed
07:33 dalek rakudo/nom: by adding a .dims method, similar to .indices, that basically HLLizes
07:33 dalek rakudo/nom: the internal list_i with dimensions.
07:33 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d2ce52c2a3
07:34 lizmat bartolin: not sure this is the best fix, but I'm about to be offline for the better part of the day
07:44 lizmat commute&
09:59 jnthn morning, #perl6-dev
09:59 timotimo morning jnthn-dev
10:02 jnthn Ah yay, you fixed that leek
10:02 jnthn Uh, leak
10:02 AlexDaniel joined #perl6-dev
10:03 tadzik sleek!
10:07 * timotimo leekspins
10:08 synopsebot6 joined #perl6-dev
10:09 * jnthn gets latest builds of everything, then goes hutning for that zeroed owner thingy
10:16 dogbert2 joined #perl6-dev
10:20 gfldex joined #perl6-dev
10:20 DrForr joined #perl6-dev
10:24 timotimo joined #perl6-dev
10:25 zostay joined #perl6-dev
10:26 nchambers joined #perl6-dev
10:30 |Tux| joined #perl6-dev
10:30 ilmari[m] joined #perl6-dev
11:05 geekosaur joined #perl6-dev
11:12 pmurias joined #perl6-dev
11:12 dalek nqp: 2a4e696 | (Pawel Murias)++ | src/vm/js/Compiler.nqp:
11:12 dalek nqp: [js] Remove useless variable.
11:12 dalek nqp: review: https://github.com/perl6/nqp/commit/2a4e696c0a
11:12 dalek nqp: d18c065 | (Pawel Murias)++ | src/vm/js/nqp-runtime/reprs.js:
11:12 dalek nqp: [js] Fix serialization of VMArrays where all the elements haven't been assigned to.
11:12 dalek nqp: review: https://github.com/perl6/nqp/commit/d18c0656f9
11:12 dalek nqp: a679960 | (Pawel Murias)++ | t/serialization/01-basic.t:
11:12 dalek nqp: Test serialization of a "sparse" VMArray.
11:12 dalek nqp: review: https://github.com/perl6/nqp/commit/a67996074d
11:12 dalek nqp: b1d3fca | (Pawel Murias)++ | src/vm/js/Compiler.nqp:
11:12 dalek nqp: [js] Add native types to variable declarations.
11:12 dalek nqp: review: https://github.com/perl6/nqp/commit/b1d3fcaf4a
12:50 dogbert17 joined #perl6-dev
13:14 viki joined #perl6-dev
13:17 notviki joined #perl6-dev
13:32 babydrop joined #perl6-dev
13:34 jnthn dogbert17: Did https://rt.perl.org/Ticket/Display.html?id=130191 already get solved?
13:43 dogbert17 jnthn: yes, if we deploy the MoarVM PR lizmat merged a few days ago
13:43 dogbert17 the one where changes were made to twiddle_trie_node (if I remember the name correctly)
13:44 jnthn OK, did the crash occur in one of the spectests?
13:44 jnthn I'll dump MOAR_REVISION later on today for another fix I've done
13:45 dogbert17 it occured with everything if I set this check memory size thingy in fixedallocsize.c
13:46 dogbert17 https://github.com/MoarVM/MoarVM/commit/bf777f66bc403f93b58141d56143e4061c5fb8e8
13:50 dogbert17 jnthn: you went to bed yesterday before I had a chance to trick into taking a quick glance at https://gist.github.com/dogbert17​/b381b649a79be47eacf686761f45f1ba :-)
13:51 dogbert17 s/trick/trick you/
13:52 jnthn That link gives me 404
13:53 dogbert17 https://gist.github.com/dogbert17/b381b649a79be47eacf686761f45f1ba
13:54 dogbert17 now it seem to work, odd
13:55 jnthn same here...huh
13:55 dogbert17 I was just wondering if something immediately jumps out, it's probably not the most important bug ever :-)
13:56 jnthn Just a plain old clean, I think
13:56 jnthn We malloc but don't free
13:56 jnthn figuring out when to free will be the trick
13:56 dogbert17 yes indeed
13:58 jnthn Worth fixing anyway
13:58 jnthn Or a long-running server thingy that does process spawning will slowly leak over time
14:06 dalek rakudo/nom: 47ffdea | jnthn++ | src/core/Supply.pm:
14:06 dalek rakudo/nom: Fix a data race in Supply.interval.
14:06 dalek rakudo/nom:
14:06 dalek rakudo/nom: Once we have atomic increment, then a native integer being atomically
14:06 dalek rakudo/nom: incremented instead of using the lock here would be cheaper. For now,
14:06 dalek rakudo/nom: this fixes an occasional crash on low intervals or under heavy load.
14:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/47ffdeae8b
14:06 dalek rakudo/nom: 33f7456 | jnthn++ | src/core/Supply.pm:
14:06 dalek rakudo/nom: Refactor and fix some races in supply/whenever.
14:06 dalek rakudo/nom:
14:06 dalek rakudo/nom: This moves various mutations into the SupplyState object, where we can
14:06 dalek rakudo/nom: reliably enforce mutual exclusion upon them. This of note eliminates
14:06 dalek rakudo/nom: some races relating to the active-taps hash, which led to a number of
14:06 dalek rakudo/nom: different occasional crashes. (It turns out that some of the mutations
14:07 dalek nqp: 547d61f | jnthn++ | tools/build/MOAR_REVISION:
14:07 dalek nqp: Bump MOAR_REVISION for various SEGV fixes.
14:07 dalek nqp: review: https://github.com/perl6/nqp/commit/547d61f351
14:09 tbrowder i'm using a late-model rakudo/nom and getting what looks like a bug
14:10 dalek rakudo/nom: 74eb6b9 | jnthn++ | tools/build/NQP_REVISION:
14:10 dalek rakudo/nom: Bump NQP_REVISION to get a MoarVM with some fixes.
14:10 dalek rakudo/nom:
14:10 dalek rakudo/nom: * Fixes a GC invariant violation in the code supporting Proc::Async
14:10 dalek rakudo/nom:   that led to a variety of possible memory corruptions, mostly often
14:10 dalek rakudo/nom:   showing up as "zeroed owner in work pass" or similar.
14:10 dalek rakudo/nom: * Fixes memory corruption on 32-bit platforms due to releasing memory
14:10 dalek rakudo/nom:   with the wrong size in the NFG trie.
14:10 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/74eb6b9586
14:10 tbrowder https://www.irccloud.com/pastebin/Y2LWk35W/
14:13 tbrowder https://www.irccloud.com/pastebin/K5j9EqLH/
14:13 tbrowder i expect to get "False"
14:14 * dogbert17 is having a coffee break and eating cake wile building the latest Rakudo
14:15 jnthn dogbert17: I closed up that RT; hopefully correctly :)
14:16 dogbert17 jnthn++
14:16 jnthn tbrowder: use `so` or `?` to force booleanization of the return value
14:16 jnthn tbrowder: It returns a Failure rather than throwing an exception, so if you use it in boolean context it behaves as you'd want.
14:17 tbrowder m: say so 'no-dir'.IO.d
14:17 camelia rakudo-moar 843a6b: OUTPUT«False␤»
14:17 tbrowder m: say !'no-dir'.IO.d
14:17 camelia rakudo-moar 843a6b: OUTPUT«True␤»
14:18 dalek roast: b8f17e1 | jnthn++ | S17-supply/syntax.t:
14:18 dalek roast: Test to cover a couple of Supply/interval bugs.
14:18 dalek roast: review: https://github.com/perl6/roast/commit/b8f17e10fd
14:18 tbrowder m: if !'no-dir'.IO.d { say "False" }
14:18 camelia rakudo-moar 843a6b: OUTPUT«False␤»
14:19 tbrowder hm, i'm using that in a  script and get the Fatal error.  I'll check some more--thanks
14:29 jnthn babydrop: Can you still reproduce https://rt.perl.org/Ticket/Display.html?id=129120 ?
14:29 jnthn I suspect it was a case of a method cache deserialization race that got fixed a while back
14:29 jnthn (And is test-covered)
14:30 babydrop lemme fire up my VM and test again
14:30 jnthn Cool, thanks
14:30 jnthn Not managing to reproduce it in mine
14:30 jnthn But yours has moar coars :)
14:34 dogbert17 babydrop, nice nick
14:38 jnthn Time for a break; bbiab
14:38 babydrop dogbert17: dunno about it... I was forced to change from `viki`
14:39 dogbert17 what was wrong with viki
14:40 babydrop dogbert17: it was a registered nick and its rightful owner ghosted me
14:44 dogbert17 ah, that explains it
14:53 dogbert17 babydrop: are you managing to break jnthn's latest commits?
14:53 babydrop it looks good.
14:54 babydrop Hasn't crashed in this many iterations: https://gist.github.com/zoffixznet/a05bd0890d698c901610b482a2f35ab3
14:59 vendethiel joined #perl6-dev
15:07 dogbert17 looks promising
15:20 babydrop .tell jnthn not a single crash in 83 runs, so it looks fixed. I closed the ticket
15:20 yoleaux2 babydrop: I'll pass your message to jnthn.
15:20 babydrop jnthn++
15:40 jnthn babydrop: Yay :)
15:40 yoleaux2 15:20Z <babydrop> jnthn: not a single crash in 83 runs, so it looks fixed. I closed the ticket
15:40 jnthn Another RT down
15:41 babydrop \o/
15:41 jnthn They weren't RT'd but the other things I fixed earlier on today caused occasional but bad results also
15:42 jnthn The "zeroed work item" one is probably the one that commitable and friends were tripping over
15:44 dalek nqp: 218e583 | (Pawel Murias)++ | src/HLL/Compiler.nqp:
15:44 dalek nqp: Add a --profile-stage option to profile only one compilation stage.
15:44 dalek nqp: review: https://github.com/perl6/nqp/commit/218e583da3
15:44 dalek nqp: cc6fc68 | (Pawel Murias)++ | src/vm/js/nqp-runtime/ (2 files):
15:44 dalek nqp: [js] Implement calling uncached methods. Uses an ES6 Proxy.
15:44 dalek nqp: review: https://github.com/perl6/nqp/commit/cc6fc682f6
15:44 dalek nqp: d44f446 | (Pawel Murias)++ | t/nqp/104-method-cache.t:
15:44 dalek nqp: Test method caches and calling methods without a method cache.
15:44 dalek nqp: review: https://github.com/perl6/nqp/commit/d44f446a31
15:48 * jnthn is trying to figure where exactly in our stack causes RT #130168
15:50 jnthn Well, interesting...we only get one callback from libuv...
15:53 jnthn Oh. We ask it for timeout 0, repeat 0...
15:55 jnthn hah
15:55 jnthn ($delay * 1000).Int, ($every * 1000).Int,
15:55 babydrop :o
15:55 jnthn We convert seconds to milliseconds
15:56 jnthn So when the number gets small enough it becomes 0 miliseconds
15:59 * jnthn fixes it with a ceiling cat
16:00 jnthn uh, just a ceiling
16:00 japhb jnthn: There's no microsecond or nanosecond interface, I take it?
16:00 japhb Too bad we can't just apply the power of ceiling cat to all our bugs ....
16:00 TimToady or better, a floating-point or rational interface? :)
16:01 TimToady people always design these integer fractionl timing things, and they always break in the long run...
16:01 japhb TimToady: You're asking too much of C coders.  ;-)
16:01 japhb TimToady: We could always define it in terms of slash h ...
16:02 japhb Time quanta.  The only way to be sure.
16:03 TimToady by then we'll have 1024-bit FP and that'll probably work fine :)
16:07 jnthn japhb: Checked the docs; sadly, no, millisecond is the best on offer from libuv
16:07 jnthn m: use Test; my @a; react { whenever Supply.interval(.0001) { push @a, $_; done if $_ == 5 } }; is @a, [0..5]
16:08 jnthn That now passes locally
16:08 camelia rakudo-moar 843a6b: OUTPUT«(timeout)»
16:11 jnthn That said, it only fires once per millisecond
16:12 jnthn I'm not sure if we should warn in such cases
16:12 dogbert17 does that mean that given intervals below 1ms will be 1ms?
16:13 jnthn Yeah, thus why I'm pondering the warning
16:13 babydrop warning sounds reasonable
16:13 dogbert17 I was pondering the docs
16:14 dogbert17 I can write something up when I get home from $work
16:15 jnthn Sounds good :)
16:15 babydrop #perl6-dev where half the inhabitants are slacking off work :)
16:15 * jnthn is in the category of "people for whom Perl 6 is work today"
16:15 * babydrop is jealous
16:16 jnthn Actually, prototyping in Perl 6 for $dayjob task, so using Perl 6 is work for quite a few days at the moment.
16:16 * dogbert17 will leave in a few minutes
16:16 dogbert17 have you stumbled upon any bugs while prototyping?
16:20 jnthn Yes.
16:20 jnthn More in my own code than in Perl 6, though. ;)
16:21 jnthn The Rakudo/MoarVM ones I've golfed to the point I wasn't sure they were $dayjob code, then put them aside to work on later.
16:21 jnthn uh, where I was sure they weren't in $dayjob code
16:22 jnthn Though by this point I've fixed all of those too
16:30 dogbert17 cool
16:30 * dogbert17 commute from $work :)
16:32 lizmat joined #perl6-dev
16:35 dalek rakudo/nom: c38f1ad | jnthn++ | src/core/ThreadPoolScheduler.pm:
16:35 dalek rakudo/nom: Better handle time resolutions below 1ms.
16:35 dalek rakudo/nom:
16:35 dalek rakudo/nom: We used to round these down to 0, meaning `Supply.interval(.0001)`
16:35 dalek rakudo/nom: would just emit one value, and never repeat, since 0 signals no
16:35 dalek rakudo/nom: repetition). Now we round it up to 1ms and warn.
16:35 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c38f1ad570
16:36 dalek roast: 4a2b7b7 | jnthn++ | S17-supply/interval.t:
16:36 dalek roast: Test for RT #130168.
16:36 dalek roast: review: https://github.com/perl6/roast/commit/4a2b7b7a4f
16:36 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=130168
16:37 jnthn Back down to one page of [CONC] tickets on RT now
16:40 jnthn afk for a bit
16:42 * lizmat waves from London and rejoices at jnthn's fixes for the day
16:43 babydrop \o
16:56 lizmat babydrop o/
16:57 lizmat jnthn: HARNESS_TYPE=6 seems to work now: Files=1144, Tests=53746,  275 wallclock secs
16:57 lizmat afk&
17:13 dogbert17 joined #perl6-dev
18:00 dalek roast: a1ae8fe | usev6++ | S09-multidim/assign.t:
18:00 dalek roast: Revert "Fudge test for X::Assignment::ToShaped for JVM"
18:00 dalek roast:
18:00 dalek roast: This reverts commit fe0404cc2dc96f02536c34f9f6eb600ad33ed295.
18:00 dalek roast:
18:00 dalek roast: Test passes again, lizmat++ for the fix.
18:00 dalek roast: review: https://github.com/perl6/roast/commit/a1ae8fe07b
18:11 bartolin it would be nice to get a second opinion about https://github.com/perl6/roast/pull/183
18:12 bartolin the test was in 6.c so I'm reluctant to change it.
18:12 bartolin if the test should be kept unchanged, I'm going to fudge it for rakudo-j
18:14 babydrop I'm OK with changing it, since the intent of the test is to test for dual backtrace, not for any filenames
18:16 bartolin thanks
18:39 [Coke] I agree that you're not changing the intent of the test there.
19:08 AlexDaniel joined #perl6-dev
19:38 ggoebel joined #perl6-dev
19:45 RabidGravy joined #perl6-dev
20:07 nchambers joined #perl6-dev
20:41 babydrop .tell samcv if you're willing to improve rakudo.org (it's Wordpress), I'm sure we can find you an account :) RE: https://twitter.com/samcv6/status/804044061355044864
20:41 yoleaux2 babydrop: I'll pass your message to samcv.
20:46 dalek star: ccb2994 | (Zoffix Znet)++ | tools/star/release-guide.pod:
20:46 dalek star: Delete the step about updating .htaccess
20:46 dalek star:
20:46 dalek star: The -latest- urls are not figured out automagically and by the download page
20:46 dalek star: script[^1], so this step is no longer needed.
20:46 dalek star:
20:46 dalek star: [1] https://github.com/perl6/web-rakudo/
20:46 dalek star: review: https://github.com/rakudo/star/commit/ccb299418b
20:46 dalek star: bdfd5e6 | lizmat++ | tools/star/release-guide.pod:
20:46 dalek star: Merge pull request #81 from zoffixznet/patch-1
20:46 dalek star:
20:46 dalek star: Delete the step about updating .htaccess
20:48 babydrop s/are not/are NOW/;
20:48 * babydrop recalls promising to proofread commits... :)
20:48 timotimo absolutely futile :P
20:49 [Coke] just fix em and force-repush
20:49 [Coke] (DO NOT DO THAT)
20:49 babydrop :)
21:02 stmuk_ babydrop++ # making life easier
21:33 timotimo and prettier
22:13 tadzik joined #perl6-dev
22:27 ilmari[m] joined #perl6-dev
22:35 AlexDaniel joined #perl6-dev
23:27 bisectable6 joined #perl6-dev
23:27 bisectable6_ joined #perl6-dev
23:27 bisectable6__ joined #perl6-dev
23:29 bisectable6 joined #perl6-dev
23:30 unicodable6 joined #perl6-dev
23:30 committable6 joined #perl6-dev
23:30 bisectable6 joined #perl6-dev
23:30 evalable6 joined #perl6-dev
23:30 benchable6 joined #perl6-dev
23:37 unicodable6 joined #perl6-dev
23:39 committable6 joined #perl6-dev
23:43 seatek joined #perl6-dev

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