Welcome to cse110a-notes’s documentation!
¶
Contents:
Intro to Compilers
What is a Compiler?
What do they look like?
Intro to Haskell
Numbers, UnOps, Vars
Adder-1
The Runtime
The Compiler
Step 1: Types
Step 2: Transforms
Adder-2
Examples
Types
Parser
Transformer
Compile
Adder-3
Adder-4
Examples
Memory
Strategy
Types
Environments
Branches and Binary Operators
Branches
Examples
Assembly Control Flow
Strategy
Types
Transforms
Tags
CodeGen
Binary Operations
Examples
Administrative Normal Form (ANF)
Strategy
Types
ANF
Compiling
ANF -> ASM
Bare -> ANF
Data Representation
Plan
Types
Transforms
Arithmetic Operations
Strategy
Types
Arithmetic Comparisons
Types
Dynamic Checking
Strategy
Call Stack
Types
Transforms
Type Assertions
Errors
Stack Management
CountVars
Functions
Defining Functions
Types
Bindings
Programs/Declarations
Static Checking
Types
Pipeline
Catching Multiple Errors
Compiling
Tagging
Norm
CodeGen
Calls
Types
Implementation
Compiling Tail Calls
Transforms
Labeling Tail Calls
Compiling
Heap Data
Unbounded Structures
Pairs
Representation
Pointers
Construction
Allocation
Accessing
Implementation
Types
Transforms
N-ary Tuples
Construction
Accessing
Constructing Lists
Accessing Lists
Garbage Collection
Example 1
Example 2
Example 3
Example 4
Indices and tables
¶
Index
Module Index
Search Page
cse110a-notes
Navigation
Contents:
Intro to Compilers
Intro to Haskell
Numbers, UnOps, Vars
Branches and Binary Operators
Data Representation
Functions
Heap Data
Garbage Collection
Related Topics
Documentation overview
Next:
Intro to Compilers
Quick search