We have flaky builtins.
One idea I had, was if we remove the shared memory infrastructure currently used for roc test, do we still need bitcode anymore? The test platforms will bundle libc and implementations for working with RocStr etc.
When I had an attempt at removing that, or maybe it was with the zig upgrade, I had that idea but didn't get around to asking... basically can we rip all this flaky stuff out now?
A message was moved here from #announcements > Snake case support PSA by Luke Boswell.
I don't follow the question
What specifically are you trying to remove?
Modernize Expect
https://github.com/roc-lang/roc/issues/6930
- Rip out all of the old shared memory infrastructure.
I thought I understood what this meant... but I'm not confident
Nothing blocking it. But we need to modernize expect and have a it working with platforms before we delete all the shared infra (I mean can be done in the same pr, but we shouldn't rip it out until we have the replacement)
Yeah... just wanted to know if this would remove the need for bitcode, as that seems to be the cause of all our flakiness with the builtins
Remove the need for bitcode as a whole?
We use the bitcode for all of the zig builtins
ok, yeah I misunderstood. I was forgetting about that, I thought it may have just been for linking with the test platforms.
We need to bundle the bitcode so roc can link that also to produce an object file with all the correct symbols defined in it.
Yeah, and by consuming it as bitcode, llvm can optimize it way more than only generating an object file
thanks for clearing that up
Last updated: Jul 06 2025 at 12:14 UTC