I've finished migrating all the Roc code in the unicode library (draft PR #31), all the tests pass and all the examples work. :grinning:
That said, there are a few TODOs:
crash "${foo}" does not work): there will be a few local cleanups when the bugs are resolved.List.keep_oks and List.reverse) so I just added basic implementations for now, and will remove them once the builtins are available.CodePoint from CodePoint :: U32.{...} to CodePoint :: {cp : U32} to work around the fact that it wasn't possible to make the former work, but @Jared Ramirez solved this so I'll soon go back to CodePoint :: U32. Note that the original version used CodePoint :: InternalCP.{...} and InternalCP :: U32.{...}.Btw, the use of Internal* types makes me wonder whether this is a satisfying & sufficient convention or whether there should be full intra-package visibility.
there's an alternative to Internal now, but I haven't tried it out yet
it's how we do Builtin.roc except you export each of the individual types - so you have one big type which you don't expose directly, and then inside that one big type each of its associated types can all reference each other
and then you expose those at the package boundary without exposing the outer type that they're all under
I haven't actually tried this though, and I'm not sure if the outer type ends up in error messages (it might; I'm not sure)
if you have time, would be great to have gh issues for the things you ran into that didn't work! :smiley:
the PR with the Codepoint := U32 landed, so should be g2g now!
@Aurélien Geron do you mind if I push this along a little too?
I think it's fine for the test gen script to depend on roc-parser -- hopefully we can cut a release really soon.
I'm thinking of replacing the CI scripts with setup-roc and an updated release workflow etc and if everything is green we can cut a release. :grinning_face_with_smiling_eyes:
Yes, thanks @Luke Boswell . I'm traveling for the next 4 weeks, so I won't be as available. If you want to jump in now, it's actually great timing. :folded_hands:
Great, if you dont mind I might mint a roc-parser release and then unicode too -- hopefully this evening
Awesome, go for it! :tada:
Richard Feldman said:
if you have time, would be great to have gh issues for the things you ran into that didn't work! :smiley:
Sure:
thank you, I really appreciate it! :smiley:
A few builtin functions were missing (e.g.,
List.keep_oksandList.reverse)
List.reverse is now called List.rev
Last updated: Jul 23 2026 at 13:15 UTC