🦋 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: ... | Logs available at irclogs.raku.org/raku-dev/live.html | For MoarVM see #moarvm
Set by lizmat on 8 June 2022.
00:00 reportable6 left 00:02 reportable6 joined 02:15 linkable6 left, evalable6 left 02:16 linkable6 joined 02:17 evalable6 joined 02:56 kjp left
releasable6 Next release in ≈6 days and ≈15 hours. There are no known blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 03:00
03:00 kjp joined 03:57 Xliff joined 06:00 reportable6 left 06:02 reportable6 joined
Geth nqp/main: 1ba83bc2f7 | (Christian Bartolomäus)++ | src/vm/jvm/runtime/org/raku/nqp/runtime/Ops.java
[JVM] Handle null in is(int|num|str)

This avoids a NullPointerException in code like the following:
   nqp::say(nqp::isstr(nqp::null()))
That code prints a 0 now -- which brings the behaviour of the JVM backend in line with that of MoarVM.
07:20
09:19 Xliff left 09:25 sena_kun joined 10:52 NemokoschKiwi joined 11:21 NemokoschKiwi left 11:33 ab5tract joined 11:58 ab5tract left, ab5tract joined 12:00 reportable6 left 12:02 reportable6 joined 12:23 bartolin joined 12:34 ab5tract left
Nemokosch I updated the PR but I haven't compiled and checked the results yet 12:42
and some Rakudo tests failed 👀 12:59
let's see the spectests, CI tests are passing so far... 13:00
nine Somehow RakuAST is like your boss. Everything has highest priority and must be done as soon as possible :/ 13:26
Nemokosch at first I associated at a videogame boss xD
the spectest passed... I don't know why the "profiler" test failed, really 13:27
13:38 NemokoschKiwi joined 13:41 NemokoschKiwi left 13:55 dogbert17 left 13:59 dogbert17 joined
nine So, I got support for implicit *%_ on methods implemented and it seems to gain us a spectest but at a loss of 3 tests. The latter are all rakuast tests and the reason they fail is that I cheated. 14:19
I added a step called by the Actions to be run before IMPL-CHECK. The reason I need this is that the routine's BEGIN phaser runs too late to set up those implicit arguments. The BEGIN phaser runs after we've run name resolution which leads to caching of AST declarations, so we never pick up the implicitly generated declarations. 14:21
Side node: name resolution being the trigger is why method foo() { 1 } was fine and method foo() { note } exploded with "lexical %_ not found". 14:23
I think this shows that we need a PRE-CHILDREN=-BEGIN and POST-CHILDREN-BEGIN instead of just a PERFORM-BEGIN. Because routines also need to run BEGIN effects after their children. 14:24
I seem to remember a document written by jnthn about this kind of timing things in RakuAST. Anyone remember where that was? 14:25
16:26 raschip joined
nine Found it! gist.github.com/jnthn/420e93cd4ca0...92c10fb361 17:10
Geth rakudo/main: c9e391f08c | (Márton Polgár)++ (committed using GitHub Web editor) | 2 files
Fix storing of typed Hashes from a list (#5172)

Prior to this commit, a Hash with typed keys ("hash object") couldn't be properly stored in another Hash, typed or untyped, if it appeared in a list. This is a regression from July 2016, commit ecfb956bcf92488106a85f9462731095db11dfed . In the affected timespan, the behavior was the following: ... (26 more lines)
17:39
roast: 54762714e5 | (Elizabeth Mattijsen)++ | S09-hashes/objecthash.t
Revert "Revert "Test for parameterised hashes as entries to store (#828)""

This reverts commit 0c45c3b72886151cec4eb1e5ebfd487a6ec56d2b.
17:40
17:41 linkable6 left 17:43 linkable6 joined 18:00 reportable6 left 18:01 reportable6 joined
Nemokosch nine: where did you find this gist? If it's useful, maybe it could find a place in the repository. 18:37
18:38 ab5tract joined
nine Found it via IRC log 18:42
Geth rakudo/main: f8e22b6fd6 | (Elizabeth Mattijsen)++ | docs/rakuast/rakuast-compilation-phases.md
Copy gist of jnthn from 9 months ago for posterity
18:53
lizmat so don
e
19:03 ab5tract left
bartolin .tell vrurg I tried to debug a new problem with the jvm backend: Ít explodes badly if "use v6.e.PREVIEW" is used. If I'm not mistaken, this happens, because Version.new is called with a BOOTStr -- and on the JVM backend coercion to Str fails. 19:11
tellable6 bartolin, I'll pass your message to vrurg
bartolin .tell vrurg It seems to happen from at least two places: github.com/rakudo/rakudo/blob/c9e3...er.nqp#L43 and github.com/rakudo/rakudo/blob/c9e3...d.nqp#L619 Do you have a quick idea how the leakage of BOOTStr could be avoided in a clean way?
tellable6 bartolin, I'll pass your message to vrurg
bartolin .tell vrurg Another thing I noticed during debugging was that Version.new was once called with "6.e.PREVIEW" and on other occasions with "3.PREVIEW". I made a short gist to show what I mean (this is on MoarVM): gist.github.com/usev6/559c96ddc10b...b0aa20ff65 19:12
tellable6 bartolin, I'll pass your message to vrurg
Geth rakudo/main: fdb42827ba | (Elizabeth Mattijsen)++ | 2 files
Get rid of a lot of intermediate methods

Instead, for each scopy phaser, specify the name of the phaser in a call to "add-phaser", and also whether it should activate an exit handler. Makes it clearer in the code for the actual phasers what they do.
19:39
19:53 ab5tract joined
Geth rakudo/main: 896ffc14cf | (Elizabeth Mattijsen)++ | 2 files
Let PRE/POST phaser use source if possible in message

Before, it would use the deparse of the blorst provided always, which can be subtly different from the actual source code, especially with regards to whitespace. When compiled from source, use the source. Otherwise, fall back to deparsing as before.
20:36
21:07 raschip left 21:09 raschip joined 21:14 ab5tract left 21:30 sena_kun left
stevied does this smell like a 2022.12 bug to anyone else? github.com/tony-o/raku-fez/issues/80 21:42
lizmat feels more like a Ventura issue ? 21:44
I mean, an issue with Raku on Ventura?
stevied raku
why does it work in 2022.07 and not 2022.12?
lizmat that I do not know :-) 21:45
vrurg bartolin: best it be if JVM autobox BOOTStr the same way as moarvm does. Otherwise, you could revert that micro-optimization I have done for World.nqp in e1a7ca622771cbbe1e6304adbf862d65176e1cbc – two lines where $Str and nqp::box_s were removed. As to the Compiler, perhaps try nqp::hllizefor?
tellable6 hey vrurg, you have a message: gist.github.com/8359e1b7933a0ada14...15a5c9d2a1
hey vrurg, you have a message: gist.github.com/a2b92e2d7a41ef8154...9f1dee3b16
hey vrurg, you have a message: gist.github.com/817f6aab2019b01351...5c664aa7cf
stevied i need ot confirm I"m using same version of fez. Maybe I'm mistaken
yeah, same version of fez 21:48
bartolin vrurg: thanks for the pointers. I started to play with nqp::hllizefor already and had some success. I'll be afk until the next weekend -- will continue then. (But I'm sceptical that I'll be able to make the jvm backend autobox BOOTStr in general.) 21:52
22:07 MasterDuke joined
Geth rakudo/main: 4 commits pushed by (Stefan Seifert)++ 22:16
nine That was waay harder than expected
lizmat 110 / 643 for me 22:23
Geth rakudo: usev6++ created pull request #5173:
[JVM] Fix breakage with "use v6.e.PREVIEW"
22:25
vrurg bartolin: Ah, forgot about the 6.e.PREVIEW vs. 3.PREVIEW. The latter is the new internal representation. That's OK. 22:29
22:33 raschip left
lizmat m: say Q| sub a(Int:D $a) { } |.AST.DEPARSE 22:40
camelia sub a (Int:D<True>:D $a) {
}
lizmat nine: looks like :D is interpreted as a ColonPair in the name,
I wonder if that should be handled in the grammar, or in the RakuAST::Name class ? 22:41
otherwise, what is the use of RakuAST::Type::Definedness ?
releasable6 Next release in ≈5 days and ≈19 hours. There are no known blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 23:00
23:36 Nemokosch joined
Nemokosch bisectable6: my @pairs = [(2..4, 6..8), (2..3, 4..5), (5..7, 7..9), (2..8, 3..7), (6..6, 4..6), (2..6, 4..8)]; say @pairs.map: { .[0] ~~ .[1] } 23:36
bisectable6 Nemokosch, Will bisect the whole range automagically because no endpoints were provided, hang tight
tellable6 2023-01-26T18:58:03Z #raku <rf> Nemokosch That was something I was brainstorming I think it is possible.
2023-01-27T10:14:59Z #raku-dev <nine> Nemokosch: sorry to say this, but then you just learned the wrong lession.
2023-01-28T15:00:48Z #raku <patrickb> Nemokosch: I pondered the PR a bit and left a comment. Feedback welcome!
bisectable6 Nemokosch, ¦6c (66 commits): «(True False False False False False)␤» 23:37
Nemokosch, Nothing to bisect!