Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jaredloomis/poly-os
Operating System written in multiple unconventional languages
https://github.com/jaredloomis/poly-os
Last synced: about 2 months ago
JSON representation
Operating System written in multiple unconventional languages
- Host: GitHub
- URL: https://github.com/jaredloomis/poly-os
- Owner: jaredloomis
- Created: 2015-02-19T19:35:19.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2015-03-05T07:53:24.000Z (almost 10 years ago)
- Last Synced: 2024-04-20T16:52:40.366Z (9 months ago)
- Language: C
- Size: 1.24 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Poly OS
===An attempt at writing an Operating System that is written in
many languages not usually used for systems programming.Right now it's mostly C, Assembly, and Rust, with Idris
almost working (using a modified RTS).Languages I might try using
===- Rust
- Fairly easy to run on bare metal
- Idris
- Requires modifications to RTS
- D
- Fairly easy to run on bare metal
- Nim
- Fairly easy to run on bare metal (?)
- ATS
- Fairly easy to run on bare metal (?)
- Really ugly syntax, might want to write a preprocessor / new parser
- Haskell
- Modify JHC RTS to remove unsupported operations
- Modify GHC LLVM RTS (? This might be too difficult)
- Mercury
- Efficient (low heap usage?) because of linear types
- Has a "high-level" C code generator that might be better suited to writing low-level code
- Clean
- Efficient (low heap usage?) because of linear types
- Modify RTS
- Coq
- Via [coq-compile](https://github.com/coq-ext-lib/coq-compile). It would be pretty cool to have Coq code in a kernel...
- coq-compile relies on an old version of LLVM (3.1), so I have to either rewrite coq-compile or use an old version of LLVM
- Java / Scala
- Via [RoboVM](https://github.com/robovm/robovm) (might be similar projects that are better)Using [Meaty Skeleton](http://wiki.osdev.org/Meaty_Skeleton) as a template