Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2015-10-28

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

All times shown according to UTC.

Time Nick Message
00:46 tokuhirom joined #moarvm
00:51 colomon joined #moarvm
01:51 ShimmerFairy joined #moarvm
02:33 tokuhirom joined #moarvm
02:38 timotimo i've got the Homebrew Launcher on my new nintendo 3ds now, so i can try to port moarvm to it! :P
02:39 * timotimo tries to get sleep now
07:18 FROGGS joined #moarvm
07:27 leont joined #moarvm
07:39 domidumont joined #moarvm
07:53 domidumont joined #moarvm
09:41 kjs_ joined #moarvm
10:04 FROGGS joined #moarvm
10:22 FROGGS joined #moarvm
10:31 brrt joined #moarvm
10:44 brrt \o
10:49 jnthn o/ brrt
10:51 brrt \o jnthn
10:51 brrt i've figured out a new bug in the JIT :-)
10:51 timotimo woo!
10:51 tokuhirom joined #moarvm
10:52 brrt yes. apparantly the size of AND is not propagated to NZ
10:55 jnthn In even-moar-jit, I assume? :)
10:56 zakharyas joined #moarvm
10:58 brrt aye
10:58 nwc10 sadly AND doesn't appear to be a 3 letter code for Andorra else there might be punning potential with the NZ
10:58 brrt sorry, no puns for you today
10:59 nwc10 oh, excellent it is
10:59 brrt actually, AND not propagating a size is definitely a bug, since AND is just binary arithmetic, not condition-flagging
10:59 nwc10 but it would need to be NZL.
10:59 brrt in AT&T notation that's just NZ-long
10:59 brrt :-P
11:06 brrt jnthn: are you planning to go to FOSDEM?
11:07 jnthn brrt: Not sure at the moment. Having to keep my travel down for the moment.
11:07 brrt i suppose that is a good idea, yes
11:08 jnthn (For health reasons :/)
11:08 brrt it is understood :-)
11:08 brrt much preferable to have a healthy jnthn in prague than a sick jnthn spread over the world
11:10 jnthn Indeed.
11:13 brrt hmm.. maybe you can advice me on something though
11:13 brrt i kind of have two topics that I may want to present
11:13 brrt one is about the JIT
11:14 brrt from the perspective of how we aimed to keep it simple so that it could be implemented in a reasonable amount of time
11:14 brrt I mean, JIT compilers are basically known as monsterprojects
11:14 brrt that no sane team should embark on
11:15 brrt but i don't think we've had that experience, and I think it'd be interesting to show why
11:15 brrt on the other hand, maybe people are getting bored by the JIT
11:18 brrt the second topic is about how tech people in general and software developers in particular rarely, if ever, thing of their work as systems, and how that's hurting us
11:18 brrt so that's not about perl at all
11:18 brrt or JITs
11:19 brrt people pick technology before they design the system. and with technology they then force themselves into a particular system architecture, and very often that technology is, shall we say, suboptimal
11:19 brrt or 'wildy and embarrasingly wrong'
11:23 brrt do you think any of these topics is worth sharing?
11:23 * jnthn talks plenty on a couple of the architecture courses he teaches about how we love to pick tools/languages/frameworks right at the start of a project, but that this means we're doing at the point when we're at maximum ignorance about what we're actually building
11:24 jnthn And so are in a bad place to make such choices.
11:28 brrt right, that's basically what i mean :-)
11:28 brrt and the thing is.. in env sci. we're also very interested in technology, but we're more interested in 'what does this technology *do* with it's environment'
11:29 brrt and so we use a pretty systematic way of evaluating the functions and features and requirements, and only then start looking at specific implementations
11:29 brrt and what i've found is when applied to IT that works really very well
11:32 brrt brb
11:33 jnthn *nod*
11:33 jnthn It's interesting, dunno how to make it fit so easily into the Perl track :)
11:35 jnthn ""
11:35 jnthn oops
11:48 kjs_ joined #moarvm
11:55 kjs_ joined #moarvm
12:24 lucasb_ joined #moarvm
12:24 brrt joined #moarvm
12:24 lucasb_ I don't know how much the 3 dependencies libuv, dynasm, and dyncall are used in moarvm code. I'm just reminding that the 3 are outdated in moar's repo. I don't know if there is time to update them before xmas, or if it's even relevant to do it.
12:24 timotimo there is surely time before christmas to update
12:24 timotimo how far are we behind?
12:25 lucasb_ I think libuv is the most important. I know nothing about dynasm,dyncall
12:25 lucasb_ libuv is at v1.7.5; moar's libuv is 1.0 I think
12:29 brrt hi lucasb_. libuv could well be outdated. we don't lightly undertake an update though
12:30 timotimo we're that far behind, huh?
12:30 brrt although iirc i did create a 1.6 branch some time go
12:30 brrt ago
12:30 timotimo didn't we recently get an update?
12:30 timotimo yeah, i remember that
12:30 timotimo i thought it had been merged
12:30 brrt i'm not sure if that ever got merged
12:30 brrt anyway. DynASM cannot be outdated for the simple reason that we maintain our own fork
12:31 brrt (it's not normally a separate project)
12:31 brrt dyncall, i don't know about that
12:31 brrt iirc FROGGS did some work to 'unbundle' that for maintainers
12:31 lucasb_ I mean MoarVM/dynasm has a newer revision MoarVM's submodule
12:32 brrt well, don't use that newer revision
12:32 lucasb_ but I think is few code
12:32 lucasb_ oh, ok
12:32 brrt it is the way it is for a reason :-)
12:32 lucasb_ thanks for the explanation, brrt++
12:33 brrt specifically, i hacked dynasm to support dynamic addressing for the x64 extended registers. i've had many problems with that.
12:33 lucasb_ is it extracted from the luajit project? I see there is a LuaJIT 2.1.0-beta1 from august
12:33 brrt yes. i don't think they have had many dynasm updates since 2.0
12:33 brrt i try to keep up with that, but not entirely succesfully
12:34 brrt i think you can create a new extraction by git tree-filter or something
12:39 brrt jnthn: yeah, i think you're right about that. doesn't really fit within perl
12:40 flussence fwiw I've been building moar against system libuv(1.7) and libtommath for months now and it's worked fine for me
12:44 lucasb_ flussence: That's interesting to hear. I'll try that myself. But if I hit some problem I'll never know if it was my fault. I see that the last libtommath
12:45 lucasb_ ... the last libtommath release is 0.42, but there is newer commits in its github repo
12:46 brrt hmmm
12:46 brrt lucasb_: i would personally recommend against just checking out the latest and greatest github commits
12:47 brrt unless there are specific bugs or issues that have been fixed
12:47 brrt i mean, many of the commits in moar end up broken at the end
12:47 FROGGS the libtommath repo contains patches made by moritz, me and others...
12:48 brrt oh really?
12:48 brrt well, i didn't know that
12:48 FROGGS yes, in their development branch
12:48 FROGGS which is currently their default
12:48 lucasb_ brrt: I think I'm a little OCD about having the lastest thing. Thanks for the advice :)
12:49 lucasb_ *latest
12:57 brrt that is understandable :-)
13:03 jnthn Mmmm...chili win :)
13:03 jnthn brrt: Yeah; the JIT would more
13:06 brrt ok then :-)
13:06 brrt it's always possible to reject my proposals
13:06 brrt or not show up
14:08 kjs_ joined #moarvm
14:45 brrt it appears my nz and fix doesn't... fix it :-(
14:45 brrt well, it fixes the missing check, not the segv
14:52 dalek MoarVM: a4c5058 | jnthn++ | src/strings/normalize.h:
14:52 dalek MoarVM: All Latin-1 controls are normalization terminators
14:52 dalek MoarVM:
14:52 dalek MoarVM: With the exception of \r if we're doing NFG, since we'll need that to
14:52 dalek MoarVM: become a grapheme if followed by \n.
14:52 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a4c5058392
14:52 dalek MoarVM: 808b772 | jnthn++ | src/strings/normalize.h:
14:52 dalek MoarVM: Stop fast-pathing \r when computing NFG.
14:52 dalek MoarVM:
14:52 dalek MoarVM: Since we'll need \r\n to become a single grapheme.
14:52 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/808b772e66
14:52 jnthn Curiously enough, a4c5058 actually busts a spectest
14:53 jnthn Looks like 'cus of a badass umption in Rakudo's Str.perl
14:54 jnthn Gets me down to 70 fails in grapheme-break.t from 83, though :)
14:54 brrt \o/
14:57 tokuhirom joined #moarvm
15:37 jnthn Now got a patch getting me down to 57
15:44 dalek MoarVM: cc60af3 | jnthn++ | src/strings/normalize.h:
15:44 dalek MoarVM: Slight clarification in a comment.
15:44 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/cc60af3b29
15:44 dalek MoarVM: 1ce151f | jnthn++ | src/strings/normalize.c:
15:44 dalek MoarVM: Full handling of Control in grapheme breaks.
15:44 dalek MoarVM:
15:44 dalek MoarVM: Covers a bunch more cases where we should break into graphemes, but
15:44 dalek MoarVM: wrongly did not in the past.
15:44 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/1ce151f6e3
16:19 FROGGS joined #moarvm
16:59 tokuhirom joined #moarvm
17:27 dalek MoarVM: 816c8b6 | jnthn++ | / (5 files):
17:27 dalek MoarVM: Introduce an NFG quickcheck property and use it.
17:27 dalek MoarVM:
17:27 dalek MoarVM: This plays the same role as the other normalization form quickcheck
17:27 dalek MoarVM: properties, but also incorporates characters that may serve as
17:27 dalek MoarVM: grapheme extenders despite having a CCC of zero.
17:27 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/816c8b62a3
17:27 dalek MoarVM: deedb4b | jnthn++ | src/strings/normalize.c:
17:27 dalek MoarVM: Update a comment with a note on NFG.
17:27 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/deedb4b9a2
17:33 nwc10 jnthn: ASAN still likes you (or maybe it just tolerates you - I guess it's more cat-like than dog-like)
17:33 nwc10 but have not yet got to that laest pair of commits
17:33 nwc10 the problem I mentioned some days ago on channel, I can't now recreate
17:33 nwc10 I could reliably recreate it
17:33 nwc10 no idea what caused it, or what fixed it
17:42 FROGGS jnthn++
17:44 FROGGS nwc10: I like to think that the relationship between ASAN and the jnthn is more like the one of Yoda and The Force™
17:44 FROGGS in short, ASAN believes in jnthn :o)
18:04 kjs_ joined #moarvm
18:15 leont joined #moarvm
18:27 jnthn Didn't actually do the most fiddly bit yet though :)
18:29 jnthn And it remains to be seen what "\r\n".chars returning 1 (and similar for .substr) will do
18:29 jnthn (To the tests/ecosystem)
18:31 jnthn Anyway, food's ready :)
18:34 leont Food is good, I like food!
18:51 tokuhirom joined #moarvm
19:33 kjs_ joined #moarvm
19:55 vendethiel joined #moarvm
20:18 ghostin joined #moarvm
20:20 kjs_ joined #moarvm
20:22 ghostin left #moarvm
20:34 colomon joined #moarvm
20:42 rarara__ joined #moarvm
20:43 lizmat joined #moarvm
20:43 rarara__ I would like to ask a question about MVM_string_substring:
20:43 rarara__ what is a single stranded string?
20:43 rarara__ in which case we memcpy?
20:44 rarara__ I'm trying to understand why Str.split is so slow; it can be either because of the simple cycle inside it, or because of substring
20:48 rarara__ well, prob because of the cycle.
20:53 tokuhirom joined #moarvm
21:14 dalek MoarVM/even-moar-jit: 47f8f08 | brrt++ | src/jit/ (4 files):
21:14 dalek MoarVM/even-moar-jit: Distinguish simple and end-of-block branches
21:14 dalek MoarVM/even-moar-jit:
21:14 dalek MoarVM/even-moar-jit: End-of-block branches can have a GC syncpoint, while
21:14 dalek MoarVM/even-moar-jit: regular branches had best not done this, given that it
21:14 dalek MoarVM/even-moar-jit: trips up the register allocation.
21:14 dalek MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/47f8f08247
21:14 dalek MoarVM/even-moar-jit: 9e5d7ed | brrt++ | src/jit/x64/tiles.dasc:
21:14 dalek MoarVM/even-moar-jit: Remove useless casting of small values
21:14 dalek MoarVM/even-moar-jit:
21:14 dalek MoarVM/even-moar-jit: If a cast is necessary it will be inserted by the expression
21:14 dalek MoarVM/even-moar-jit: tree compiler; it should not be added by the code generator.
21:32 colomon joined #moarvm
21:45 zakharyas joined #moarvm
21:49 kjs_ joined #moarvm
21:54 Ven joined #moarvm
22:00 Ven joined #moarvm
22:24 kjs_ joined #moarvm
22:41 Hotkeys joined #moarvm
22:41 Hotkeys hey
22:42 Hotkeys jnthn, I'm having an issue with \r\n and such in a test and was wondering if you think it's related to the stuff you've been doing with that stuff http://pastebin.com/UqQWwPX4
22:43 Hotkeys it was suggested I ask you here
22:44 TimToady jnthn is hopefully in bed right now, given he lives in Prague
22:53 Hotkeys oh
22:53 Hotkeys whoops
22:54 psch Hotkeys: afair, having byte-less \r\n seamlessly translate to grapheme-level \n is something jnthn++ already has on his list
22:54 psch err, s/less/level/
22:55 Hotkeys alright

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