[Oberon] High-level language vs assembler

Paul Reed paulreed at paddedcell.com
Tue Oct 7 12:04:02 CEST 2014

Hi Chris (Glur),

> That sounds like a closed-system: all the I/O has [tried to] be catered
> and is hidden behind [high-level language]

It's always been a strong objective of Prof. Wirth's language designs,
that "nothing is hidden".

In other words, the tedium (and tendency for programmer error) of
machine-code programming should be removed, but otherwise it should be
pretty obvious what the code is going to do at the machine-level. 
(Compare that with most contemporary languages!)

This philosophy is extremely clear from the compiler design notes on his
home page


in the section Oberon (for the ARM), and in Miscellaneous (for PICL, a
language for Microchip Technology Inc.'s 8-bit PIC microcontroller).

In the 2013 update to Project Oberon (in the Project Oberon section),
there is no assembler present or required - the entire operating system is
written in high-level code.

Yet the system runs (and self-compiles) efficiently on a 25MHz RISC
processor and graphical display in considerably less than 1MB RAM.

It's well worth studying, to see how that was achieved (for this reason
alone, even if not for any other!).


More information about the Oberon mailing list