[Coke] jnthn: should I start my build over now? ;) 00:00
[Coke] is not 00:02
00:05 harrow joined 00:35 jnap joined 02:02 jnap joined
[Coke] another moar run: 25824 passes. 02:18
r: say 25824 / 28346 02:19
camelia rakudo-parrot 5669b2, rakudo-jvm 5669b2: OUTPUT«0.911028␤»
[Coke] "that escalated quickly"
down to 58 tests aborting. 02:20
japhb_ 91.1% ?! Holy cow! 02:28
diakopter well in terms of total coverage of the synopses it's probably much lower ;) 02:29
lue And there's still the issue of not being able to install r-m outside the repo... 03:07
s/install/install and use/
03:43 cognominal joined 04:15 cognominal joined 04:24 jnap joined 05:17 lue joined 05:24 jnap joined 05:30 ggoebel1111 joined 05:33 dagurval_ joined 05:34 woolfy1 joined 05:35 nwc10_ joined 05:36 arnsholt joined, FROGGS joined, cognominal joined 05:37 benabik joined, camelia joined 05:48 nwc10 joined 05:49 jnthn joined, benabik_ joined 06:25 FROGGS[mobile] joined, jnap joined 07:26 jnap joined
nwc10 jnthn: lots-of-GC run has reached tests 07:57
08:27 jnap joined 08:34 odc joined 08:42 FROGGS joined
masak \o/ 09:15
09:27 jnap joined 10:12 eternaleye joined 10:26 FROGGS[mobile] joined 10:28 jnap joined
jnthn We're on course to pass 90%?! 10:30
Whoa...
I'd hoped the Jan release would manage at least 75%... :) 10:31
moritz still plenty of time to botch it until then :-)
jnthn :P 10:32
OK, new goal can be "at least 95%" :P 10:33
Also, should really resolve the OSX build, and make "make install" work, as lue mentions. 10:34
FROGGS and the "use from outside"
jnthn Well, that's part of make "make install" work...it's not a very good install if it doesn't work from outside the install directory :P 10:35
Or build directory, or whatever.
FROGGS you are pedantic :P
moritz recompiles moar-support on his $work machine, after two weeks of absence 10:40
masak jnthn: is "make `make` work without `make install`" also on the todo list? :) 10:56
jnthn: as in, ./moar doesn't find libmoar.so unless `make install` has been run, for some reason.
jnthn masak: Works fine for me... 10:58
masak: And didn't hear anybody else mention that... 10:59
masak: Wait...are we talking about MoarVM itself or Rakudo?
masak MoarVM itself. 11:02
jnthn oh...
Well, also works for me, so... :)
jnthn leaves that to Linux folks :) 11:03
FROGGS is not even listening... *lalalalaalaa*
jnthn bah :P 11:05
So, is there anybody here who knows enough about OSX linking to fix that side of things? :) 11:07
masak FROGGS: tvtropes.org/pmwiki/pmwiki.php/Main...gBySinging :) 11:08
FROGGS good that somebody put all that information in a wiki :o) 11:11
masak serious warning: that wiki is *big*, and very very interesting. 11:12
jnthn
.oO( unless you never watch TV, then you wonder...what the heck... :) )
masak jnthn: it also covers movies, books, commercials, news, comics, radio, tabletop games, theater, and video games. 11:14
jnthn o.O
11:29 jnap joined
dalek arVM: c63263f | jnthn++ | src/6model/reprs/MVMCode. (2 files):
Preparations for supporting state variables.
11:30
arVM: e022908 | jnthn++ | src/core/frame.c:
Implement state variable save/restore.
11:43
[Coke] gist.github.com/coke/8250608/ is updated. the lower segfault count before was probably due to the shorter time limit I ran the tests under, so they probably reported as Killed on the last round. 11:45
feather.perl6.nl/~coke/moar.out updated with last night's off-schedule run. 11:54
diakopter: you did the last unicode fix: lots of failures in S05-mass/properties-block.t and S05-mass/properties-derived.rakudo.moar 11:56
291 fails with "Don't match.*related" 11:57
r: say 291 / 2363 # percent those fails of total 11:59
camelia rakudo-parrot 5669b2, rakudo-jvm 5669b2: OUTPUT«0.123149␤»
dalek arVM: 02dbfc3 | jnthn++ | src/core/frame. (2 files):
Add flag for state init, and space for HLL flags.

