5 ms·
What does "HLL" stand for here? Wikipedia offers "High-level language", but I can't quite get that to fit in this context.
by nightpool 4y ago
What does "HLL" stand for here? Wikipedia offers "High-level language", but I can't quite get that to fit in this context.
- deleted 4y ago[deleted]
- lproven 4y agoYes, high-level language. (I submitted this post & wrote the title.) Oberon is both the programming language and the operating system, including the IDE and the compiler and the UI. "Oberon" is the name of the whole thing, and it's about 30K LOC in total. The entire thing is smaller than a typical Linux console-mode text editor. The original OS -- that is the entire thing, from kernel to tiling UI to compiler -- was about 12K LOC: http://www.edm2.com/0608/oberon.html http://www.edm2.com/0608/oberon.html The compiler is about 4K LOC: https://dercuano.github.io/notes/oberon.html https://dercuano.github.io/notes/oberon.html In Linux terms it is hard to even comprehend how tiny this OS is.
- nightpool 4y agoKind of a strange thing to mention in the title given that it doesn't show up anywhere in the article at all (which is entirely about the UI/UX)
- lproven 4y agoThe article is the best introduction and overview I know. There are many more comprehensive sites. The revival is worth a look: http://www.projectoberon.com/ http://www.projectoberon.com/ This academic paper is highly readable and interesting: https://news.ycombinator.com/item?id=15704806 https://news.ycombinator.com/item?id=15704806 Wikibooks has excellent docs in depth: https://en.wikibooks.org/wiki/Oberon https://en.wikibooks.org/wiki/Oberon But I often cite the Ignore the Code post when someone doesn't know what Oberon is. I used it in a comment elsewhere on HN, and thought "why not submit it?" and here we are. The word "language" wouldn't fit in the title, AFAICR.
- alexisread 4y agoIt does mean high level language, and in this context it's trying to illustrate that Oberon is used to write the OS and drivers, despite having GC, a repl, objects and other high-level constructs (compare with C for example). The general assumption is that if you don't have exact control over memory and threading, you can't write an OS.