🦋 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.
patrickb I'm especially impressed with the reliability improvements sprinkled in between (there have been many thread unsafe places in the mop that are now tightened up). lizmat++ 07:55
09:43 sena_kun joined 09:56 sena_kun left
Geth nqp/main: 9b9610ab0c | (Elizabeth Mattijsen)++ | src/QRegex/NFA.nqp
Streamline QRegex::NFA.quant
10:32
lizmat meh, broke 1 rakudo test 10:47
Geth nqp/main: faf77024d3 | (Elizabeth Mattijsen)++ | src/QRegex/NFA.nqp
Fix regression in QRegex::NFA.quant
10:57
nqp/main: 957cd6095e | (Elizabeth Mattijsen)++ | src/QRegex/NFA.nqp
Streamline QRegex::NFA some more

  - qastnode
  - subcapture
  - save
  - mergesubrule
11:41
nqp/main: f01d1a8197 | (Elizabeth Mattijsen)++ | src/QRegex/NFA.nqp
Streamline QRegex::NFA some more

  - run
  - run_alt
  - generic
  - instantiate_generic
12:46
lizmat meh, broke 2 tests 12:57
Geth nqp/main: 0b12b4e9b5 | (Elizabeth Mattijsen)++ | src/QRegex/NFA.nqp
Fix regression in QRegex::NFA.mergesubrule

The rule can also be a QAST::Var, not just a str
12:59
13:04 timo left 13:21 timo joined 14:11 lizmat_ joined 14:14 lizmat left, samebchase left, samebchase joined 14:25 lizmat_ left, lizmat joined
Geth nqp/main: faaef56db7 | (Elizabeth Mattijsen)++ | src/QRegex/NFA.nqp
Streamline QRegex::NFA.optimize
16:05
nqp/main: 8b69223959 | (Elizabeth Mattijsen)++ | 2 files
Create nqp::const::EDGE_xxx connstants

To allow them to be used in QRegex::NFA, instead of locally defined integer variables set at runtime
17:27
nqp/main: 784bc37ce5 | (Elizabeth Mattijsen)++ | 10 files
Bootstrap NQP, to make nqp::const::EDGE_xxx constants

work in NQP while building NQP
nqp/main: 5293014f91 | (Elizabeth Mattijsen)++ | src/QRegex/NFA.nqp
Use nqp::const::EDGE_xxx constants

instead of locally defined ints that are set at runtime
17:29
rakudo/main: 9d193cedeb | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION
Bump NQP to get a lot of streamlining tweaks
17:53
nqp/main: dc8c656412 | (Elizabeth Mattijsen)++ | src/how/NQPClassHOW.nqp
Make the value generator only run if really needed

Since the value generator can be relatively expensive, make sure it only runs if it is really necessary: namely when the key is really not in the cache after having unique access to it.
Also, the value generator may have race conditions of its own, so it feels better to have this run inside the protected block.
18:14
18:35 notna joined 18:36 sena_kun joined
Geth nqp/main: db750bb2ad | (Elizabeth Mattijsen)++ | src/how/NQPClassHOW.nqp
Don't re-check for given key if it didn't exist

This optimization appears to have negative performance impact. So the value generator *may* run twice for the same key, *but* it will still run in a protected block.
18:39
rakudo/main: 2a76a52413 | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION
Bump NQP to get cache changes

The value generator will now run inside the protected block, to prevent crashes from race conditions within the value generator.
18:55
19:20 notna left 22:48 sena_kun left