The latter will be used by Rakudo for flagging PRE, FIRST, etc.
12:01
[Coke] morning jnthn++ 12:05
jnthn o/ [Coke] 12:06
Thanks for latest report. seems S03-junctions/autothreading.t was regressed on...think I know why 12:07
(We did pass it at one point...)
12:30 jnap joined
dalek arVM: be4fdfa | jnthn++ | / (6 files):
Stub continuation ops.
12:46
FROGGS p: say "föö".encode("ISO-8859-1").WHAT # jnthn, this thing should have a slot_type of MVM_ARRAY_I8, right? 12:47
camelia rakudo-parrot 5669b2: OUTPUT«(Blob[uint8])␤»
jnthn FROGGS: Well, or U8...
FROGGS because slot_type is 2, which is MVM_ARRAY_I64
jnthn Oh...fail
FROGGS .oO( there is no U in Team America )
where would that wants fixing? 12:48
jnthn Depends what's wrong, really...
It could actually be that P6int doesn't yet pay attention to the size passed to it as part of repr composition... 12:49
FROGGS my native uint8 is repr('P6int') is Int is nativesize(8) is unsigned { }
hmm
P6int always does this at line 44: spec.bits = sizeof(MVMint64) * 8; 12:51
jnthn Ah, then yeah, that's what is missing, I guess. 12:52
Take a look at the Parrot or JVM impls of P6int for inspiration.
FROGGS yeah, currently doing that :o) 12:55
13:30 jnap joined
arnsholt FROGGS: The P6int code make sense to you? I think I implemented parts of the Parrot one at least 13:42
FROGGS arnsholt: sort of
currently I try to understand why its compose function is not get called 13:43
arnsholt That's odd. That's pretty much only NQP code I think, and there's lots of stuff that'll break if REPR compose doesn't work 13:45
FROGGS gist.github.com/FROGGS/04f5ffded5f1515f236d
jnthn FROGGS: Sure looks like it should be called... 13:46
FROGGS: It's certainly being put into the REPR table?
FROGGS: Oh...when are you expecting it to be called? 13:47
FROGGS: compose is called in REPR compilation
FROGGS: The repr data then is serialized/deserialized
See the patch I did for VMArray yesterday on this topic.
FROGGS I dunno, when I run: perl6-m -e 'my int8 $x' ?
k
jnthn No, compose happens during setting compilation.
If you do that I bet you'll see your debug prints.
FROGGS ohh 13:48
jnthn So, serialize_repr_data is needed, I think
[Coke] I posted gist.github.com/coke/8250608/#file-moarborts-p5 , which is the script I'm using to generate the failure categorizations. Hopefully it won't need to be around too long to be cleaned up.
jnthn And corresponding deserialize
[Coke]: Hopefully. Been eating my way through some of the errors in the latest one :) 13:49
[Coke]: How long until today's run starts? :)
[Coke] host machine says 13:49, run scheduled to start at 14:30
jnthn k :) 13:50
[Coke] and you've already fixed a few since last intraday run
jnthn yes :)
In the 100s, hopefully
[Coke] looks like moar stat might be dying on missing stuff rather than returning fales. 13:52
*False
t/spec/S16-filehandles/filetest.rakudo.moar
er.
ok 'doesnotexist'.IO !~~ :r, "~~:r returns false on non-existent directories"; 13:53
looks like ~~:d worked, though.
FROGGS jnthn: was it intentional that lines 828 and 835 are identical? github.com/MoarVM/MoarVM/commit/56...601d42R828 13:57
jnthn FROGGS: oops...no 14:00
835 can go
FROGGS k
jnthn FROGGS++
dalek arVM: cd5d7bd | (Tobias Leich)++ | src/6model/reprs/MVMArray.c:
remove duplicate ASSIGN_REF
14:02
FROGGS brb & 14:07
14:12 jnap joined 14:24 FROGGS joined
nwc10 jnthn: GC torture passed all NQP tests 14:38
has SEGVd in Rakudo build, so must be a(nother) fromspace read, but not yet figured out what
I forget whether I lobbed a kludge-like "not ideal at all" patch to IRC to the list for OS X. I stole what Perl 5 does. 14:39
diakopter stealer++ 14:41
jnthn nwc10: (torture) yay 14:43
nwc10: If the OS X patch makes things workier I'll happily take it... 14:44
nwc10 I haven't actually had lunch yet :-) 14:45
jnthn only just did... :)
nwc10 OK, technically, I've had half a lunch, at the hospital, before we made our escape.
FROGGS O.o
FROGGS hopes everybody is well 14:46
nwc10 we think that they are 14:48
dalek arVM: f6d723a | jnthn++ | src/core/hll. (2 files):
Store HLL exit handler.
14:50
arVM: d96afd4 | jnthn++ | / (6 files):
Add has_exit_handler to frame; bytecode updates.
[Coke] notes that the niecza run is still only at S04-statements/return.t 14:51
(still some time before rm starts.)
jnthn [Coke]: You snapshotted the Moar etc. you'll run with by now, though? :) 14:52
[Coke]: Or it builds at the start of the run? 14:53
s/builds/checks out/
[Coke] it grabs spec at the beginning once, then grabs each repo as it does that repo. pugs/niecza/r.m/r.p/r.j
I'm lazy, this keeps things self contained.
jnthn k :) 14:54
[Coke] ugh, feels like -20ºC out.
jnthn Wow. That's properly cold. :) 14:55
diakopter it's 0C here
in the daytime!
[Coke] temps will hit positive C again on Friday.
jnthn diakopter: lame :P 14:56
FROGGS yay, sized P6ints compile now! (at least nqp) 15:13
jnthn yay 15:14
FROGGS jnthn: makes sense to do that with nums too, right? 15:18
jnthn FROGGS: aye
15:19 jnap joined
FROGGS hmpf, it compiles fine, but does not work :o( 15:24
I inserted debug stuff now in compose and reconfigure rakudo 15:27
ahh, I see it 15:29
jnthn Man, this exit handler stuff is fiddly...
FROGGS in compose() I am looking for a key "int" in that info hash, and that seems to be wrong... 15:34
it seems to be "integer" in parrot... 15:35
jnthn The repr compose protocol is spec'd in some doc in docs/ in NQP 15:36
FROGGS you rtfm'd me?
:P
diakopter wtfm, too ;) 15:37
jnthn :P
FROGGS cool, there is stuff
jnthn I think the section is actually called "integer" on all backends, anyways...
dalek arVM: becf861 | jnthn++ | lib/MAST/Nodes.nqp:
Add missing has_exit_handler method.
15:39
arVM: a2d2be3 | jnthn++ | src/core/exceptions.c:
Refactor in preparation for exit handler support.

