Tentative Schedule, subject to change

#
date
topic
text
notes
Homeworks
Opt.
to do, comments
1
1/29
Logistics, Introduction to PLs
 
 
read: The 100 Year Language, compilers, IDE, virtual machine, bytecode, PL Timeline, APL
view: how language fans see each other
seeAlso: Teach yourself..., Worse is Better
2
1/31
Intro to PLs (cont), History Part 1
ch 1, 2
 
 
read: The 100 Year Language, compilers, IDE, virtual machine, bytecode, PL Timeline, APL
view: how language fans see each other
seeAlso: Teach yourself..., Worse is Better
3
2/5
Syntax
ch 3
 
 

read: sammet, Steele essay, WP article, programming paradigms
view: Steele interview

4
2/7
Syntax
ch 3
 
HW1
5
2/12
Syntax
ch 3
 

read: operator precedence, BNF, BNF examples, EBNF, ebnf.pdf, CFG, parsing, Chomsky hierarchy
seeAlso: BNF and EBNF: What are they and how do they work
note: Feb. 8 (Wed.): last day to add, or to drop w/o a 'W'

6
2/14
Semantics
ch 4
 

read: semantics, attribute grammar, operational semantics, denotational semantics, axiomatic semantics, Verification, proofs.pdf,
seeAlso:

7
2/19
Lexical and Syntactic Analysis
ch 4
 
 
read: Regular expressions, regular grammars
8
2/21
Lexical and Syntactic Analysis
ch 4
HW2
due 2/22
read: compact guide to lex and yacc
9
2/26
Parsing
ch 4
try: flex example
10
2/28
Parsing
ch 4

read: parsing, top-down, recursive descent, bottom-up, ll(k), lr(k)
note: last day to change from graded to audit

11
3/5
Parsing
ch 4
 
read:
12
3/7
Functional programming,scheme
ch 15
HW3

do: download PLT scheme, and/or try mzscheme on gl
read: on using DrScheme , Guide:1
seeAlso: Teach yourself scheme

13
3/12
scheme
ch 15
 
 

read: on using DrScheme , Guide:1, Guide:2, using scheme on gl
view: xkcd

14
3/14
scheme
ch 15
 HW4
 
read: Guide:3, Guide:4, scope, closure
--
3/19
Spring Break
 
 


--
3/21
Spring Break
 
 


15
3/26
scheme
ch 15
read: currying, Haskell,
run: cfg1.ss, cfg2.ss, cfg.ss, fib.ss
view: xkcd
16
3/28
mid term
 
 

study: everything
note: finin out

17
4/2
more scheme
ch 15
read:
note: finin out
18
4/4
FP in scheme
ch 15
 
view: DrScheme v4 tour
read: functional programming, lambda calculus,
19
4/9
tail recursion
   
read: tail recursion, lazy evaluation, delay,variable
explore:
view:
20
4/11
Perl and R

 


Read: Perl, R, R tutorial
code: MyHash.r
note: finin out

21
4/16
environments
HW5 
 
read: Currying,
22
4/18
Streams

streams

 
23
4/23
Continuations

scheme in scheme 1

 
HW5
read: control, continuation, call/cc, call/cc2
note: 4/16 (Mon): last day to drop with 'W'

24
4/25
FP in Python
read: Google Python Style Guide, iter tutorial, iterators, generators
25
4/30
Scheme in Scheme
ch 5
HW6

read: SICP 4.1, MCE, spelling
study: mcscheme
watch: growing a language

26
5/2
Perl I
 
27
5/7
Perl II
28
5/9
Prolog
ch 16

Prolog overview

 
try:
29
5/14
Prolog, Review
ch 16

Prolog overview,
Final

 
HW7
try:
--
5/21 (Tue)
Final Exam: 10:30am-12:30pm