Skip to content
This repository has been archived by the owner on Mar 10, 2020. It is now read-only.

Related work

Zhen Zhang edited this page Dec 14, 2016 · 2 revisions

House

House [1] is an earlier try to build an OS with Haskell. Here is a incomplete comparison between House and HaLVM:

  • HaLVM is in active development and supports GHC 7.8.3, while House is a little outdated. The Lighthouse project ended in 2010 and was using GHC 6.8.2 version. And you can also get a 2009 version of House which has Gadgets support in GitHub.
  • HaLVM is more "lightweight" and more hardware-compatible since it is built on Xen. House is much more heavier with a bunch of C code and bare-metal supporting code.
  • HaLVM is an "Unikernel", or "Library OS", while House is more like a traditional OS. For example, House took care of paging (in Haskell!) but HaLVM doesn't have to. And House even has a GUI.
  • HaLVM is more for real-purpose usage while House is more academic-oriented. HaLVM doesn't even have a paper for it. (But some academic projects(EsseOS [2], source not available) were built on top of HaLVM)

References

  • [1] Thomas Hallgren, Mark P. Jones, Rebekah Leslie, and Andrew Tolmach. 2005. A principled approach to operating system construction in Haskell. In Proceedings of the tenth ACM SIGPLAN international conference on Functional programming (ICFP '05).
  • [2] Klaus Stengel, Florian Schmaus, and Rüdiger Kapitza. 2013. EsseOS: Haskell-based tailored services for the cloud. In Proceedings of the 12th International Workshop on Adaptive and Reflective Middleware (ARM '13)