Project Oberon - The Design of an Operating System and Compiler
by Niklaus Wirth, Jürg Gutknecht
Number of pages: 441
This book presents the results of Project Oberon, namely an entire software environment for a modern workstation. The project was undertaken by the authors in the years 1986-89, and its primary goal was to design and implement an entire system from scratch, and to structure it in such a way that it can be described, explained, and understood as a whole. In order to become confronted with all aspects, problems, design decisions and details, the authors not only conceived but also programmed the entire system described in this book, and more. Although there exist numerous books explaining principles and structures of operating systems, there is a lack of descriptions of systems actually implemented and used. The book gives advice on how a system might be built, and demonstrates how one was built. Program listings therefore play a key role in this text, because they alone contain the ultimate explanations.
Home page url
Download or read it online for free here:
by Nils M Holm - Lulu Press
This book explains compiler construction in simple terms and by means of practical examples, but without avoiding the fundamental theory. It does not stop where other books do, and takes you on a tour through the whole compilation process.
by Dirk Vermeir - Vrije Universiteit Brussel
Contents: Introduction; Lexical analysis; Parsing; Checking static semantics; Intermediate code generation; Optimization of intermediate code; Code generation; Introduction to x86 Assembler Programming under Linux; Mc: the Micro-x86 Compiler; etc.
- Free Software Foundation
This manual documents the internals of the GNU compilers, including how to port them to new targets and some information about how to write front ends for new languages. It corresponds to the compilers (GCC) version 4.4.0.
by Robert Nystrom - craftinginterpreters.com
This book contains everything you need to implement a full-featured, efficient scripting language. You'll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection.