Tentative Schedule, subject to change
# |
day |
date |
topic |
notes |
out |
due |
to do, comments |
1 |
Wed |
8/28 |
Introduction |
|
|
|
|
2 |
Mon |
-- |
no class |
-- |
|
|
note: Labor Day |
3 |
Wed |
9/3 |
Introduction |
|
|
|
read: sammet, Steele essay, WP article
view: Steele interview
seeAlso: Teach yourself...
|
4 |
Mon |
9/8 |
History of PL |
|
|
|
read: compilers, IDE, virtual machine, bytecode, PL Timeline, APL,
seeAlso: Worse is Better
|
5 |
Wed |
9/10 |
Syntax |
|
HW2 |
|
note: Last day to add class
read: BNF, BNF examples, EBNF, ebnf.pdf, operator precedence,
|
6 |
Mon |
9/15 |
Syntax |
|
|
|
read: CFG, parsing, Chomsky hierarchy,
seeAlso:
|
7 |
Wed |
9/17 |
Semantics |
|
|
|
read: semantics, attribute grammar, operational semantics, denotational semantics, axiomatic semantics, Verification, proofs.pdf, |
8 |
Mon |
9/22 |
Semantics, Lexical scanning |
|
|
|
read: Regular expressions, |
9 |
Wed |
9/24 |
Lexical scanning, |
|
|
|
note: Last Day to drop w/o 'W'
try: flex example
|
10 |
Mon |
9/29 |
Parsing |
|
|
|
read: compact guide to lex and yacc
|
11 |
Wed |
10/1 |
scheme |
|
|
HW3 |
do: download PLT scheme, and/or try mzscheme on gl
read: FP, What made Lisp different, Lisp FAQ, Scheme
read: Guide:1, Guide:2,
seeAlso: Teach yourself scheme |
12 |
Mon |
10/6 |
scheme |
|
|
|
read: on using DrScheme
view: xkcd
|
13 |
Wed |
10/8 |
scheme |
|
|
|
read: Casting spels in Lisp,
view: xkcd
|
14 |
Mon |
10/13 |
scheme |
|
|
|
read: Guide:3, Guide:4, |
15 |
Wed |
10/15 |
scheme |
|
|
|
read: variable, scope, closure, |
16 |
Mon |
10/20 |
scheme closures |
|
|
|
read: tail recursion, lazy evaluation, delay,
view: DrScheme v4 tour
|
17 |
Wed |
10/22 |
scheme contol |
|
|
|
read: crontol, continuation, call/cc, call/cc2, |
18 |
Mon |
10/27 |
mid term exam |
|
|
|
|
19 |
Wed |
10/29 |
Python |
|
|
|
note: Guest lecture by Don Miner
read: Python,
explore: python.org
view: Python for Programmers (+ slides) |
20 |
Mon |
11/3 |
Python |
|
|
|
read: Python for Lisp programmers, Python idioms, PEP8,
view: xkcd,
|
21 |
Wed |
11/5 |
Python |
Python 2 |
|
|
note: last day to withdraw
read: Python datastructures, control,
view: Advanced Python (+ slides), xkcd
ex: wf?.py
|
22 |
Mon |
11/10 |
Python |
|
|
|
read: comprehensions, PEP202, classes, modules, stdlib |
23 |
Wed |
11/12 |
Python |
|
|
|
read: Python regular expressions, regular expressions, piglatin, tfidf |
24 |
Mon |
11/17 |
Python OOP |
|
HW7 |
|
|
-- |
Wed |
11/19 |
Scheme in Scheme |
scheme in scheme |
|
|
read: SICP 4.1, MCE, spelling,
study: mce2.ss, jmc-lisp.ss,
|
25 |
Mon |
11/24 |
SIP |
|
|
HW7 |
read: lexical analysis, intern, weak reference,
study: pyscheme1.6, pyscheme1.7,
|
26 |
Wed |
11/26 |
SIP |
notes |
|
|
read: recursive descent parser, CPS,
try: mycons.ss, fact.py |
27 |
Mon |
12/1 |
SIP |
|
|
|
read: ltu, clojure, tramp |
28 |
Wed |
12/3 |
types, the rest |
|
|
|
read: GVR, type system, |
29 |
Mon |
12/8 |
review |
|
|
|
note: Last day of 331
view: 50 by 50 , py3k ,
|
-- |
Mon |
12/15 |
final exam 6:00-8:00 |
|
|
|
study: old exams, answers |
|