UMBC CMSC 331 Spring 2011
Principles of Programming Languages
Home · About · Schedule · HW · Exams · Notes · Code · Examples · Resources ·

Tentative Schedule, subject to change

#
day
date
topic
text
notes
out
due
to do, comments
1
Wed
1/26/2011

SNOW

Introduction

ch 1, 2
 
read: The 100 Year Language by Paul Graham
seeAlso: Teach yourself...by Peter Norvig, and Stroustrup's Notes to the Reader
note: class was cancelled due to snow
2
Mon
1/31
 
 

read: compilers, IDE, virtual machine, bytecode, PL Timeline, APL
seeAlso: Worse is Better

3
Wed
2/2
Syntax
ch 2
HW1 
 

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

4
Mon
2/7
Syntax
ch 3
 
 
seeAlso:
note: Last day to add a class is February 8
5
Wed
2/9
Semantics
ch 3
HW1

read: operator precedence, BNF, BNF examples, EBNF, ebnf.pdf
seeAlso: BNF and EBNF: What are they and how do they work

6
Mon
2/14
Semantics
ch 4
 
 

read: CFG, parsing, Chomsky hierarchy,
seeAlso:

7
Wed
2/16
Lexical and Syntactic Analysis
ch 4
 
HW2 
read: semantics, attribute grammar, operational semantics, denotational semantics, axiomatic semantics, Verification, proofs.pdf,
8
Mon
2/21
Lexical and Syntactic Analysis
ch 4
read: Regular expressions, regular grammars
read: compact guide to lex and yacc
9
Wed
2/23
Parsing
ch 4
04b,
 
try: flex example
10
Mon
2/28
Parsing
ch 4

read: parsing, top-down, recursive descent, bottom-up, ll(k), lr(k)

11
Wed
3/2
Functional programming, scheme
ch 15
HW3 
do: download Racket,
read: PLT Scheme, FP, What made Lisp different, Casting spels in Lisp, Lisp FAQ, Scheme
12
Mon
3/7
scheme
ch 15
 

read: on using DrScheme , Guide:1
seeAlso: Teach yourself scheme

13
Wed
3/9
scheme
ch 15
 
 

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

14
Mon
3/14
Break
ch 15
 
15
Wed
3/16
Break
ch 5, ch 15
   
16
Mon
3/28
Scheme closures
 
 

read: tail recursion
read: lazy evaluation, delay,variable

17
Wed
3/30
Scheme continuations

18
Mon
4/4
midterm exam
study: everything
19
Wed
4/6
Exam postmortem
Chap 5
   

 

note: Last day to drop with W is April 8

20
Mon
4/11
Perl
 


21
Wed
4/13
More Perl

 
Some Perl resources:
Picking Up Perl
Essential Perl
22
Mon
4/18
More Perl
Names, Bindings and Scopes

05

 
 

Perl Cheat Sheet has been revised
A clarification has been made to HW5

23
Wed
4/20
Web Server in Perl
Data Types

06

 
 
Web server written in Perl
24
Mon
4/25

Accessing Web Sites in Perl
Sebesta - Subprograms

http://www.quotationspage.com/random.php3
random_quote.pl
http://search.cpan.org/~gaas/libwww-perl-6.02/lib/LWP/UserAgent.pm
http://search.cpan.org/~gaas/HTML-Form-6.00/lib/HTML/Form.pm
Original blog post

25
Wed
4/27
Implementing Subprograms
  HW6

preprint of Higher Order Perl

26
Mon
5/2
Abstract Data Types
 
   
27
Wed
5/4
Concurrency

13

 
 

Some C++ resources. Stroustrup (pdf) and tutorial (pdf)

A revision has been made to the writeup for HW6, recommending the use of Zlib for compression.

28
Mon
5/9
Exceptions and Events
 


29
Wed
5/11
Review
 
 HW6
 
-- Mon 5/16 6-8 pm
Final ExamSH101
    study: old exams