NMH's Ephemeral Page

Who am I?

NEW BOOK: COMPILERS RELOADED

Books

Computer Science

Scheme 9 from Empty Space [2nd Edition; no free version!] (PDF)
A guided tour through every single line of a real-world interpreter for the Scheme programming language with lots of annotations and diagrams. It includes even gory details such as macro expansion, call/cc, and tail-call elimination. Code: S9fES Interpreter.
Sketchy Scheme, 4.5th Edition (PDF)
A beginner-friendly introduction to functional programming in Scheme.
Lightweight Compiler Techniques (PDF)
A discussion of techniques for implementing simple yet efficient compilers for procedural languages. Covers all phases of compilation: scanning, parsing, optimization, code synthesis. Little theory, lots of code. Code: T3X Compiler (final version), T3X Compiler (book version).
Logic Programming in Scheme (PDF)
An introduction to the principles of logic programming in MicroKANREN. Includes an application of logic programming to the well-known Zebra puzzle and the implementation of MicroKANREN in Scheme. Code: Another MicroKANREN.
Zen-Style Programming (PDF)
An introduction to various aspects of computer science at break-neck speed: functional programming, arbitrary-precision arithmetics, meta-circular evaluation, searching and sorting, the limits of computability, streams and generators, formal grammars, syntax analysis, regular expressions, logic programming, design and implementation of programming languages, and much more... Code: Zen Lisp.
Die Anatomie einer Programmiersprache (PDF)
[de] An early precursor to Lightweight Compiler Techniques in german. Code: BSL Compiler Kit.

I barely make any money at all with these books, so when you buy one, this means a lot to me. That being said, there are free PDF copies of some of the above books at www.bcl.hamilton.ie/~nmh/t3x.org/zzz/.

Fiction

Raumfische
[de] A science fiction novella depicting the journey of a meditating janitor on board of an exploration spacecraft. Slightly critical, calm, serene, easy to read. Suitable for young readers.
Star Tramp
[de] Quite a trashy science fiction novella that I have written in the 1980's. It is quite technical, action-loaded, bizarre, and rather violent (not in a gory way, though).

Spirituality

Lernen, was wir nicht verstehen können
[de] This book presents some key concepts of Buddhism in general and then outlines the practice of Zen in greater detail. Contains instructions for zazen (zen meditation).

Computer Stuff

Scheme 9 from Empty Space (S9fES)
A public domain interpreter for R4RS Scheme (mirrors: 1, 2, 3, 4, 5). It is described in great detail in the second edition of the Scheme 9 book.
USELESS
An interpreter, compiler, and editor for a super-terse dialect of FORTH. Brevity = expressiveness? You decide.
MINBASIC
An interpreter and compiler for an obscure BASIC dialect that I have created back in the early 1990's. Includes some simple games as example programs. The compiler is written in MINBASIC.

contact