Factors all the unwind logic out, and ensures we do it after all the other cleanup work, so that we're ready to head back into the interp if we need to run a LEAVE, etc.
arVM: f3f3e38 | jnthn++ | src/core/ (3 files):
Bring all unwind logic into frame.c.
15:44 ggoebel1111 joined 15:45 jnap joined
timotimo oooh so many failing unicode tests 16:15
diakopter there are? 16:16
timotimo yup
diakopter listed where
timotimo feather.perl6.nl/~coke/moar.out
FROGGS wth is going on... I do reader->read_int(...), and the thing I get looks like 1 when printf'd, but does not equal to 1 O.o 16:17
timotimo it must be 1 in a different base or something! 16:18
(the last time i had something like that, there was a decont missing, but that's probably not the case here)
diakopter wat.. "maximum recursion depth exceeded"
since when do we have a maximum recursion depth
jnthn We...don't...
FROGGS timotimo: no it is a MVMint64
timotimo diakopter: it's probably a fudge 16:19
FROGGS the optimizer does that, no?
diakopter oh
RIGHTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB DOWN 16:21
FROGGS ahh, had to rebuild nqp... 16:26
dalek arVM: 4199be9 | jnthn++ | src/core/frame.c:
Implement firing exit handler in return case.

Exception unwind case still to come.
16:45
jnthn ...and I still didn't do the hard bit. :) 16:48
diakopter ?
exception unwind?
jnthn Well, running block exit handlers during the unwind. 16:49
diakopter I saw a note about running exit handlers during continuation control
when do those run
jnthn Hmm :)
As you unwind the stack.
diakopter but the frame can be re-entered 16:50
so they're just suspended
jnthn For a CATCH handler, the exception runs on the stack top
Right, for taking a continuation we just suspend, not unwind.
I think even on JVM we get that right though
diakopter so do we need to queue up all un-controlled continuations to be exited at shutdown?
jnthn Oh, hmm...
I hadn't imagined doing that, no.
I mean, if you do a gather/take and you exit the program before you've taken all you can (maybe 'cus there's an infinite number of things), I don't think the LEAVE in the gather is spec'd to trigger. 16:51
Though it's an interesting edge case...
FROGGS umm, Cannot invoke null object in nqp 16:52
:(
jnthn Congrats!
:(
diakopter the purist in me (ok, me) wants leave to guarantee to be run
or something to be guaranteed to run
jnthn Trying to get that to work will be all kinds of ugly... 16:53
diakopter ok
jnthn I'd leave it for now...maybe the spec will some day say we must run such things...but I kinda hope not :)
FROGGS jnthn: I don't think that is due to my changes 16:54
jnthn FROGGS: Make sure it ain't that you pulled down e.g. my NQP change but not my MoarVM one... 16:55
FROGGS I pulled both
jnthn How'd you get the error? 16:56
FROGGS I am compiling against NQP HEAD now
just a reconfigure+make in nqp
jnthn: it explodes using MoarVM HEAD too
jnthn ah, wtf...
make test passed
FROGGS you get it too? 16:57
jnthn yeah...
wtf.
FROGGS k, so I don't have to paste a gist :o)
brb, dinner &
benabik Woo, me too. 16:58
jnthn Hm...it things that an NQP block has an exit handler. That should never happen... 16:59
argh, I know why 17:01
dalek arVM: 9274511 | jnthn++ | / (3 files):
Unbust NQP stage1 build.
17:06
jnthn Sorry 'bout that. Was one of those annoying ones where make test passed
And once you had a stage2 built you were never gonna see the error in make test.
FROGGS np :o) 17:11
[Coke] r: say 26217 - 24356 # moar increase. 17:16
camelia rakudo-parrot 5669b2, rakudo-jvm 5669b2: OUTPUT«1861␤»
[Coke] (from yesterday, not from last night)
jnthn That's today's gain over yesterday? :)
Nice :)
[Coke] r: say 26217 - 258224 # from last night 17:17
camelia rakudo-parrot 5669b2, rakudo-jvm 5669b2: OUTPUT«-232007␤»
[Coke] r: say 26217 - 25824 # from last night
camelia rakudo-parrot 5669b2, rakudo-jvm 5669b2: OUTPUT«393␤»
[Coke] r: say 26217 / 28453 # assuming jvm doesn't move. 17:18
camelia rakudo-parrot 5669b2, rakudo-jvm 5669b2: OUTPUT«0.921414␤»
jnthn o.O
Still over 2000 tests to go :)
[Coke] 1934 failures remain, says test_summary 17:20
FROGGS I'll push stuff in a bit when it passes my tests... 17:34
dalek arVM: a433d81 | jnthn++ | src/core/frame. (2 files):
Mostly-complete LEAVE/unwind interaction.

