Geth | rakudo/fix-negated-junctions: cf867f8da0 | ab5tract++ | src/core.c/OperatorProperties.rakumod Whitespace |
00:42 | |
rakudo/fix-negated-junctions: bc518ee0b8 | ab5tract++ | 8 files Revision gating is not working with `&infix:<ne>` I've tried all sorts of things, including moving all the sub declarations into `core_epilogue.rakumod` ... with some approaches the CORE.setting fails due to things happening too early or (as is the case with the current commented out code) using `ne` just causes an infinite hang. ... (7 more lines) |
|||
03:15
japhb left
03:17
japhb joined
03:30
librasteve_ left
03:33
japhb left
03:37
japhb joined
|
|||
Geth | rakudo: usev6++ created pull request #5692: [JVM] Remove workarounds for broken deserialization of nqp::null |
07:31 | |
bartolin_ | m: my $m = "foobar" ~~ /oo/; say $m.gist | 08:54 | |
camelia | 「oo」 | ||
bartolin_ | This fails on the JVM backend with "Cannot dispatch to method chomp on Match because it is not inherited or done by Str" | ||
The backtrace points to github.com/rakudo/rakudo/blob/3f0f...kumod#L397 | 08:55 | ||
m: "foo".Match::chomp ## same error | |||
camelia | Cannot dispatch to method chomp on Match because it is not inherited or done by Str in block <unit> at <tmp> line 1 |
||
bartolin_ | But now I wonder, why/how this works on Moar. Does it take a different code path and never reaches that line? | 08:56 | |
09:00
bartolin_ left,
bartolin joined
09:48
sena_kun joined
|
|||
ab5tract | the entire dispatch pipeline differs between the two now. I suspect this is a side effect of this | 10:55 | |
Geth | rakudo/main: 3470f83867 | (Christian Bartolomäus)++ (committed using GitHub Web editor) | 2 files [JVM] Remove workarounds for broken deserialization of nqp::null This reverts commit 9f41d2c61a14ce468128c17334ca663ef8765c98. The bandaid is no longer needed, because now nqp::null gets deserialized correctly: github.com/Raku/nqp/pull/829 This reverts commit 555f4b0049c58bf89301bdc06d9cbce0dbff1958. The bandaid is no longer needed, because now nqp::null gets deserialized correctly: github.com/Raku/nqp/pull/829 |
11:06 | |
nqp/main: 033ffd3a08 | ab5tract++ (committed using GitHub Web editor) | src/HLL/Compiler.nqp Add is-interactive to HLL::Compiler (#827) This commit nukes the hard-to-grok distinction of `interactive` vs `non-interactive` repl-modes and replaces it with the following options: - `tty` ... (21 more lines) |
11:49 | ||
rakudo/main: 167d1dd9a8 | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION Bump NQP to get new REPL mode settings ab5tract++ |
12:03 | ||
rakudo/fail-gracefully-outside-of-supported-terminal-emulator: 3470f83867 | (Christian Bartolomäus)++ (committed using GitHub Web editor) | 2 files [JVM] Remove workarounds for broken deserialization of nqp::null This reverts commit 9f41d2c61a14ce468128c17334ca663ef8765c98. The bandaid is no longer needed, because now nqp::null gets deserialized correctly: github.com/Raku/nqp/pull/829 This reverts commit 555f4b0049c58bf89301bdc06d9cbce0dbff1958. The bandaid is no longer needed, because now nqp::null gets deserialized correctly: github.com/Raku/nqp/pull/829 |
12:04 | ||
rakudo/fail-gracefully-outside-of-supported-terminal-emulator: 167d1dd9a8 | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION Bump NQP to get new REPL mode settings ab5tract++ |
|||
rakudo/fail-gracefully-outside-of-supported-terminal-emulator: 03394c72d8 | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | 3 files Merge branch 'main' into fail-gracefully-outside-of-supported-terminal-emulator |
|||
rakudo/main: 6c088c8cfc | ab5tract++ (committed using GitHub Web editor) | 5 files Fail gracefully when REPL is initialized without TTY This patch was originally intended to address R#4378 (#4378)[^1], but that problem is actually unresolvable as long as starting `raku` outside of a TTY automatically engages the wait-until-EOF mode (the same behavior as calling `perl` without `-e`). ... (11 more lines) |
12:05 | ||
linkable6 | R#4378 [closed]: github.com/rakudo/rakudo/issues/4378 [Windows] `Git for Bash` has no TTY, so raku opens in "non-interactive" mode | ||
bartolin | lizmat: Could you maybe shed some light on my earlier question regarding the usage of "Match::chomp" in github.com/rakudo/rakudo/blob/3f0f...umod#L397? I'd like to understand how that works with Moar. | 12:28 | |
lizmat | normally, method lookup starts with the class of the invocant | 12:29 | |
bartolin | This would be Str in this case, right? | 12:30 | |
lizmat | with a fully qualified method call, you're letting the method lookup start with the given class | ||
yeah, looks like | 12:31 | ||
bartolin | ok, that's what I thought as well. But why doesn't it blow up? | ||
m: "foo".Match::chomp | |||
camelia | Cannot dispatch to method chomp on Match because it is not inherited or done by Str in block <unit> at <tmp> line 1 |
||
lizmat | because .chomp is Cool ? | ||
12:32
donaldh_ joined
|
|||
lizmat | and Match is as well ? | 12:32 | |
bartolin | So it takes the implementation from Cool::chomp? That makes some sense to me. | ||
But why doesn't it do the for the above evaluation? | 12:33 | ||
lizmat | the proto for .chomp lives in Cool | ||
m: say 42.chomp | 12:34 | ||
camelia | 42 | ||
lizmat | m: say 42.Match::chomp | ||
camelia | Cannot dispatch to method chomp on Match because it is not inherited or done by Int in block <unit> at <tmp> line 1 |
||
lizmat | hmmm | ||
m: "foo" ~~ / foo /; dd $/.Match::chomp | 12:35 | ||
camelia | "foo" | ||
12:35
donaldh left
|
|||
lizmat | m: "foo" ~~ / foo /; dd $/.chomp | 12:35 | |
camelia | "foo" | ||
lizmat | m: "foo\n" ~~ / .* /; dd $/.chomp | 12:36 | |
camelia | "foo" | ||
lizmat | m: "foo\n" ~~ / .* /; dd $/.Match::chomp | ||
camelia | "foo" | ||
lizmat | ok, I have no idea why the Match:: is there | ||
bartolin | It first came in with github.com/rakudo/rakudo/commit/f2c394120f where you qualified a lot of methods. Maybe it was just an oversight that in this case the invocant was not of type Match? | 12:38 | |
bartolin is still puzzled why it "just works" there, but not if one does "foo".Match::chomp | 12:39 | ||
lizmat is now also confuse | 12:40 | ||
d | |||
apparently in b64e683 I once tried to clean up that mess... but it broke stuff | |||
please feel free to remove the Match:: there | |||
and see if that fixes / breaks things | 12:41 | ||
bartolin | ok, I'll try that out. Thanks for looking | 12:42 | |
lizmat | maybe in MoarVM the type hierarchy is subtly different.. dunno | 12:43 | |
12:50
sena_kun left
|
|||
ab5tract | It could be something subtle that happens in the dispatcher too | 13:13 | |
bartolin | I'll take a look there as well. but first my spectest for the JVM needs to finish ;) | 13:17 | |
Geth | rakudo/main: 238e313ebf | (Elizabeth Mattijsen)++ | src/Perl6/Compiler.nqp Fix typo in help |
13:40 | |
rakudo: usev6++ created pull request #5693: Don't use Match::chomp on string |
16:16 | ||
ab5tract | I think I've been overthinking the necessary changes for revising &METAOP_NEGATE | 17:58 | |
I've been doing `$op.($op.(|c), False)` | 17:59 | ||
but I don't think there's any actual cases where `$op.(|c) == False` wouldn't work | 18:00 | ||
18:00
librasteve_ joined
18:07
sena_kun joined
18:13
Geth left,
Geth joined
|
|||
Geth | nqp/main: 5a04b6411a | (Christian Bartolomäus)++ (committed using GitHub Web editor) | 2 files [JVM] Fix nqp::attrinited for attribute set to null It was wrong to use nqp::isnull for this check with ba4dc47799. An attribute that has been set to nqp::null is still initialized. |
18:14 | |
rakudo/main: b1f741f308 | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION [JVM] Bump NQP to get bartolin++ attrinited fixes |
18:34 | ||
ab5tract | The most major open question is whether `ne` can be adjusted in base, because revision gating is not working for it | 18:51 | |
m: say do if 1 ne 1|3|4 { 0 } else { 1 } | 18:56 | ||
camelia | 1 | ||
ab5tract | I'll have to dig into how discussions evolved into deciding that this was the behavior to go with | 18:58 | |
lizmat | there have been many | 19:00 | |
have at least 1 closed PR that tried to address this | 19:01 | ||
ab5tract | I'm hoping that revision gating in general will make it more palatable | 19:09 | |
FWIW, I personally do not think that `unless $foo eq $bar` --> `if $foo ne $bar` is more valuable than having `ne` DWIM for junctions, but this is obviously a controversial topic | 19:31 | ||
Geth | roast: 3c50d427e4 | (Christian Bartolomäus)++ | 13 files [JVM] Fudge some failing tests Hopefully we can get back these tests. But for now it's better to fudge them, so that regressions can be noticed. Unfortunately there are more failing tests, but those look harder to fudge from a first glance. I'll try to further look into them. |
19:37 | |
lizmat | bisectable6: $/ = 42; say "cow cow">>.match(:global, /co(.)/); say $/ | 20:01 | |
bisectable6 | lizmat, Will bisect the whole range automagically because no endpoints were provided, hang tight | ||
lizmat, ¦6c (85 commits): «((「cow」 0 => 「w」 「cow」 0 => 「w」))42» | 20:02 | ||
lizmat, Nothing to bisect! | |||
lizmat | bisectable6: old=2023.04 $/ = 42; say "cow cow">>.match(:global, /co(.)/); say $/ | 20:10 | |
bisectable6 | lizmat, On both starting points (old=2023.04 new=b1f741f) the exit code is 0 and the output is identical as well | ||
lizmat, Output on both points: «((「cow」 0 => 「w」 「cow」 0 => 「w」))42» | |||
lizmat | bisectable6: old=2020.01 $/ = 42; say "cow cow">>.match(:global, /co(.)/); say $/ | 20:11 | |
bisectable6 | lizmat, On both starting points (old=2020.01 new=b1f741f) the exit code is 0 and the output is identical as well | ||
lizmat, Output on both points: «((「cow」 0 => 「w」 「cow」 0 => 「w」))42» | |||
Geth | nqp: usev6++ created pull request #831: [JVM] Restore size of curlonglit array |
20:13 | |
rakudo: usev6++ created pull request #5695: [JVM] Unbreak usage of "hash" with named args |
20:42 | ||
rakudo/main: d3d08962a0 | (Christian Bartolomäus)++ (committed using GitHub Web editor) | src/core.c/Hash.rakumod [JVM] Unbreak usage of "hash" with named args A couple of spectests were failing when "hash" was used with named arguments, like so: $ ./rakudo-j -e 'say hash(a => 1)' Unexpected named argument 'a' passed ... (5 more lines) |
20:46 | ||
nqp/main: c4b44e979a | (Christian Bartolomäus)++ | src/vm/jvm/runtime/org/raku/nqp/runtime/ThreadContext.java [JVM] Restore size of curlonglit array This was reduced in github.com/Raku/nqp/commit/f02dbe4c9b, but I'm now seeing ArrayIndexOutOfBoundsExceptions in a variety of spectests. One evaluation that died with this error was the following (from roast's ... (7 more lines) |
21:07 | ||
roast: 298aaac4d4 | (Christian Bartolomäus)++ | 2 files [JVM] Unfudge tests for "hash" with named arg This works again (faster than I thought). Fixed with github.com/rakudo/rakudo/commit/d3d08962a0 |
21:19 | ||
bartolin | Hh, I just noticed github.com/rakudo/rakudo/commit/aca5e4c129. So ab5tract++ already digged into that, nice. I'm seeing test failures in that direction, but the commit should give me a good start. (But not today.) | 21:38 | |
22:47
sena_kun left
|