| 3 Oct 2026 | |||
| lizmat | yeah, push branches, we'll see when it breaks :-) | 11:20 | |
| still plenty of time before release :-) | |||
| ShimmerFairy | That's the good part about deciding to not rush it :) | 11:22 | |
| Geth | rakudo/main: d985b8974d | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | 5 files RakuAST: add ::Name.from-identifier-list (#6789) This is now the actuall workhorse of from-identifier-parts. It allows specification with a list. This is a significant performance improvement when slipping and slurping aren't needed. Adjust internal calls where this would make sense. |
12:04 | |
| rakudo/lizmat-52: 7704bc5c2e | (Elizabeth Mattijsen)++ | 4 files RakuAST: use nqp::ifnull where possible In a lot of cases, a rather elaborate structure was built to provide a value if the given value was nqp::null. Exactly for that purpose, nqp::ifnull was created. So use that instead, resulting in fewer variables and smaller bytecode footprint. Appears to take off about .2 seconds on stage qast when building the core setting (for yours truly). |
12:59 | ||
| rakudo: lizmat++ created pull request #6790: RakuAST: use nqp::ifnull where possible |
|||
| rakudo/lizmat-53: 34a7d51698 | (Elizabeth Mattijsen)++ | 10 files RakuAST: normalize "while !x" and "if !x" structures Using "until" or "unless" as appropriate, or re-arrange the reverse the if/else structure, sometimes allowing for a scope level to be lost |
13:42 | ||
| rakudo: lizmat++ created pull request #6791: RakuAST: normalize "while !x" and "if !x" structures |
|||
| ShimmerFairy | Y'know, realizing that the CI is gonna break regardless, I'm thinking I should just share the rest of my changes now, esp. since I don't want to leave things partially shared for too long. | 14:21 | |
| Geth | nqp/unicode-18.0: 011158ddac | Faye++ | t/nqp/106-unicodenames.t Add tests for Jurchen and Small Seal scripts. These tests ensure their Unicode names are properly generated by the backend. |
14:33 | |
| nqp: ShimmerFairy++ created pull request #879: Unicode 18.0 update |
14:35 | ||
| rakudo: ShimmerFairy++ created pull request #6792: Update for Unicode 18.0 |
14:41 | ||
| roast/unicode-18.0: 3b29e673c4 | Faye++ | 66 files Update generated tests for Unicode 18.0.0 |
14:46 | ||
| roast/unicode-18.0: 23450635d3 | Faye++ | S32-str/utf8-c8.t Add tests for UTF-C8 synthetics in grapheme construction. Inspired by a bug in MoarVM, these tests ensure that UTF-C8 synthetics get handled appropriately as Raku creates NFG strings. In particular, they should be treated as if they were ordinary control characters, meaning they always exist as 1-"codepoint" graphemes, never merging with any other codepoints into larger grapheme clusters. ... (10 more lines) |
|||
| roast/unicode-18.0: d67e6fdee7 | Faye++ | 6 files Update collation tests for bugfixes. With some bugfixes to MoarVM's collation handling, the collation tests need to be regenerated, since the test generator is sensitive to the correctness of the very thing being tested. |
|||
| roast: ShimmerFairy++ created pull request #923: Update for Unicode 18.0 |
14:49 | ||
| ShimmerFairy | That's all the repos then. I haven't touched any of the ChangeLogs or FOO_REVISION files, for the record. | 14:51 | |
| ugexe | we can run Blin against a branch | 14:52 | |
| lizmat: return could work for more than just Bool. things are they way they are right now because they have to be written that way, not because it is some gold standard | 14:54 | ||
| im also worried about people thinking they can make (what they think are) inconspicuous changes and ending up breaking either the constraint contracts or optimizations | 14:56 | ||
| that being said i've got like a bajillion thunk issues i've been trying to work through so no idea if i'll even get around to adding that return functionality | 15:01 | ||
| the thunk stuff for rakuast is exponentially more difficult to get right than legacy because legacy thunks are real blocks made at parse time so closures get the right outer for free, while rakuast thunks hang off expressions and every walk (thunks, phasers, regexes, roles, BEGIN time, etc, etc) has to independently agree on where each block gets declared | 15:03 | ||
| and every edge case fixed opens another | |||
| and that all gets further complicated by the various optimizations so everything has to be tested and considered with and without optimizations | 15:05 | ||
| m: role R { method m { 42 andthen 1 + 2 } }; say "compiled"; # one example | |||
| camelia | compiled | ||
| ugexe | c: role R { method m { 42 andthen 1 + 2 } }; say "compiled" | ||
| committable6 | ugexe, ¦role: «Cannot find this revision (did you mean “coke”?)» | ||
| ugexe | raku -e 'role R { method m { 42 andthen 1 + 2 } }; say "compiled"' | 15:06 | |
| ===SORRY!=== | |||
| QAST::Block with cuid 3 referenced from '<dependencies+deserialize>' has not appeared in -e | |||
| ShimmerFairy | I'll be heading off to bed now, hope the Unicode upgrade doesn't give people too much grief. o/ | 15:17 | |
| ugexe | hmmm, it looks like there is going to conflicts on the branch i've been working on too :( | 15:24 | |
| these large resturcturings are going to make it difficult for me to fix these larger problems that have to touch many parts of the code base | 15:26 | ||
| i think it would be preferable to focus on fixing issues right now | 15:27 | ||
| i guess its inevitable and i'm just getting frustrated with this thunk stuff :/ | 15:36 | ||