🦋 Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | log inspection situation still under development | For MoarVM see #moarvm
Set by lizmat on 22 May 2021.
00:02 reportable6 left 00:41 linkable6 joined 01:10 frost joined 01:11 frost left 01:58 melezhik left 02:04 reportable6 joined 02:07 frost joined 03:07 linkable6 left, squashable6 left, greppable6 left, reportable6 left, coverable6 left, bloatable6 left, committable6 left, benchable6 left, releasable6 left, shareable6 left, statisfiable6 left, evalable6 left, quotable6 left, tellable6 left, bisectable6 left, benchable6 joined, committable6 joined 03:08 releasable6 joined 03:09 shareable6 joined 03:10 reportable6 joined 04:07 squashable6 joined 04:08 bloatable6 joined, statisfiable6 joined 04:09 quotable6 joined 04:24 MasterDuke left 05:09 greppable6 joined 06:02 reportable6 left 06:08 tellable6 joined, coverable6 joined
Geth roast: usev6++ created pull request #761:
[JVM] Fudge some failing tests
06:34 japhb left 06:35 japhb joined
Geth rakudo: usev6++ created pull request #4574:
[JVM] Restore pre-new-disp behaviour for phasers
07:04 reportable6 joined 07:07 linkable6 joined, bisectable6 joined 07:08 evalable6 joined 07:19 patrickb joined 07:49 patrickb left 07:50 patrickb joined 09:30 squashable6 left 09:33 squashable6 joined 10:34 Altai-man joined
Altai-man releasable6, status 10:35
releasable6 Altai-man, Next release in ≈7 days and ≈8 hours. 5 blockers. Changelog for this release was not started yet
Altai-man, Details: gist.github.com/1c9eb6eda3f29e83da...c06c1e8b9e 10:36
lizmat am I going crazy? 11:34
if @!channels is filled with strings, how can:
@!channels = @!channels.map: { $_ }
empty it ?
Altai-man lizmat, what's your rakudo version?
lizmat master 11:35
Altai-man lizmat, does it have github.com/rakudo/rakudo/commit/8d...74641f77d9 ?
lizmat yes 11:36
Altai-man no idea then 11:37
lizmat, is it the same on release? 11:38
lizmat no idea...
timo lizmat: can you try .eager-ing it?
lizmat m: class A { has @.a; method TWEAK { @!a = @!a.map: { $_ } } }; dd A.new(a => <a b c>).a # the golf doesn't have it
camelia Array @!a = ["a", "b", "c"]
lizmat ahhh the golf *does* have it: 11:39
m: class A { has str @.a; method TWEAK { @!a = @!a.map: { $_ } } }; dd A.new(a => <a b c>).a # the golf doesn't have it
camelia array[str].new()
lizmat bisectable6: class A { has str @.a; method TWEAK { @!a = @!a.map: { $_ } } }; dd A.new(a => <a b c>).a
bisectable6 lizmat, Will bisect the whole range automagically because no endpoints were provided, hang tight
lizmat aka, if the it is a native str array, it fails 11:40
bisectable6 lizmat, Output on all releases: gist.github.com/c0ea9c584f324aedf8...2d18d96abc 11:41
lizmat, Bisecting by exit signal (old=2018.10 new=2018.11). Old exit signal: 1 (SIGHUP)
lizmat, bisect log: gist.github.com/84bac622e7f8d54ea1...6cede3aefd 11:42
lizmat, (2018-11-18) github.com/rakudo/rakudo/commit/f1...d02f6d48e5
lizmat, Bisecting by exit signal (old=2018.03 new=2018.04.1). Old exit signal: 0 (None)
lizmat wow, that's been there for a while then
Altai-man so timo a-and...
bisectable6 lizmat, bisect log: gist.github.com/4cba1b2ad5aeee817f...f1db4f454a 11:43
lizmat, (2018-04-09) github.com/rakudo/rakudo/commit/72...4215ddbcf1
lizmat, Bisecting by exit code (old=2016.02 new=2016.03). Old exit code: 1
lizmat, bisect log: gist.github.com/89a3e97794e139c2cb...bf0b08beda
lizmat, (2016-03-17) github.com/rakudo/rakudo/commit/ee...f405d8f3cd
lizmat, Output on all releases and bisected commits: gist.github.com/ed7c64a7a6e9693e18...7045cd263e 11:44
lizmat it looks like the attribute is emptied before it is iterated 11:46
lizmat takes the easy way out for now: 11:54
timo you would assume that the code to assign first empties the array so stuff can be pushed into it, then iterates the iterator used to generate the values, which then finds the empty array 11:55
12:02 reportable6 left
lizmat I think I know where it goes wrong now... will look at it after unstacking what I'm working on now 12:03
timo yak it all back 12:09
lizmat yeah :-( 12:17
m: my str @a = <a b c>; @a = @a.map({$_}); dd @ # shortest golf 12:21
camelia Array @ = []
lizmat m: my int @a = 1,2,3; @a = @a.map({$_}); dd @a # int natives as well 12:22
camelia array[int].new()
lizmat m: my num @a = 1e0,2e0,3e0; @a = @a.map({$_}); dd @a # num natives as well
camelia array[num].new()
timo i don't think we have any choice but either make this a DIHWIDT or defensively copy every native array we iterate over 12:38
lizmat I think we can actually check in STORE whether the source == destination, and only do that then 12:51
hmmm... maybe not :-(
meh 12:52
timo not necessarily if the iterator is any more complex than just iterating over the original array 13:03
13:05 reportable6 joined
lizmat hmmm... think this could be fixed in codegen 13:19
and perhaps should
13:27 frost left
timo I don't know how that would work but I am all ears 13:28
lizmat if codegen spots @a = @a something and @a is a native, add a .clone ?
I guess that will be more easily spottable in RakuAST 13:29
timo i think we already have a "can't use variable in declaration of itself" check somewhere 13:30
m: my $foo = $foo ~ "hi"
camelia 5===SORRY!5=== Error while compiling <tmp>
Cannot use variable $foo in declaration to initialize itself
at <tmp>:1
------> 3my $foo = $7⏏5foo ~ "hi"
expecting any of:
lizmat yeah, but this would not be a declaration
timo m: my int @foo = @foo.map({ *.Str })
camelia 5===SORRY!5=== Error while compiling <tmp>
Cannot use variable @foo in declaration to initialize itself
at <tmp>:1
------> 3my int @foo = @7⏏5foo.map({ *.Str })
expecting any of:
timo yes, but the code to figure it out already exists somewhere, ripe to be stolen
lizmat guess it's the static optimizer :-( 13:31
timo ah, hm, but this isn't always as easy tho 13:40
just mentioning the variable being assigned to, i mean
there's valid uses for that
@!bleh = 0 xx @!bleh.elems or what have you
lizmat m: my @a = 0 xx @a.elems 13:42
camelia 5===SORRY!5=== Error while compiling <tmp>
Cannot use variable @a in declaration to initialize itself
at <tmp>:1
------> 3my @a = 0 xx @7⏏5a.elems
expecting any of:
lizmat that is able to see it ?
timo i mean not in declaration
like your golf earlier; my str @a = <a b c>; @a = 0 xx @a; 13:43
that should not be rejected by whatever's doing the checking
13:43 patrickb left 13:44 patrickb joined
Altai-man releasable6, status 13:49
releasable6 Altai-man, Next release in ≈7 days and ≈5 hours. 5 blockers. Changelog for this release was not started yet
Altai-man, Details: gist.github.com/f5008efaea5f43630b...998ec26882
15:18 vrurg left 15:21 patrickb left
[Coke] at one point we (i?) added "has conflicts" as a tag to some PRs. It looks like github is managing this for us now. Anyone mind if I kill that tag on the Rakudo PRs? 15:30
15:30 melezhik joined 15:32 melezhik left
[Coke] github.com/rakudo/rakudo/pull/4447 - any objection to me merging Altai-man's PR here? 15:38
Altai-man [Coke], I think it wants one more commit from vrurg to be addressed. 15:39
.oO ( You can (not) adverb ) 15:40
[Coke] eh. I agree with your comment. 15:41
Geth rakudo/add-two-error-message-tests: 5aba3d3126 | Altai-man++ (committed using GitHub Web editor) | t/05-messages/03-errors.t
Use longer error message
[Coke] ... /me kills the test he was just running.
Geth nqp: 6b52bd89be | (Jonathan Worthington)++ | tools/templates/MOAR_REVISION
Bump for assorted MoarVM fixes
tbrowder .tell jnthn roast PR #759 for the heredoc change is ready for review again
tellable6 tbrowder, I'll pass your message to jnthn
[Coke] Altai-man: ok, if the checks pass, let's merge that. 15:43
Geth rakudo: ef95fe2e1b | (Jonathan Worthington)++ | tools/templates/NQP_REVISION
Bump for assorted MoarVM fixes
rakudo: ca3355a873 | (Jonathan Worthington)++ | src/vm/moar/dispatchers.nqp
Get callwith working with complex dispatches

When we combine different kinds of dispatch and also have callwith, the arguments need to apply to all outer dispatches too. For example, if we have a wrap of a multi method, and do a `callwith` in the wrapper, then the arguments have to apply to the multi and method dispatches too. A description of the strategy can be found in the large comment added in this commit.
rakudo: d6d90f41e0 | (Jonathan Worthington)++ | src/vm/moar/dispatchers.nqp
Don't set up a dead resumption with no wrappers

If the resumption will already be exhausted, there's no reason to set it up in the first place. An alternative is to handle the already exhausted at resume initialization case in the resume callback, but this is both simpler and cheaper.
roast: 6d88220c78 | (Jonathan Worthington)++ | S06-advanced/dispatching.t
Unfudge some dispatcher tests, add some more
Altai-man releasable6, status 15:47
releasable6 Altai-man, Next release in ≈7 days and ≈3 hours. 3 blockers. Changelog for this release was not started yet
Altai-man, Details: gist.github.com/5b908bff8eb5ee187f...185019a5ec
[Coke] lizmat: for github.com/rakudo/rakudo/pull/3897, is the fix to add an explicit use MONKEY-SEE-NO-EVAL in the impacted test files? 15:57
lizmat I'd say, yes 16:00
16:14 MasterDuke joined
[Coke] for an older PR like that, should we rebase and force push? 16:16
(and then deal wtih fallout) Seems slightly nicer than merging master in.
17:08 melezhik joined 17:10 Altai-man left 18:02 reportable6 left 18:04 reportable6 joined 18:51 Geth left, Geth joined 18:52 RakuIRCLogger joined
lizmat the new logs server is now live: logs.liz.nl/home.html 19:01
19:18 sena_kun left 19:35 sena_kun joined 20:01 melezhik left 20:06 vrurg joined 20:48 RakuIRCLogger left 20:49 RakuIRCLogger joined 21:07 melezhik joined
Geth rakudo: a78c9f0dba | (Tom Browder)++ | src/Perl6/Grammar.nqp
Prevent heredocs continuing after a block

This change addresses proper handling of heredocs raised in issue #4539 where the docs implied a heredoc could be defined following a block.
Jonathan said that was not intended and explained ... (7 more lines)
rakudo: 308d68561d | (Tom Browder)++ (committed using GitHub Web editor) | src/Perl6/Grammar.nqp
Merge pull request #4567 from tbrowder/fix-heredoc

Prevent heredocs continuing after a block
22:15 linkable6 left 22:16 linkable6 joined 22:33 timo left