Skip to content

Latest commit

 

History

History
259 lines (232 loc) · 24.3 KB

resources.md

File metadata and controls

259 lines (232 loc) · 24.3 KB

Contents


Books

General Overview

Introductory

Advanced

Papers

Papers on education, discussing, introduction, etc.

 * A Brief History of JIT Compilation, J. Aycock.

Courses

Courses about Formal Languages and Automata Theory

Courses about Compiler Principle

Courses about Advanced Compiler

Tutorials

​ - the-super-tiny-compiler-CN

Compiler Related Tools

Powerful Languages & Compilers

LEX/YACC

Educational and Toy Projects

 * C4 - mini C Language Compiler in 4 Functions.

  • 8cc - C Compiler supporting all C11 language features
  • 9cc - NEXT of 8cc
  • chibicc - NEXT of 9cc -- chibicc: A Small C Compiler
  • Black - Scheme interpreter for the Reflective Programming Language "Black", by Kenichi Asai's.
  • CarpVM - Experimental VM implementation in C.
  • Charly - Interpreter for a dynamically typed language written in Crystal.
  • Dale - Lisp-flavoured C: a system programming language.
  • Eschelle - Open source cross platform multi-paradigm language with VM & JIT
  • Gecho - Simple-stack language implementation in C.
  • gocaml - Minimal functional programming language implementation in Go and LLVM.
  • Hython - Haskell-powered Python 3 interpreter.
  • llgo - Go frontend for LLVM written in Go.
  • Mal's Interpreter - Clojure-inspired Lisp interpreter implemented in 64 languages.
  • MetaScala - Metacircular JVM implementation in Scala.
  • mini-js - Experimental self-hosted JavaScript compiler in 1K LoC.
  • MunVM - Lua VM & Compiler in C.
  • MY-BASIC - An embeddable BASIC dialect interpreter in C with modern paradigms.
  • Poprc - Compiler for the Popr Language.
  • PyCOOLC - Compiler for the COOL Programming Language written in Python 3.
  • RabbitVM - RISC-based VM implementation in C.
  • stack_cpu - Stack-machine simulator.
  • The Super Tiny Compiler - Tiny educational compiler project in JavaScript.
    • Discussions: HN.
  • tinyc.c - Tiny-C language compiler in C.
  • tisp - "Time is Space" Programming Language Interpreter.
  • toy c compiler in rust--rucc

Automata

context free grammar

rust lang

Reference

compiler course workshop 2019

Program Synthesis course