Tentative Schedule, subject to change
# |
day |
date |
topic |
text |
notes |
out |
due |
to do, comments |
1 |
Wed |
8/31 |
Introduction |
ch 1, 2 |
|
|
|
read: The 100 Year Language
view: how language fans see each other
seeAlso: Teach yourself...
|
-- |
Mon |
9/6 |
Labor Day |
|
|
|
|
read: compilers, IDE, virtual machine, bytecode, PL Timeline, APL
seeAlso: Worse is Better
|
2 |
Wed |
9/8 |
Syntax |
ch 2 |
|
|
|
read: sammet, Steele essay, WP article, programming paradigms
view: Steele interview
|
3 |
Mon |
9/13 |
Syntax |
ch 3 |
|
|
|
seeAlso:
note: Last day to add class 9/14
|
4 |
Wed |
9/15 |
Semantics |
ch 3 |
|
HW2 |
HW1 |
read: operator precedence, BNF, BNF examples, EBNF, ebnf.pdf
seeAlso:
BNF and EBNF: What are they and how do they work |
5 |
Mon |
9/20 |
Semantics |
ch 4 |
|
|
|
read: CFG, parsing, Chomsky hierarchy,
seeAlso:
|
6 |
Wed |
9/22 |
Lexical and Syntactic Analysis |
ch 4 |
|
|
HW2 |
read: semantics, attribute grammar, operational semantics, denotational semantics, axiomatic semantics, Verification, proofs.pdf, |
7 |
Mon |
9/27 |
Lexical and Syntactic Analysis |
ch 4 |
|
|
|
read: Regular expressions, regular grammars
read: compact guide to lex and yacc
|
8 |
Wed |
9/29 |
Parsing |
ch 4 |
|
|
|
try: flex example |
9 |
Mon |
10/4 |
Parsing |
ch 4 |
|
|
|
read: parsing, top-down, recursive descent, bottom-up, ll(k), lr(k)
|
10 |
Wed |
10/6 |
Functional programming, scheme |
ch 15 |
|
|
|
do: download PLT scheme, and/or try mzscheme on gl
read: PLT Scheme, FP, What made Lisp, different, Casting spels in Lisp, Lisp FAQ, Scheme
|
11 |
Mon |
10/11 |
scheme |
ch 15 |
|
HW5 |
|
read: on using DrScheme , Guide:1
seeAlso: Teach yourself scheme
|
12 |
Wed |
10/13 |
scheme |
ch 15 |
|
|
|
read: Guide:2, using scheme on gl
view: xkcd
|
13 |
Mon |
10/18 |
scheme |
ch 15 |
|
|
|
read: Guide:3, Guide:4, scope, closure
|
14 |
Wed |
10/20 |
scheme |
ch 5 |
|
|
|
read: currying, Haskell,
run: cfg1.ss, cfg2.ss, cfg.ss, fib.ss
view: xkcd |
15 |
Mon |
10/25 |
Scheme closures |
|
|
|
|
read: tail recursion
read: lazy evaluation, delay,variable
|
16 |
Wed |
10/27 |
Scheme continuations |
|
|
|
|
view: DrScheme v4 tour
read: control, continuation, call/cc, call/cc2
|
17 |
Mon |
11/1 |
mid term |
|
|
|
|
study: everything |
18 |
Wed |
11/3 |
python |
CH? |
|
|
|
read: Python,
explore: python.org
view: Python for Programmers (+ slides) |
19 |
Mon |
11/8 |
python |
|
|
|
|
view: xkcd
note: finin out |
20 |
Wed |
11/10 |
python |
|
|
|
|
read: Python for Lisp programmers, Python idioms, PEP8
note: finin out |
21 |
Mon |
11/15 |
python |
|
|
|
|
read: Python datastructures, control,
view: Advanced Python (+ slides), xkcd
ex: wf?.py
|
22 |
Wed |
11/17 |
Python |
|
|
|
|
note: class canceld, last day to withdraw
|
23 |
Mon |
11/22 |
Python |
|
|
|
|
read: comprehensions, PEP202, classes, modules, stdlib
read: Python regular expressions, regular expressions, piglatin, tfidf
study: pig.py |
24 |
Wed |
11/24 |
Python OOP |
|
|
|
|
read: Google Python Style Guide, iter tutorial, iterators, generators
|
25 |
Mon |
11/29 |
Scheme in Scheme |
|
|
|
|
read: SICP 4.1, MCE, spelling
study: mcscheme |
26 |
Wed |
12/1 |
Scheme in Scheme |
|
scheme in scheme |
|
|
study: mcscheme
watch: growing a language
|
27 |
Mon |
12/6 |
Scheme in Python |
|
|
|
|
read: recursive descent parser, CPS, lexical analysis, intern, lis.py, lispy.py
try: lis.py lispy.py
|
28 |
Wed |
12/8 |
Prolog |
ch16 |
|
|
|
read: ch16, prolog, logic programming |
29 |
Mon |
12/13 |
Review |
|
|
|
|
|
-- |
FRI |
12/17 |
final: 3:30-5:30, LH4 |
|
|
|
|
study: old exams |
|