One case still to go; needs careful consideration or we get a GC bug, so for now just die on it.
17:38
arVM: a6e9956 | (Tobias Leich)++ | src/io/fileops.c:
don't use (wrong) magic numbers when we have constants
17:40
arVM: bb7fd7e | (Tobias Leich)++ | src/ (6 files):
support sized ints and nums
17:41
FROGGS this requires a reconfigure of nqp/rakudo
17:45 japhb__ joined
diakopter FROGGS: what are the static things in P6num.c 17:46
static MVMString *str_float = NULL;
17:46 hoelzro_ joined
diakopter long term we can't have that since we could have multiple instances per process 17:46
FROGGS strings, used as keys in a hash
diakopter: it is always the literal string "float" 17:47
diakopter right, but GCs from both instances can't be competing to store stuff there and update pointers
[Coke] gist.github.com/coke/8250608/ updated with today's run 17:48
diakopter hm I don't see continuation in that output
benabik I'm pretty sure that has to be rooted.
diakopter yes, it must be rooted, but hang it off of instance instead of static global 17:49
FROGGS it is rooted
[Coke] still some segfaults and some slow files.
FROGGS diakopter: you might be right, I just took that piece from the other REPRs, all do it that way
diakopter yeah; they all should hang the stuff off the thing on instance that stores constants like that :) 17:50
[Coke] S03-metaops/hyper.rakudo.moar is probably the biggest single failure. (99 tests, one file) 17:51
do recent encoding comimts fix S16-filehandles/io.rakudo.moar and S32-io/slurp.t
?
FROGGS [Coke]: yes
only four failing tests
diakopter though not a priority until we need multiple instances per process, such as when we get an instance api that can share SC sources in memory and so run the test suite all in one process
FROGGS in S16-filehandles/io.rakudo.moar
ohh, 5 in that test file 17:52
two tests fail in S32-io/slurp.t
17:52 rurban joined
FROGGS I am looking now at: not ok 39 - we got four lines from the file 17:53
# got: '1001'
# expected: '4'
17:56 eternaleye_ joined
TimToady diakopter: every time you say "instance" I have to translate that in my head to "interpreter" 18:00
"instance" is heavily overloaded in CS...
diakopter okay. except in moar, each thread has "an interpreter [loop]" 18:01
(and multiple threads per process)
(by definition of threads, sorry) 18:02
TimToady so when you say "instance" do you mean "thread", or do you mean what GLOBAL hangs off of? 18:03
diakopter MVMThreadContext->instance (MVMInstance)
TimToady as in, a PROCESS can have a GLOBAL for each interpreter
diakopter ahh I don't know how PROCESS relates when we could have multiple instances... definitely multiple GLOBALs though 18:05
benabik I get a test failure on nqp-m... t/qregex/01-qregex.t: not ok 355 - unicode whitespace (\s) 18:06
18:06 ssutch joined
TimToady thinks "instance" is kinda like "length"; one always wants to know "instance of what?" 18:08
in CS literature, "instance" mostly just means what you get back from a constructor
diakopter an instance is a collection of threads that all share the same GC system 18:09
TimToady and I'm just saying that's using a very generic term for something very specific; not necessarily recommending it be changed, but it will cause confusion 18:10
diakopter I'll use MVMInstance in the future, since that's the struct 18:11
TimToady one is allowed to create technical terms, but sometimes it's better to coin something new than to overload an existing term like that
is all I'm sayin'
mostly just trying to understand 18:12
and to vicariously misunderstand on behalf of others :)
FROGGS benabik: I think that this is due to the recent unicode 6.3 update 18:13
benabik Hm. I've also been seeing a failure there in Parrot since I updated ICU. Perhaps that's also the problem there?
diakopter
.oO( it's not very Uni if there's more than one of them over time... )
18:14
FROGGS maybe the test needs updating? I dunno 18:21
I am about to push this, any objections? gist.github.com/FROGGS/f4cfeccf4c2910609225 19:01
before we cached if we hit eof when reading a string (except for reading a line), and I thought this cached eof is sort of weird 19:03
what if you are watching a file which grows? it would still think it reached eof 19:04
so now it would compare the filesize to the position of the cursor
grondilu tried rosettacode.org/wiki/Hickerson_seri...ers#Perl_6 on perl6-moar. It actually works, but it's painfully slow :/ 19:12
grondilu notices TimToady's edit on rosettacode.org/wiki/Quaternion_type 19:20
TimToady: ^Have you considered putting quaternions in the core? 19:21
dalek arVM: 4dc63a9 | (Tobias Leich)++ | src/ (3 files):
replace a cached eof with an actual check

