A (Not So Gentle) Introduction To Systems Programming In ATS
summary
A statically typed ML that D compiles to C claims type-safe pointer arithmetic and the same low-level control as C while enforcing safety with linear-logic proof objects consumed at the type level, refinement types that prevent out-of-range calls, and implicit proofs for ergonomics. Examples include C interop with malloc and a generic swap, a recursive factorial that uses a termination metric, and a one-pass efficient fold via tail allocation. The language is large, complex, and steep to learn but enables GC-free low-latency systems.
AI-written summary · about
chapters (4)
related talks
01h 22mCostless Software Abstractions for Parallel Architectures
01h 01mVal: A Safe Language to Interoperate with C++
36mThe language that isn't
23mFunctional Programming in C++ (Run time vs Compile time types)
52mDo Programming Language Features Deliver on their Promises
25mType System Tips for the Real World
49mA new look at TMP
35mLet’s Talk About Rust
