Past Research

Past Research / intray
important: try to summarize lessons learned from each.


 * Pascal-S by Wirth (Small, self-contained subset w/ great error reporting)
 * Compiler Construction by Wirth (Oberon-0 language in book is well-suited to bootstrapping)
 * Edison by Hansen (Language w/ 5 statements & small OS on PDP-11)
 * Project Oberon by Wirth et al (Simple language, compiler, OS, and RISC CPU w/ source laid out like a book.)
 * ML/I and Sal by Tannenbaum (Macro system bootstrapping low-level language, Sal, they built an OS with)
 * COLA whitepaper by Ian Piumarta
 * PreScheme using an low level s-exp IL to implement scheme.
 * Incremental, Scheme Compiler by Ghuloum (Build Scheme-to-ASM compiler in "24, small steps;" Githubs available)
 * Red Language by Rakocevic et al (LISP-like power/DSL's, can do low-level, batteries included, 1MB standalone)
 * MinCaml by IPA (Efficient compiler for minimal, functional language in 2000 lines & 14-week segments)
 * Spry by Krampe (Combines traits of LISP, Rebol, Smalltalk, and Forth; hosted on Nim; 2300loc)
 * LCC by Hanson and Fraser (A 20Kloc compiler w/ book describing its workings; literate code; non-FOSS, but free non-commercial)
 * Axiomatic Bootstrapping: A Guide for Compiler Hackers by Andrew Appel (bootstrapping SML)
 * Merlin: Just Add Reflection (bootstrapping object oriented merlin)
 * booting BCPL (bootstrapping BCPL using intcode)
 * High-level Assembly by Hyde (Assembly w/ high-level data types, control flow & a stdlib; use/check just what you need)
 * Linoleum by Ghignola (Cross-platform, lean, fast, assembly-like language)
 * wingolog about the guile compiler (all brilliant posts!)
 * Partcl by Zaitsev (Tiny TCL; TCL's parse & interpret easily; also references Picol etc)
 * neatld linker by ali grudi (and also neatas neatcc)
 * SchemeRepo by Univ. of Indiana (Pile of source for Scheme lexers, parsers, comilers, etc.)
 * https://www.youtube.com/watch?v=Sk9TatW9ino Tutorial: Building the Simplest Possible Linux System - Rob Landley
 * Om Language by sparist (Prefix, typeless language with three operators; concatenative like Forth)
 * by Laurence Tratt
 * SBCL: a Sanely-Bootstrappable Common Lisp by Christophe Rhodes
 * prescheme to c compiler - https://github.com/nineties-retro/sps
 * Ur-Scheme by Kragen Sitaker
 * qhasm by Daniel Bernstein (portable form of Assembly language that standardizes machine instruction syntax across CPUs)
 * debian rebootstrap a project with the idea that bootstrapping debian should be a repeatable process, not a hacky one off thing
 * http://t3x.org/t3x/ - minimal procedural language with self hosted tiny compiler
 * - bootstrapping a linux system from source
 * bootstrapping trust in compilers blog post by Owl's portfolio
 * programming thought experiment kragen comment on reddit
 * scheme from scratch
 * http://interim-os.com/
 * https://github.com/m4tx/uefi-jitfuck UEFI JIT brainfuck
 * https://miyuki.github.io/2017/10/04/gcc-archaeology-1.html gcc archaeology
 * https://github.com/murisi/L2
 * https://tinygo.org/faq/why-a-new-compiler/
 * https://github.com/siraben/meta-II