4 ms·
The key problem is: > practical/real world Definitions of that vary wildly. Oberon is a personal favourite of mine: tiny, a few hundred KLOC for the entire O
by lproven 4y ago
The key problem is:
> practical/real world
Definitions of that vary wildly.
Oberon is a personal favourite of mine: tiny, a few hundred KLOC for the entire OS, compiler IDE, UI, in a native-code-compiled, type-safe language.
- anta40 4y agoAh, another Niklaus Wirth's work. Any guide on how to build and run it?
- lproven 4y agoIt depends on what platform you wish to work. There is quite comprehensive documentation on wikibooks: https://en.wikibooks.org/wiki/Oberon https://en.wikibooks.org/wiki/Oberon You can run it in a browser: https://schierlm.github.io/OberonEmulator/ https://schierlm.github.io/OberonEmulator/ There is an app in the Mac App Store: https://apps.apple.com/us/app/oberon-workstation/id1057155516 https://apps.apple.com/us/app/oberon-workstation/id105715551... You can run it on Linux: http://oberon.wikidot.com/ http://oberon.wikidot.com/ It also runs atop Windows and macOS. Lots of choices, really. :-)
- carapace 4y agoYou can use it live in the browser from here: http://schierlm.github.io/OberonEmulator/ http://schierlm.github.io/OberonEmulator/ Book and code are available from Wirth's site: https://people.inf.ethz.ch/wirth/ProjectOberon/index.html https://people.inf.ethz.ch/wirth/ProjectOberon/index.html But the mirror is a little nicer looking (although older? It says, "The second (2013) edition of the book and source code are published on Prof. Wirth's website. We provide links to the original material here, and local zipped copies, with kind permission from the authors."): http://www.projectoberon.com/ http://www.projectoberon.com/ Several emulators for the Oberon RISC CPU are available: In C with SDL graphics: https://github.com/pdewacht/oberon-risc-emu https://github.com/pdewacht/oberon-risc-emu In JS and Java, from the live version above: http://schierlm.github.io/OberonEmulator/ http://schierlm.github.io/OberonEmulator/ In Go: https://github.com/fzipp/oberon https://github.com/fzipp/oberon People have used Wirth's Verilog with FPGAs to make actual Oberon workstations. (My own somewhat embarrassing Python emu: https://git.sr.ht/~sforman/PythonOberon https://git.sr.ht/~sforman/PythonOberon )