01:52 MasterDuke joined 03:33 nine left 03:34 camelia left 03:49 MasterDuke left 04:05 camelia joined 04:10 nine joined
patrickb ugexe: I think if we don't add any repo upgrade logic, the worst that will happen is that the different rakudos start creating different wrappers which results in CURIs with mixed wrappers. The wrappers themself should continue to work as is. That's maybe the best way forward. We could add upgrade logic that deletes and regenerates all the wrappers. But my guess is this causes more disruption 08:46
than it helps.
09:56 sena_kun joined
Geth rakudo/main: ca7933b872 | (Christian Bartolomäus)++ (committed using GitHub Web editor) | src/core.c/Match.rakumod
Don't use Match::chomp on string

This avoids the following error on the JVM backend when calling .gist on Match objects:
   Cannot dispatch to method chomp on Match because it is not inherited
   or done by Str
I don't understand how this works on MoarVM, but using an unqualified method call looks reasonable to me.
10:35
rakudo/main: ef46c8e9cb | (Christian Bartolomäus)++ (committed using GitHub Web editor) | src/core.c/Stash.rakumod
Type second param of proto for Stash::ASSIGN-KEY

As explained in github.com/rakudo/rakudo/issues/5703 the current version leads to a spectest failure on the JVM backend. Running
  github.com/Raku/roast/blob/3032bcf...11-day07.t
eventually Stash::ASSIGN-KEY is called with something that derives from Metamodel::GrammarHOW (and doesn't type match with Any) as the second argument.
Typing the second parameter as Mu solves this problem -- and it also matches the types used in the multi variants of Stash::ASSIGN-KEY.
10:36
lizmat m: my @a = 1,2,3; dd @a.EXISTS-POS(-1) 11:16
camelia Bool::False
lizmat m: my @a = 1,2,3; dd @a.DELETE-POS(-1) 11:32
camelia Failure.new(exception => X::OutOfRange.new(what => "Index", got => -1, range => "0..^Inf", comment => Any))
Geth rakudo/main: e7945cf996 | (Elizabeth Mattijsen)++ | src/core.c/Rakudo/Internals.rakumod
Handle classes that don't have a find_method also

This was causing an error message inside an error message during debugging of #3658, which wasn't very helpful
13:35
lizmat m: dd "foo"[2..4] 13:53
camelia (Failure.new(exception => X::OutOfRange.new(what => "Index", got => 2, range => "0..0", comment => Any), backtrace => Backtrace.new), Failure.new(exception => X::OutOfRange.new(what => "Index", got => 3, range => "0..0", comment => Any), backtrace => …
lizmat m: use Test; is 'foo'[2..4].elems, 0 13:54
camelia not ok 1 -
# Failed test at <tmp> line 1
# expected: '0'
# got: '3'
lizmat m: use Test; is 'foo'[2..*].elems, 0
camelia ok 1 -
lizmat meh
I'd say that test is faulty 13:59
Geth rakudo/main: a4b87c9186 | (Elizabeth Mattijsen)++ | 2 files
Make (almost) any Failure in a slice throws immediately

Before this commit, there was difference in handling slices in which the indices are produced by a lazy or a non-lazy iterator. That is because with indices produced by a lazy iterator, the first element that returns False on EXISTS-POS will indicate the end of the list of indices. ... (40 more lines)
15:26
roast: 63243e28e8 | (Elizabeth Mattijsen)++ | S02-types/lists.t
Fix tests in light of #3658

See github.com/rakudo/rakudo/commit/a4b87c9186
15:31
roast: 2093fb3bf0 | (Elizabeth Mattijsen)++ | S02-types/lists.t
Fix copy-pasto
15:32
timo .o( please dispose of the wrappers separately from the product )
lizmat not sure I understand ? 15:36
donaldh_ Is there an idiomatic way to iterate a list as a sequence of adjacent pairs? 15:45
Something less funky than: for @l[0..*-1] Z @l[1..*] -> $a, $b { ... }
15:46 donaldh_ is now known as donaldh
timo my message? that was just a joke 15:57
donaldh: you want rotor i think?
rotor(2 => -1) specifically
donaldh Thanks timo++ I had a complete memory blank on rotor and couldn't think of what to search in the docs. 16:00
[Coke] donaldh: vaguely related are metaoperators like: 16:07
m: say [+] <2 3 5 7 9 11>
camelia 37
Geth rakudo/main: a047a8f7bf | (Elizabeth Mattijsen)++ | src/core.c/Hash.rakumod
Fix stringification of self referential Hashes

Inspired by #4768
16:10
donaldh coke: yep, my AoC day 2 soln was all meta and hyper operators donaldh.wtf/2024/12/2024-aoc-day-2...d-reports/ 16:11
Oh welp, I see .comb can do the same for strings as .rotor can for lists :-) 16:15
Geth roast: d1d9bc1aa3 | (Elizabeth Mattijsen)++ | 2 files
Add stringification tests for self-referencing (object) hashes

Inspired by #4768
16:16
donaldh In this case I was wanting to compute the differentials of a list 16:18
m: <2 5 6 8 14 15>.rotor(2 => -1).map(-> @pair { abs([-] @pair) })
camelia ( no output )
donaldh m: say <2 5 6 8 14 15>.rotor(2 => -1).map(-> @pair { abs([-] @pair) })
camelia (3 1 2 6 1)
17:06 [Tux] left
Geth rakudo/main: 0911eca222 | (Elizabeth Mattijsen)++ | 2 files
Hopefully address $*USER / $*GROUP on Windows

Thanks to Will Coleda's guidance in #5066, this will hopefully give some meaningful value to $*USER and $*GROUP on Windows systems, albeit
  *without* a numerical component.
As I don't have access to a Windows machine, this is untested, but ... (9 more lines)
17:11
17:17 [Tux] joined
ab5tract This seems weird, but I don't use Signature de-structuring all that often 21:05
m: ("a", "b") ~~ :($, $) ==> say(); my $a = "a" => 1; $a ~~ Pair ==> say(); ($a, $a) ~~ :(Pair $, Pair $) ==> say()
camelia True
True
False
ab5tract Also, the obligatory RakuAST check is troubling... 21:06
m: Q|("a", "b") ~~ :($, $) ==> say(); my $a = "a" => 1; $a ~~ Pair ==> say(); ($a, $a) ~~ :(Pair $, Pair $) ==> say()|.AST.EVAL
camelia True
True
False
ab5tract oh.. locally I get a SIGSEGV 21:07
This is from poking at R#5718 21:13
linkable6 R#5718 [open]: github.com/rakudo/rakudo/issues/5718 [LTA] LTA: for <a b c>.pairs.combinations(2) -> ($a,$b) doesn't work
ab5tract I guess pairs are sort of sensitive due to the dispatching of names args? 21:23
21:56 sena_kun left
Geth nqp-configure/if-double-colon-config-key: 5b782265a6 | (Patrick Böker)++ | lib/NQP/Macros.pm
Allow config keys with double colon in @if()@
22:18
nqp-configure: patrickbkr++ created pull request #29:
Allow config keys with double colon in @if()@