Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
Set by Zoffix on 27 July 2018.
00:02 Kaiepi left 00:09 Kaiepi joined
Kaiepi huh, oracle's jdk is supported on openbsd 6.5 now 00:10
00:17 Kaiepi left 00:20 Kaiepi joined 00:35 vrurg joined 00:43 Kaiepi left 00:44 Kaiepi joined 01:07 Kaiepi left 01:10 Kaiepi joined 01:18 squashable6 left, squashable6 joined
Geth ¦ rakudo: ugexe assigned to patzim Issue Default repository path specs should not contain relative path parts github.com/rakudo/rakudo/issues/2840 02:11
02:50 epony left
releasable6 Next release in ≈6 days and ≈15 hours. 12 blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 03:00
03:39 Kaiepi left 03:42 epony joined 05:37 bloatable6 left, bisectable6 left, shareable6 left, benchable6 left, notable6 left, committable6 left, undersightable6 left, statisfiable6 left, evalable6 left, nativecallable6 left, quotable6 left, squashable6 left, reportable6 left, releasable6 left, coverable6 left, unicodable6 left, greppable6 left 05:38 unicodable6 joined, ChanServ sets mode: +v unicodable6, squashable6 joined 05:39 bisectable6 joined, ChanServ sets mode: +v bisectable6, evalable6 joined, ChanServ sets mode: +v evalable6, bloatable6 joined, ChanServ sets mode: +v bloatable6, quotable6 joined, greppable6 joined 05:40 benchable6 joined, ChanServ sets mode: +v benchable6, reportable6 joined, committable6 joined, ChanServ sets mode: +v committable6, releasable6 joined, ChanServ sets mode: +v releasable6 05:41 coverable6 joined, ChanServ sets mode: +v coverable6, undersightable6 joined, ChanServ sets mode: +v undersightable6 05:42 nativecallable6 joined, ChanServ sets mode: +v nativecallable6, statisfiable6 joined, ChanServ sets mode: +v statisfiable6, notable6 joined, ChanServ sets mode: +v notable6, shareable6 joined, ChanServ sets mode: +v shareable6 05:48 squashable6 left 05:54 squashable6 joined, ChanServ sets mode: +v squashable6
Geth roast: 600c100b96 | usev6++ | S32-io/IO-Socket-Async.t
[JVM] Skip disruptive test
06:11
06:39 Guest16965 left 07:24 squashable6 left, squashable6 joined 08:13 squashable6 left 08:15 squashable6 joined, ChanServ sets mode: +v squashable6
lizmat Files=1254, Tests=88117, 407 wallclock secs (20.24 usr 6.31 sys + 2721.26 cusr 231.91 csys = 2979.72 CPU) 08:36
quite a bit slower :-(
nine ~~ 08:59
yoleaux 13 Apr 2019 21:13Z <lizmat> nine: would you rather see a rephrasing of the message, or a revert of the commit ?
13 Apr 2019 21:33Z <jnthn> nine: If you're going to use a type as the target type in an nqp::rebless, then :is_mixin now needs to be passed to ClassHOW.new_type.
13 Apr 2019 21:37Z <jnthn> nine: No guesses on the second; unfortunately the line number just points at the generate_buildplan_executor method. Don't suppose --ll-exception gives a better trace? Or I can try it out when I get some time to do that :)
lizmat nine o/ 09:00
nine \o
lizmat re message: the message is only shown for scripts that use MAIN 09:04
*not* in general when reading from a keyboard
nine I still vote for reverting the commit. MAIN's purpose is for writing command line tools and waiting for input from STDIN when no other source was given is common and expected behaviour. 09:08
E.g. I've often started something like "grep foobar > filtered-list" and then pasted output from another command from another terminal into that, even when doing development of rakudo. 09:10
Or fired up psql, worked on a query and when I got it right wrapped it in a copy( ... ) to stdout with csv; and pasted the resulting CSV data into another script waiting to process it further 09:11
.tell jnthn I only got that line number with --ll-exception in the first place. 09:13
yoleaux nine: I'll pass your message to jnthn.
lizmat nine: fwiw, this has bitten me a few times as well: www.reddit.com/r/perl6/comments/bc...h/ekq6khy/ 09:19
it would only save me maybe a few seconds now before I figured it out 09:20
but this feels like a trap to me, hence my solution
nine: maybe only do this if STDOUT and STDERR also have .t true ? 09:21
Geth rakudo: 3060d1d0bd | (Elizabeth Mattijsen)++ | src/core/Main.pm6
Only display STDIN message if a person is doing this

As in, if .t is true for $*IN, $*OUT and $*ERR. This should hopefully only trigger when it is really needed.
10:42
nine lizmat: still doesn't feel right but it may be the best compromise we will find :) 10:44
Is there any way for a class or rather that class' meta class to find out when a subclass is created? 10:45
10:49 squashable6 left, squashable6 joined
lizmat parents don't know of their children afaik, so no ? 10:49
nine
.oO(What has the world come to, when parents don't even know their own children anymore?)
10:52
On the bright side, I may not actually need that anyway. 10:53
lizmat yeah, Perl 6 is a harsh world and sets a bad example :-) 10:54
still, children knowing about their parents is a good thing 10:55
plenty of children in the world who don't know that
nine Right now, Perl 5 classes get a representation in Perl 6 via Inline::Perl5::ClassHOW. To get rid of the rebless hack I mentioned as broken yesterday, I'm gonna need Perl 6 classes to be represented in the Perl 5 world. But that's true for all classes that are used, not just instances of Inline::Perl5::ClassHOW.
I guess I'm gonna need to create that representation whenever I encounter an object of a previously unseen Perl 6 class getting passed to Perl 5 code. 10:57
lizmat feels a bit like synthetic codepoints to me :-) 11:00
nine This will be a very useful but also a very large refactor. I'm not sure if I feel up to it :/ 11:09
[Tux] Rakudo version 2019.03.1-203-g3060d1d0b - MoarVM version 2019.03-76-gc10fee65c
csv-ip5xs0.754 - 0.759
csv-ip5xs-206.042 - 6.170
csv-parser22.103 - 22.966
csv-test-xs-200.434 - 0.445
test7.681 - 7.741
test-t1.725 - 1.795
test-t --race0.841 - 0.913
test-t-2027.809 - 30.235
test-t-20 --race10.105 - 10.453
11:30
11:36 Ulti_ is now known as Ulti 11:59 Kaiepi joined 13:07 ufobat joined 13:11 ufobat_ joined 13:15 ufobat left
Kaiepi for the $*SCHEDULER.cue pullreq, how would i properly unit test that the block past never gets invoked when the timeout is Inf? 13:53
i was thinking of using a Supplier and emitting to it in each block passed for that series of tests then counting how many blocks were invoked at the end to decide whether to pass or flunk 13:54
s/past/passed/
MasterDuke AlexDaniel: i ran through most of those examples from your history with master and my default-int branch. the only significant differences were further cases of illegal array accesses turning into `cannot unbox` errors 13:58
AlexDaniel hm 13:59
sounds good then, I guess
I mean, if anybody feels like, maybe the same should be done on a 32-bit system 14:00
14:05 Kaiepi left 14:07 Kaiepi joined 14:30 Kaiepi left 14:31 Kaiepi joined
MasterDuke m: my $b; say try $b.VAR.?name 15:05
evalable6 Nil
MasterDuke m: my $b = 1; say try $b.VAR.?name
evalable6 Nil
MasterDuke m: my $b = 1; say try $b.VAR.name
evalable6 $b
MasterDuke m: my $b; say try $b.VAR.name
evalable6 $b
16:39 AlexDaniel left
MasterDuke interesting. if i change github.com/rakudo/rakudo/blob/mast...u.pm6#L548 to remove the '?' from the method call and then try `my $b; say "a $b c"`, $name becomes 'element', so the warning is `Use of uninitialized value element of type Any in string context.` 17:14
'element' seems to come from here github.com/rakudo/rakudo/blob/mast....nqp#L1697 17:15
m: my $b; sub f(Mu \v) { say try v.VAR.name }; f($b) 17:16
evalable6 $b
MasterDuke m: my $b; sub f(Mu \v) { say try v.VAR.name; say v.VAR.WHAT }; f($b) 17:17
evalable6 $b
(Scalar)
MasterDuke i'm not sure why it's picking up the Scalar's default_cont_spec in the case of interpolating 17:18
m: my $b; say "a $b c" # what i'm testing with 17:19
evalable6 Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
a c
in block <unit> at /tmp/mG9XAoCSEi line 1
MasterDuke bisectable6: old=2018.04.1 my $b; say "a $b c" 17:34
bisectable6 MasterDuke, Bisecting by output (old=2018.04.1 new=3060d1d) because on both starting points the exit code is 0
MasterDuke, bisect log: gist.github.com/f85c820e89c0313742...ec075435c1
MasterDuke, (2018-06-12) github.com/rakudo/rakudo/commit/bd...7e85c59631
MasterDuke github.com/rakudo/rakudo/issues/2841 17:39
jnthn: ^^^ 17:40
18:16 Kaiepi left, Kaiepi joined
lizmat m: dd .0.Str 18:42
evalable6 "0"
lizmat bisectable6: dd .0.Str
bisectable6 lizmat, On both starting points (old=2015.12 new=3060d1d) the exit code is 0 and the output is identical as well 18:43
lizmat, Output on both points: «"0"␤»
lizmat wow
bisectable6: dd .1.Str
bisectable6 lizmat, On both starting points (old=2015.12 new=3060d1d) the exit code is 0 and the output is identical as well
lizmat, Output on both points: «"0.1"␤»
lizmat ah, ok
18:46 hankache joined 19:12 brrt joined
Geth roast: 44c1ede286 | (Elizabeth Mattijsen)++ | S32-str/sprintf-b.t
Parameterize sprintf testing of "b|B" formats