In some of the reading functions we cached a hit of eof, for example when a read returned zero bytes. This is problematic in readline, so instead we now store the filename and compare the current position within the file to the filesize. This will help us when files get written to while we read from it.
19:22
grondilu realises he's not on #perl6 :o) 19:23
19:24 PerlJam joined
FROGGS okay, the thing that breaks the unicode test is \x180e, which is not considered whitespace anymore 19:35
r: say "\x180e" ~~ /\s/
camelia rakudo-parrot 8a486a, rakudo-jvm 8a486a: OUTPUT«「᠎」␤␤»
FROGGS where is that char-name method again? :o) 19:36
benabik .u U+180e
FROGGS yoleaux did that, no? 19:37
benabik Man, I hate when bots go away
diakopter also people
benabik U+180e is Mongolian Vowel Separator (MVS) according to Wikipedia. 19:38
FROGGS benabik: thank you 19:39
diakopter I'm sure someone made that test aware that that one changes/d 19:40
er, I speculate, I mean
FROGGS umm, VMS does match as whitespace anymore but \h matches? 19:46
www.unicode.org/L2/L2013/13004-vowe...change.pdf 19:50
even when reading the above I just don't know if \h should still math VMS 19:51
err, MVS
benabik FROGGS: I would assume it wouldn't? Or at the least it should match ZERO WIDTH NON-JOINER 19:54
FROGGS nqp-m: say("\x180e" ~~ /\s/) # I guess this is too old here 19:56
camelia nqp-moarvm: OUTPUT«᠎␤»
FROGGS nqp-m: say(?("\x180e" ~~ /\s/)) # I guess this is too old here
camelia nqp-moarvm: OUTPUT«1␤»
FROGGS timotimo: do you already had the chance to look at the reduce.t fails? 20:15
timotimo no :( 20:31
FROGGS np, I just wanted to ask, so I can have a look into it :o) 20:33
I golfed the reduce.t: 21:39
perl6-m -e 'say &infix:<^^>( |["Bob", ""] )' # Nil 21:40
perl6-p -e 'say &infix:<^^>( |["Bob", ""] )' # Bob
perl6-m -e 'say &infix:<^^>( "Bob", "" )' # Bob
this might be it: gist.github.com/FROGGS/afd0661ffa20d2461244 21:42
in the failing case the list is not yet reified
I leave that for somebody who knows a bit about signature binding and stuff :o) 21:48
22:21 FROGGS[mobile] joined 22:28 colomon joined
FROGGS wow, that is kinda weird: 22:50
perl6-m -e 'use Test; nok "t".IO ~~ :f, "";' # ok 1 -
perl6-m -e 'use Test; nok "t".IO ~~ :f, "a";' # not ok 1 - a
dalek arVM: 0a28c87 | (Tobias Leich)++ | src/io/fileops.c:
let is_x/r/w happily ignore non-existing files
22:55
jnthn Weird indeed. 23:21
diakopter jnthn: should I still work on ::cont* tonight? or did you start it? 23:30
jnthn FROGGS: In bb7fd7e711 checking the valid set of bit sizes in get_storage_spec is redundant, since the only places it can be set are compose and deserialize_repr_data, which are already checked. 23:32
diakopter: Only did what's committed so far 23:33
I'm working on mapping the nqp:: ops to those stubs, so the test file will compile, though...of course, it'll fail immediately
diakopter: But will sleep soonish 23:36