3 ms·
Related efforts: https://www.microsoft.com/en-us/research/project/singularity/ https://www.microsoft.com/en-us/research/project/singularity... https://en.wiki
by mike_hearn 4y ago
Related efforts:
https://www.microsoft.com/en-us/research/project/singularity/ https://www.microsoft.com/en-us/research/project/singularity...
https://en.wikipedia.org/wiki/Midori_(operating_system) https://en.wikipedia.org/wiki/Midori_(operating_system)
http://jnode.ro/ http://jnode.ro/
None are functional but as noted in other comments, you end up needing to do everything in a monad anyway if you try to do an OS in an FP language. An OS is all about managing a large and fundamentally imperative block of hardware state so pure FP isn't an obvious fit.
- weatherlight 4y agoMirageOS is an OS built in a (mostly) FP language, Ocaml.
- rurban 4y agoNo, really it should be the Lisp Machine, Genera. Another older procedural approach would be Solo with Concurrent Pascal. http://pascal.hansotten.com/per-brinch-hansen/superpascal/ http://pascal.hansotten.com/per-brinch-hansen/superpascal/
- mike_hearn 4y agoYes, good point. Does Lisp still get classed as pure FP in the post-Haskell world though? You don't need monads to express side effects in it, iirc.