Index
A
|
B
|
C
|
D
|
E
|
F
|
G
|
H
|
I
|
L
|
M
|
O
|
P
|
R
|
S
|
T
|
V
|
Y
|
Α
|
Β
|
Η
|
Θ
A
Abstract Syntax Tree
abstract syntax tree
Alonzo Church
,
[1]
apply
ApplyC
,
[1]
AST
B
bind
block
C
Church booleans
Church numerals
Church-Turing thesis
Closure
Color
Colour
Combinations
Continuation
Continuation Passing Style
core language
CPS
D
Definition Environment
defunctionalization
delimited continuations
desugar
,
[1]
dictionary
Dynamic scoping
dynamic scoping
E
Environment/Definition
Environment/Evaluation
Evaluation environment
F
Fixed point
fixed point combinator
formal parameter
formal parameter
formal system
FunC
G
generalized booleans
global variables
Growing a language talk
Guy Steele
H
Homoiconicity
I
interpreter
L
lambda
lazy evaluation
Lexical scoping
lexical scoping
M
macro
O
Opacity
P
Pairs
PicLang
Preservation
Primitives
,
[1]
Procedures
Progress
R
Recursion
reified continuations
RGB
S
s-expressions
Scheme
Scheme assoc
Scheme Booleans
Scheme lambda
Scheme Lists
Scheme Numbers
Scheme Pairs
Scheme read
Scheme Strings
Scheme Symbols
Scheme write
Soundness
Stack machine
stack machine
,
[1]
State machines
Stephen Kleene
Strong normalization
subst
substitution
Surface syntax
T
tail recursion
Transformations
Turing combinator
Turing combinator
,
[1]
,
[2]
Typed racket
V
vocabulary
Y
Y combinator
,
[1]
Α
α-renaming
Β
β-abstraction
,
[1]
,
[2]
,
[3]
β-reduction
,
[1]
,
[2]
,
[3]
,
[4]
Η
η-reduction
Θ
Θ-combinator
Comp308: Principles of Programming Languages
Navigation
Contents:
Welcome note
A quick introduction to Racket and Scheme
Lambda - the everything
Lambda - via β-abstraction
A language for pictures
A mental model for the machine
Notional machine
Growing the language
Functions and scope
Stacks and scope
Functions in PicLang
Mutations
Control
On the choice between “error” and “do something reasonable” in design
Objects
Objects - the Self way
Generators
Alternative application semantics
Types: Checking some program invariants statically
Related Topics
Documentation overview
Quick search