Mostly intended to register the behaviour of the current sprintf implementation, which was not testing some combinations of flags and was not testing for special behaviours related to 0.
Upped the number of test from 165 tests to 1626 tests with 8 subtests each.
19:17
19:20 hankache left 19:37 brrt left 19:42 brrt joined
Geth roast: e4db6fd9de | (Elizabeth Mattijsen)++ | S32-str/sprintf-c.t
Parameterize sprintf testing of "c" format

Mostly intended to register the behaviour of the current sprintf implementation, which was not testing some combinations of flags and was not testing for special behaviours to unicode characters like 🦋
20:22
rakudo: dbf3638ea3 | (Elizabeth Mattijsen)++ | t/spectest.data
Add extensive testing of "c" format in sprintf
20:25
20:42 brrt left
Kaiepi damn it i'm close to fixing the issue with executable names on openbsd but it gets perl6.moarvm, not the binary itself 20:45
turns out MVM_exepath was actually there for a reason
i tried deleting it, lazily getting the executable name in MVM_executable_name, and just using uv_exepath in rakudo but that doesn't work 20:47
i think all i need to do is just add it back and use it in rakudo again 20:48
21:00 brrt joined 21:17 brrt left 21:52 robertle left 21:55 AlexDaniel joined
releasable6 Next release in ≈5 days and ≈19 hours. 12 blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 23:00
23:48 evalable6 left 23:50 evalable6 joined