RIP Prof Wirth Side note: can we get a better tag on this to show it's a PDF file? I think the source is reputable but I always freak out when a url goes to a pdf.
Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
11–20 of 43 posts
Re: Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
#12It was a great teaching language.
Re: Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
#13Re: Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
#14> The largest chapter of the 1992 edition of this book dealt with the compiler translating Oberon programs into code for the NS32032 processor. This processor is now neither available nor is its architecture recommendable. Instead of writing a new compiler for some other commercially available architecture, I decided to design my own in order to extend the desire for simplicity and regularity to the hardware. The ult…
The University of Tokyo has a similar project that I believe can serve as a stepping stone. Check out the CPU experiment: https://ytsmiling.tech/2017/04/02/cpuex.html
If you don't like it (probably due to lack of documentation), at this stage you can also design your own projects. Basically a CPU sub-project that uses Verilog or any HDL, which leads to an OS and compiler project.
Re: Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
#15After this follow up on the Oberon System 3, with its Gadgets component model, and a mix of JIT/AOT compilers, "The Oberon companion - a guide to using and programming Oberon System 3" https://www.semanticscholar.org/paper/The-Oberon-companion-a... You can access the source code from Rochus fork, https://github.com/rochus-keller/OberonSystem3 Or the Active Oberon evolution, although not directly done by Niklaus Wirth…
Re: Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
#16I re-typeset the text in TeX and have a nicer looking PDF for those that care: https://github.com/guidoism/tex-oberon
Re: Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
#17I re-typeset the text in TeX and have a nicer looking PDF for those that care: https://github.com/guidoism/tex-oberon
Re: Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
#18I re-typeset the text in TeX and have a nicer looking PDF for those that care: https://github.com/guidoism/tex-oberon
Re: Project Oberon: Design of an operating system, a compiler, and a computer [pdf]
#19> The largest chapter of the 1992 edition of this book dealt with the compiler translating Oberon programs into code for the NS32032 processor. This processor is now neither available nor is its architecture recommendable. Instead of writing a new compiler for some other commercially available architecture, I decided to design my own in order to extend the desire for simplicity and regularity to the hardware. The ult…
The good part is the commentary about the design decisions and trade-offs. That is invaluable, because it is the wisdom of Niklaus Wirth, towards the end of his career, drawing on a lifetime of experience. He was one of those rare polymaths, with a broad and deep understanding, of both the circuitry, and the more abstract parts of CS. He always generalized, tried to understand the principle, and places things in their historical context and explains how they developed. Because it's Wirth, the history lesson is often based on personal experience. It produces a good synthesis, in my opinion. For example:
> The second [interface] (MouseX) is included here for historical reasons. It was used by the computer Lilith in 1979, and used the same Mouse as its ancestor Alto (at PARC, 1975). It is distinguished by a very simple hardware without its own microprocessor, which is currently contained in most mice. This goes at a cost of a 9-wire cable. But today, microprocessors are cheaper than cables. We include this interface here, because it allows for a simple explanation of the principle of pointing devices.