Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
LinearML almost fits the bill, but it doesn't have manual memory management. It has a linear type system that is similar to Rust's borrow checker. All values are required to be used exactly once, except for primitives types which can be used multiple times. You can observe a value (similar to Rust's shared reference), but you can't store observed values in records or variants.
You could have a ML with ref counting which would meet some of your requirements. I came up with such a design for some of the planned Spiral AI chip backends, but haven't gotten to actually implementing it since I do not have any of aforementioned chips on hand yet.
That made me think of this project Cogent. This is almost certainly not what you’re looking for, because it’s aimed at formal verification. But, it does have some interesting properties, like manual memory management through uniqueness types. It doesn’t even support recursion though so, probably not so good as a general purpose PL.
Related posts
- Thoughts on the Rascal meta-programming language
- I'm a freelancer and I've got a customer who is asking for USB driver for a new device. They want it written in c++ and I said I'd only consider creating and supporting it if it was written in Rust. 🤷♂️
- Dafny is a verification-aware programming language
- Ask HN: Usefulness of formal verification (Coq) and formal verification (TLA+)?
- @Nullable et @NonNull