Interests: Programming Languages, Computer Security, Formal Methods, Software Engineering
.coerceonly works for wrapping and unwrapping newtypes.
For it to be really useful (like, deserving-of-its-syntax useful), it should also allow coercing e.g.
This will require a bunch of changes; we'll need to put
~>instances into the IR and have
coercethere. We'll also need to perform the actual analysis to determine what roles a type's tyargs should have; this is a "traverse all the types in SCC order" check, though we already have the plumbing for that.
Right now, we're set up to test bootstrapping on Alpine Linux, FreeBSD, and NixOS. It'd be nice to:
- Check that all three build the bit-for-bit same binaries
- "Build the world" like Silver's CI does, but only after the bootstrap tests pass
This would probably mean writing a webhook or something that manages the build pipeline, using the builds.sr.ht API to actually request builds.