UMBC CMSC 331 Fall 2010
Principles of Programming Languages

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
04b,
 
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