|
|
|
|
|
by tc
3140 days ago
|
|
This DSL seems largely motivated by the desire for provable compile-time bounds checking. One general-purpose modern language that can check bounds at compile time and generate code that is performance-competitive with C is ATS: http://www.ats-lang.org/ Dependent types are meant to solve exactly this class of problem. Rust has an RFC for adding these: https://github.com/rust-lang/rfcs/issues/1930 |
|
Puffs does not use infinite precision integers (aka "big ints"), for performance. But Puffs still checks for arithmetic overflow.
Re dependent types, I made a comment elsewhere on this page that "dependent types are one way to prove bounds safety, but they're not the only way".