3 ms·
But if I understand correctly (I've never used mirage) mirage is a unikernel for ocaml applications. It compiles down to xen system calls, for monitoring and ad
by qop 8y ago
But if I understand correctly (I've never used mirage) mirage is a unikernel for ocaml applications. It compiles down to xen system calls, for monitoring and administration. Mirage isn't actually an implementation of an OS in the traditional sense.
Ocaml is of course already fast. INRIA has been using ocaml for compiler hacking for several decades. The speed comes as no surprise, but eventually rust will have inline assembly support, it's already nurturing some basic SIMD features, it is already being turned for lower level dominance.
I think ocaml could compete, but not the way it is now.
With linear types in the future, perhaps ocaml could follow rust's lead and implement a memory model around move semantics.
I'm not an expert in this area, but I do perceive a nontrivial gap here. Ocaml is not built for writing system drivers. And a good system driver is written in something that was designed to be used for doing so, imo.
- pjmlp 8y agoOberon and Blue Bottle drivers written in Oberon and Active Oberon respectively. http://www.projectoberon.com http://www.projectoberon.com https://svn.inf.ethz.ch/svn/lecturers/a2/trunk/ https://svn.inf.ethz.ch/svn/lecturers/a2/trunk/ Mirage TCP/IP drivers https://github.com/mirage/mirage-tcpip https://github.com/mirage/mirage-tcpip
- steveklabnik 8y agoSounds like you may like https://news.ycombinator.com/item?id=16597329 https://news.ycombinator.com/item?id=16597329