CMSC 330, Spring 2011

Organization of Programming Languages

Schedule

Lectures & Discussions

(Subject to change as the semester progresses)

Slides posted are 1-up for viewing on your computer. If you plan to print the slides, please consider using n-up (n>1) printing to save paper.

Week of Mon Lecture Wed Lecture Fri Discussion
Jan 24 Introduction Ruby
Project 1
ELIZA example (Asad's version)
Jan 31 Ruby cont'd Ruby cont'd Twitter slides (to try at home for fun)
Bryan's simpler Twitter example
Bryan's @reply graph example
Feb 7 Regular expressions & finite automata REs & FAs cont'd Project 2
Formal REs, DFA
Feb 14 REs & FAs cont'd
animations
Context-free grammars & parsing Subset Construction
Feb 21 CFGs & parsing cont'd CFGs & parsing cont'd
parsing animation (ppt)
CFG Intro, Practice
Feb 28 CFGs & parsing cont'd
Midterm review
Midterm 1 Midterm Returned
Code Review
Mar 7 OCaml
Project 3
OCaml cont'd OCaml Examples 1
Mar 14 OCaml cont'd OCaml cont'd More OCaml examples
Mar 21
Spring break
Mar 28 Relating Functional & OO Programming
Names and Bindings
Types systems
Parameter passing

Project 4
Project 4 - Multiarg example
Apr 4 Operational semantics
(notes)
Lambda calculus
Apr 11 Lambda calculus, cont'd
Midterm review
Midterm 2
Apr 18 Lambda calculus, cont'd
Multithreading
(Implementation)
(Revised implementation w/comments)
Multithreading cont'd
Apr 25 Multithreading
Project 5
Multithreading Project 5-based multithreading example slides
Join example (do not use as p5 template...)
Join example test code
May 2 Garbage collection & memory management History of programming langauges
May 9 Final exam review (none) (none)

Practice Problems

Quizzes

Exams

Web Accessibility