Coq Compiler Projects
The CompCert formally-verified C compilerProject mention: Multicore OCaml: September 2021, effect handlers will be in OCaml 5.0 | news.ycombinator.com | 2021-10-04
OCaml is becoming a must learn language for those who want to take their C programming to the highest levels, because:
1. Frama-C, which enables writing bug-free C programs, is implemented using a combination of OCaml and the Coq proof assistant (which is itself implemented in OCaml):
2. CompCert, a formally verified C compiler, is implemented using OCaml and Coq:
Nothing at this level yet exists in the Rust and Zig ecosystems, for example. Rust is a very complicated language with many features which makes formalization much harder than with C and OCaml, which both had mathematical ideas of simplicity, analyzability, and minimalism inspire their designs, even if they continue to grow into more complicated monsters, which, incidentally this OCaml 5.0 release will contribute towards. :-)
Replib: generic programming & Unbound: generic treatment of bindersProject mention: Question about Unbound's FreshM/LFreshM (Compiler) | reddit.com/r/haskell | 2021-03-26
Here's an example of using LFresh for the simply-typed lambda calculus. https://github.com/sweirich/replib/blob/master/Unbound/Examples/STLC.hs Note that LFresh and FreshM are monads, so they will only guarantee fresh name generation while in the monad. contFreshM lets you "run" the monadic computation, so you'll only want to call it at the "top level" of your program.
Run Linux Software Faster and Safer than Linux with Unikernels.
Are you hiring? Post a new remote job listing for free.