Tentative Schedule, subject to change
|
|
|
|
text |
|
|
|
to do, comments |
1 |
Thu |
8/29 |
Introduction |
ch 1, 2 |
|
|
|
read: The 100 Year Language, compilers, IDE, virtual machine, bytecode, PL Timeline, APL
view: how language fans see each other
see Also: Teach yourself..., Worse is Better, a reference to Harlan, and a reference to Go
|
2 |
Tue |
9/3 |
Some history |
ch 2 |
|
|
|
There is some important terminology in Chapter 1
Figure 1.2 shows how a PL can be said to create a virtual machine, in some sense
Figure 2.1 gives the impression that PL design is evolving over time, and that's true!
Popularity of programming languages is illustrated by http://www.tiobe.com/tiobe_index |
3 |
Thu |
9/5 |
Syntax |
ch 3 |
|
|
|
read: sammet, Steele essay, WP article, programming paradigms
view: Steele interview
homework: Problems 3,4,6,7, 11 and 13 from the end of Chapter 3. Hardcopy due in class Tuesday 9/17.
|
4 |
Tue |
9/10 |
Syntax |
ch 3 |
|
|
HW1 |
Nicholas on travel
see Also:
According to the UMBC Academic Calendar, the last day to add a class is September 11
|
5 |
Thu |
9/12 |
Syntax |
ch 3 |
|
|
|
Nicholas on travel
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
|
6 |
Tue |
9/17 |
Semantics |
ch 4 |
|
|
|
read: semantics, attribute grammar, operational semantics, denotational semantics, axiomatic semantics, Verification, proofs.pdf,
seeAlso:
|
7 |
Thu |
9/19 |
Lexical and Syntactic Analysis |
ch 4 |
|
|
HW2 |
read: Regular expressions, regular grammars |
8 |
Tue |
9/24 |
Lexical and Syntactic Analysis |
ch 4 |
|
|
|
read: compact guide to lex and yacc
|
9 |
Thu |
9/26 |
Parsing |
ch 4 |
|
|
|
try: flex example |
10 |
Tue |
10/1 |
Parsing |
ch 4 |
|
|
|
read: parsing, top-down, recursive descent, bottom-up, ll(k), lr(k)
|
11 |
Thu |
10/3 |
Parsing |
ch 4 |
|
|
|
read:
|
12 |
Tue |
10/8 |
Functional programming,scheme |
ch 15 |
|
|
|
do: download PLT scheme, and/or try mzscheme on gl
read: on using DrScheme , Guide:1
seeAlso: Teach yourself scheme
|
13 |
Thu |
10/10 |
scheme |
ch 15 |
|
|
|
read: on using DrScheme , Guide:1, Guide:2, using scheme on gl
view: xkcd
|
14 |
Tue |
10/15 |
|
ch 15 |
|
|
|
read: Guide:3, Guide:4, scope, closure
|
15 |
Thu |
10/17 |
|
ch 15 |
|
|
|
read: currying, Haskell,
run: cfg1.ss, cfg2.ss, cfg.ss, fib.ss
view: xkcd |
16 |
Tue |
10/22 |
|
|
|
|
|
study: everything
|
17 |
Thu |
10/24 |
Haskell |
ch 15 |
|
|
|
read:
|
18 |
Tue |
10/29 |
|
ch 15 |
|
|
|
view: DrScheme v4 tour
read: functional programming, lambda calculus, |
19 |
Thu |
10/31 |
still more Haskell |
|
|
|
|
read: tail recursion, lazy evaluation, delay,variable
explore:
view: |
20 |
Tue |
11/5 |
Perl and R |
|
|
|
|
Read: Perl, R, R tutorial
code: MyHash.r
|
21 |
Thu |
11/7 |
environments |
|
|
|
|
read: Currying,
|
22 |
Tue |
11/12 |
Streams |
|
streams |
|
|
|
23 |
Thu |
11/14 |
Continuations |
|
scheme in scheme 1 |
|
|
read: control, continuation, call/cc, call/cc2
|
24 |
Tue |
11/19 |
FP in Python |
|
|
|
|
read: Google Python Style Guide, iter tutorial, iterators, generators,SICP 4.1, MCE, spelling
study: mcscheme
watch: growing a language |
|
Thu |
11/20 |
Thanksgiving Day |
|
|
|
|
|
25 |
Tue |
11/26 |
Scheme in Python |
|
Python RE, Python FP, scheme in python
|
|
|
view: xkcd
read: Python regular expressions, regular expressions, piglatin, tfidf
study: pig.py
|
26 |
Thu |
11/28 |
Scheme in Python |
|
scheme in python |
|
|
try: scheme.py
print: pscm.pdf
view: lis.py lispy.py
|
27 |
Tue |
12/3 |
Perl I |
|
Perl |
|
|
|
28 |
Thu |
12/5 |
Perl II |
|
Perl |
|
|
read:
note: finin out |
29 |
Tue |
12/10 |
Review |
ch 16 |
Prolog overview, prolog
final |
|
|
try: |
-- |
Tue |
12/17 |
final exam 1-3pm |
|
|
|
|
study: old exams |
|