Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2017-10-02

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:22 evalable6 joined #moarvm
00:57 evalable6 joined #moarvm
01:08 vendethiel- joined #moarvm
01:55 ilbot3 joined #moarvm
01:55 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
02:26 arnsholt joined #moarvm
03:16 AlexDaniel joined #moarvm
03:38 evalable6 joined #moarvm
03:38 greppable6 joined #moarvm
03:38 quotable6 joined #moarvm
03:38 nativecallable6 joined #moarvm
03:38 committable6 joined #moarvm
03:38 bloatable6 joined #moarvm
03:38 coverable6 joined #moarvm
03:38 benchable6 joined #moarvm
03:38 releasable6 joined #moarvm
03:38 unicodable6 joined #moarvm
03:38 bisectable6 joined #moarvm
03:38 squashable6 joined #moarvm
03:38 statisfiable6 joined #moarvm
04:20 nativecallable6 joined #moarvm
04:20 bloatable6 joined #moarvm
04:20 coverable6 joined #moarvm
04:20 quotable6 joined #moarvm
04:20 greppable6 joined #moarvm
04:20 benchable6 joined #moarvm
04:20 unicodable6 joined #moarvm
04:20 bisectable6 joined #moarvm
04:20 evalable6 joined #moarvm
04:20 committable6 joined #moarvm
04:20 releasable6 joined #moarvm
04:20 squashable6 joined #moarvm
04:20 statisfiable6 joined #moarvm
04:53 quotable6 joined #moarvm
04:53 nativecallable6 joined #moarvm
04:53 benchable6 joined #moarvm
04:53 greppable6 joined #moarvm
04:53 coverable6 joined #moarvm
04:53 bloatable6 joined #moarvm
04:53 evalable6 joined #moarvm
04:53 committable6 joined #moarvm
04:53 bisectable6 joined #moarvm
04:53 unicodable6 joined #moarvm
04:53 releasable6 joined #moarvm
04:53 squashable6 joined #moarvm
04:54 statisfiable6 joined #moarvm
05:00 Ven`` joined #moarvm
05:25 AlexDaniel joined #moarvm
05:55 brrt joined #moarvm
05:58 domidumont joined #moarvm
06:04 bisectable6 joined #moarvm
06:09 bisectable6 joined #moarvm
06:13 bisectable6 joined #moarvm
06:13 bisectable6 joined #moarvm
06:18 nwc10 good *, jnthn
06:18 nwc10 t/spec/S17-supply/syntax.t does seem to complete (is this an off-topic-for-this-channel observation?)
06:18 nwc10 It just takes some time
06:18 nwc10 Files=1213, Tests=75446, 21022 wallclock secs (29.89 usr  6.44 sys + 84927.03 cusr 17246.28 csys = 102209.64 CPU)
06:22 brrt1 joined #moarvm
06:26 brrt joined #moarvm
06:27 brrt good * #moarvm
06:27 nwc10 good *, brrt
06:30 samcv good * brrt, nwc10
06:31 brrt good hi nwc10 samcv
06:32 brrt .tell nine i've been meaning to make all JIT errors nonfatal
06:32 yoleaux brrt: I'll pass your message to nine.
06:33 brrt because if they're due to memory corruption, we'll just crash anyhow, and if they're due to unexpected input, that might mean some assumption was invalidated, and a 'graceful degradation' without JIT is better than crashing because no JIT
06:35 Geth ¦ MoarVM: 394cdd260f | (Samantha McVey)++ | src/strings/ops.c
06:36 Geth ¦ MoarVM: Used FSA allocator for jump table in KMP index algorithm
06:36 Geth ¦ MoarVM:
06:36 Geth ¦ MoarVM: We can save cpu cycles by using FSA, since we just end up freeing it as
06:36 Geth ¦ MoarVM: soon as the function returns.
06:36 Geth ¦ MoarVM: Also, since the loop is duplicated, turn it into a #define so we can
06:36 Geth ¦ MoarVM: use the same code with different functions for accessing the Haystack.
06:36 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/394cdd260f
06:36 Geth ¦ MoarVM: c68ca49655 | (Samantha McVey)++ | 4 files
06:36 Geth ¦ MoarVM: Download all emoji files and generate UCD for emoji 4+5
06:36 Geth ¦ MoarVM:
06:36 Geth ¦ MoarVM: Since emoji names are not guaranteed to be unchanged, we now
06:36 Geth ¦ MoarVM: download past emoji versions as well to ensure we don't break
06:36 Geth ¦ MoarVM: compatibility in the future. This isn't expected to cause any
06:36 Geth ¦ MoarVM: issues, just a few extra entries. For now the only thing that
06:36 Geth ¦ MoarVM: may have changed is "man in business suit levitating: skin tone"
06:36 Geth ¦ MoarVM: is now "man in suit levitating: skin tone".
06:36 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/c68ca49655
06:37 samcv that was annoying. regarding the emoji changing names, but it's fixed now we won't have to worry about it when regenerating
06:37 domidumont joined #moarvm
07:00 brrt joined #moarvm
07:04 zakharyas joined #moarvm
08:01 bloatable6 joined #moarvm
08:01 quotable6 joined #moarvm
08:01 benchable6 joined #moarvm
08:01 committable6 joined #moarvm
08:01 nativecallable6 joined #moarvm
08:01 releasable6 joined #moarvm
08:01 coverable6 joined #moarvm
08:01 evalable6 joined #moarvm
08:01 greppable6 joined #moarvm
08:01 bisectable6 joined #moarvm
08:01 unicodable6 joined #moarvm
08:01 squashable6 joined #moarvm
08:01 statisfiable6 joined #moarvm
08:06 leont joined #moarvm
08:07 brrt joined #moarvm
08:17 robertle joined #moarvm
08:39 eater left #moarvm
08:43 lizmat jnthn: this was just on #perl6: <+yoleaux>08:27Z <sena_kun> lizmat: hi! there is a rakudo regression for cro, that gives me "Serialization Error: missing static code ref for closure '' (src/Perl6/World.nqp:2217)". I am not sure how bad it is, but I hope it is not. ping me for a way to reproduce(or better .tell) if it's obscure enough. thanks.
08:44 lizmat do you see that also?
08:52 brrt joined #moarvm
09:07 evalable6 joined #moarvm
09:11 zakharyas joined #moarvm
09:30 jnthn lizmat: It started showing up in our Travis, for master only
09:30 jnthn (we build against Rakudo 2017.08, 2017.09, and master...only master fails this way)
09:30 lizmat so, is it something I did with the BUILDALL refactor?
09:31 jnthn lizmat: It feels like the most likely candidate
09:31 jnthn I didn't dig into it myself yet
09:32 lizmat and this is occurring with HEAD in rakudo?
09:32 lizmat I removed the $/ hack, and that fixed it for dogbert
09:32 jnthn Apparently so
09:32 lizmat :-(
09:45 evalable6 joined #moarvm
09:58 timotimo aye, get it locally too :|
10:05 evalable6 joined #moarvm
10:05 timotimo so the code it points at is the $compiler_thunk inside fininsh_code_object
10:06 timotimo i'm not sure at all how all of this works :)
10:07 timotimo i didn't even know code has a @compstuff attribute
10:15 timotimo interesting. i made the buildplan compiling stuff disabled and i still get the error in question
10:16 * timotimo bisects a little bit
10:21 lizmat ok, I found the cause of the failure in S32-str/sprintf.t
10:22 lizmat somehow we wind up with a BOOTInt and a BOOTNum in the attributes of X::Str::Sprintf::Directives::Count
10:30 timotimo incriminatingly checking out the commit right before the very beginning of the buildall work makes it work again
10:31 timotimo now building the commit before $/ was added to the compiler services
10:39 lizmat joined #moarvm
10:41 timotimo the commit that adds $/ gets me a different error, which is the missing serialization thingie for MVMContext
10:41 timotimo ah, i didn't pay enough attention
10:50 timotimo yeah, removing the $/ gets me back the missing code ref problem
10:50 bartolin joined #moarvm
10:50 timotimo i'd have to modify all commits in between to not use $/ in the compilation services
10:53 timotimo makes me wonder, though. what does Cro::HTTP do that rakudo and spectests don't
10:56 bartolin a tiny bit off-topic, but since i've just spotted the discussion about a serialization error: since commit 9837687d93 the jvm build fails during stage jast with a similiar error: "Serialization Error: could not locate static code ref for closure"
11:01 lizmat hmmm... the block is added to the SC, but maybe the method isn't ??
11:06 evalable6 joined #moarvm
11:10 timotimo i'm not really familiar with the ins and outs of serialization problem debugging
11:12 * lizmat neither  :-(
11:15 timotimo i'm glad that your buildall work has gotten so much further than mine :)
11:16 * lizmat too
11:16 lizmat it was quite a steep learning curve
11:16 lizmat but I think I learned a lot from it
11:47 dalek joined #moarvm
11:47 SourceBaby joined #moarvm
11:56 domidumont joined #moarvm
11:59 MasterDuke timotimo: btw, by backing out a bunch of the changes i made (and then rediscovering that problem with not supporting FSA_SIZE_DEBUG in realloc anymore) my branch now dies in stage parse
12:00 timotimo which changes were you backing out? i assume the ones that use FSA for the chars buffers?
12:01 MasterDuke yeah, pretty much everything in decode_stream.c and Decoder.c
12:01 timotimo right
12:04 lizmat jnthn: re not having a compiler at runtime: getting one would be as easy as nqp::getcomp('perl6') no?
12:05 timotimo the nativecall stuff already did it like that
12:05 timotimo but you don't have the compilation services
12:07 brrt by the way, do we have something pack-like in perl6
12:07 lizmat nqp::p6bindattrinvres(nqp::create(Rakudo::Compiler::Services),Rakudo::Compiler::Services,'$!compiler'),nqp::getcomp('perl6') ???
12:08 brrt by the by the way, i honestly don't care about the language name discussion, but can't we just AB test it
12:08 lizmat brrt: there's experimental pack/unpack, and there's a module PackUnpack in the ecosystem
12:08 lizmat which badly needs some love
12:08 brrt i don't like not having a consistent name for the language
12:08 brrt aha, got it
12:09 lizmat timotimo: I think the main problem is not having a $*W at runtime  :-)
12:09 brrt do we want to improve on pack, i'm thinking
12:09 MasterDuke timotimo: btw, would i be correct in assuming that don't need to use the MVM_fixed_size_*_at_safepoint functions for these MVMString changes, since they aren't being modified concurrently (unlike the VMArray change)?
12:10 timotimo yeah, that should work without a safepoint
12:11 timotimo it should always be safe to free stuff inside of gc_free
12:11 MasterDuke brrt: isn't the AB test kind of happening right now with the inconsistent naming? whichever ends up getting used the most wins?
12:11 brrt there's no metrics to it though
12:12 brrt i'm going to have to squint pretty hard before i'm going to see 'putting random stuff out there' as a controlled experiment
12:14 MasterDuke timotimo: if you're curious, this has the backtrack i'm seeing right now https://gist.github.com/MasterDuke17/f579615e8d6eea1ae6a2f938b0b23750
12:14 MasterDuke oh, and my branch has been force pushed to a bunch
12:14 brrt that came out harsher than i meant it
12:15 brrt if i'm being realistic though, the whole fact that we have the discussion means that perl6 is losing, or has lost, some power as a 'rallying flag'
12:15 brrt which is probably due to the continuing bad reputation of perl in the wider developer community
12:15 MasterDuke brrt: i'd say you're correct though, it hasn't been controlled in any way
12:23 lizmat jnthn: isn't this a race condition?
12:23 lizmat nqp::setmethcacheauth($obj, 0);
12:23 lizmat %!cache := {};
12:32 domidumont joined #moarvm
12:39 timotimo MasterDuke: merge my FSA valgrind error support branch and try again under valgrind
12:40 MasterDuke heh, just started it (gonna take a while to run) and commented on your PR
12:40 MasterDuke started it with your branch merged
12:41 timotimo cool, lemme look
12:41 timotimo ah good point
12:44 Geth ¦ MoarVM/fsa_valgrind_error_support: 235f6147dd | (Timo Paulssen)++ | src/core/fixedsizealloc.c
12:44 Geth ¦ MoarVM/fsa_valgrind_error_support: use %lu instead of %d, put in missing output in one case
12:44 Geth ¦ MoarVM/fsa_valgrind_error_support:
12:44 Geth ¦ MoarVM/fsa_valgrind_error_support: MasterDuke17++
12:44 Geth ¦ MoarVM/fsa_valgrind_error_support: review: https://github.com/MoarVM/MoarVM/commit/235f6147dd
12:48 MasterDuke ugh. stage parse in valgrind is slow...
12:49 MasterDuke and pretty sure i complied with --optimize=0, that's not gonna help
12:51 timotimo hah
12:51 timotimo yeah
13:01 MasterDuke timotimo: no extra output from valgrind
13:01 timotimo oh
13:02 timotimo did you configure with --valgrind?
13:02 MasterDuke arg, just saw that
13:02 MasterDuke gonna recompile
13:03 timotimo that step is fast at least :)
13:04 MasterDuke yup, stage parse running again
13:15 MasterDuke timotimo++ gist updated
13:16 timotimo ok, so the normalizer uses malloc
13:16 timotimo this is really helpful, isn't it! <3
13:16 MasterDuke yep!
13:23 timotimo now i just need to find a good place to put "search for things pointing at this" into moarvm :)
13:35 timotimo bbl
13:37 leedo joined #moarvm
13:41 domidumont joined #moarvm
14:00 domidumont joined #moarvm
15:04 brrt joined #moarvm
15:24 brrt1 joined #moarvm
15:25 leont joined #moarvm
15:57 leont joined #moarvm
16:09 committable6 joined #moarvm
16:33 MasterDuke timotimo: wow, `make m-test` actually passes, though `make m-spectest` has many many segvs
16:33 timotimo well, it's improvement!
16:47 leont joined #moarvm
17:02 AlexDaniel joined #moarvm
17:23 domidumont joined #moarvm
17:39 robertle joined #moarvm
17:42 AlexDaniel joined #moarvm
18:12 Geth ¦ MoarVM: coypoop++ created pull request #715: Correct typo in comment
18:12 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/pull/715
18:27 Geth ¦ MoarVM: fc4285ab87 | coypoop++ (committed by timo) | src/profiler/instrument.c
18:27 Geth ¦ MoarVM: Correct typo in comment
18:27 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/fc4285ab87
19:10 MasterDuke timotimo: gist updated with another valgrind log, but i'm not following what's happening. afk for a bit, but any comments appreciated
20:08 timotimo MasterDuke: the normalizer code that you use the fsa for there doesn't fill up the buffer completely, so the number it passes as num_graphs in the string is smaller than the actual number of graphemes in the buffer, so later the number passed for freeing is wrong
20:08 timotimo you'd probably best realloc at the end
20:23 evalable6 joined #moarvm
20:37 brrt joined #moarvm
20:55 zakharyas joined #moarvm
21:24 quotable6 joined #moarvm
21:24 unicodable6 joined #moarvm
21:24 bisectable6 joined #moarvm
21:24 benchable6 joined #moarvm
21:24 bloatable6 joined #moarvm
21:24 evalable6 joined #moarvm
21:24 greppable6 joined #moarvm
21:24 nativecallable6 joined #moarvm
21:24 releasable6 joined #moarvm
21:24 coverable6 joined #moarvm
21:24 squashable6 joined #moarvm
21:24 statisfiable6 joined #moarvm
21:39 evalable6 joined #moarvm
22:30 lizmat and another Perl 6 Weekly hits the Net: https://p6weekly.wordpress.com/2017/10/02/2017-40-unicode-granted/
22:35 bisectable6 joined #moarvm
22:54 bisectable6 joined #moarvm
22:57 timotimo nice, lizmat++
23:04 bisectable6 joined #moarvm
23:04 quotable6 joined #moarvm
23:04 nativecallable6 joined #moarvm
23:04 evalable6 joined #moarvm
23:04 bloatable6 joined #moarvm
23:04 greppable6 joined #moarvm
23:04 releasable6 joined #moarvm
23:04 benchable6 joined #moarvm
23:04 bisectable6 joined #moarvm
23:04 coverable6 joined #moarvm
23:04 unicodable6 joined #moarvm
23:04 committable6 joined #moarvm
23:04 squashable6 joined #moarvm
23:04 statisfiable6 joined #moarvm
23:50 evalable6 joined #moarvm

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary