CMSC 330, Fall 2013

Organization of Programming Languages

Schedule

Lectures & Discussions

Week of: Tue Lecture Thu Lecture Fri Discussion
Sep 2 Introduction Introduction (cont.) None
Sep 9 Ruby 1 Ruby 2 Ruby examples 3
Sep 16 Ruby 2 (cont.) REs and Finite Automata
Quiz 1
Ruby examples 6
Sep 23 Finite Automata (cont.) Finite Automata 2 RE/FA Examples
Sep 30 Finite Automata 2 (cont.) OCaml Basics
Quiz 2
OCaml examples 1
Oct 7 OCaml Basics (cont.) OCaml Basics (cont.) OCaml examples 2
Oct 14 OCaml Functions
Midterm 1
OCaml examples 3
Oct 21 OCaml Data Types Context Free Grammars OCaml examples 4
Oct 28 Parsing Parsing (cont.)
Quiz 3
OCaml examples 5 Parser example
Nov 4 Multithreading 1 Multithreading 2 Multithreading Examples
Nov 11 Type Systems
Midterm 2
Objects and Functional Programming
Nov 18 Parameter Passing Polymorphism Garbage Collection
Nov 25 Prolog
Prolog examples 1
Thanksgiving
None
Dec 2 Prolog (cont.)
Prolog examples 2
Lambda Calculus
Quiz 4
Lambda calculus examples
Dec 9 Snow Day Operational Semantics
History of Programming Languages
Markup & Query Languages
Dec 16
Final Exam
PHY 1410 & 1412
Mon Dec 16, 4-6pm

Projects

  • Project 1 - Due Wed, Sep 25th
    • Processing Weblog Files
    • Project description & downloads here
    • Overview slides here

  • Project 2 - Due Wed, Oct 9th
    • Finite Automata Interpreter
    • Project description & downloads here
    • Overview slides here

  • Project 3 - Due Wed, Oct 23rd
    • Sliding Puzzle
    • Project description & downloads here
    • Overview slides here

  • Project 4 - Due Fri, Nov 8th
    • Regular Expression Parser
    • Project description & downloads here
    • Overview slides here

  • Project 5 - Due Tue, Nov 26th
    • Multithreaded Space Simulation
    • Project description & downloads here
    • Overview slides here

  • Project 6 - Due Wed, Dec 11th
    • Sliding Puzzle in Prolog
    • Project description & downloads here

Practice Problems

Quizzes

Tests