|
|
|
|
|
by chriswarbo
1767 days ago
|
|
ATS seems like a "Worse is Better" approach to dependent types and linear types. It exposes all of their power at the type level, and the value level allows both ML-style high level programming and C-level bit-banging. That's really useful for Yet to actually use that power, developers are pretty much left to implement everything themselves. The nice thing about Rust's borrow-checking approach is that common patterns can be inferred and checked. Linear types ATS offer the same power, but force developers to jump through more hoops 'manually' (and likewise for dependent types, compared to the fancy inference/proof-search approaches of languages like Idris) |
|