CMSC 330, Summer 2018

Organization of Programming Languages

Schedule

Lectures & Discussions

Lecture vidoes are on ELMS

Date Topic and Materials
05/29 Introduction ( pdf) Ruby 1 (pdf)
05/30 Ruby 2 (pdf) Lecture notes and Examples ( github)
06/01 Ruby Regex (pdf) code(github)
06/04 Ruby Code Blocks and Mixins (pdf) code(github)
06/05 Discussion
06/06 OCaml Introduction(pdf) Functions(pdf)
Working with OCaml(pdf) Lists(pdf)
Lecture Notes( txt)
06/07 Quiz 1, Discussion
06/08 Pattern Matching and Lists(pdf)
Lecture Notes( txt)
06/11 Lets, Tuples, Records (slides) Higher order functions (slides)
Lecture Notes(txt)
06/12 Higher order functions (slides)
Lecture Notes(txt)
06/14 Data Types(slides) Closures(slides)
Lecture Notes(txt)
06/18 Closures(slides)
Tail Recursion(slides)
06/20 Imperative OCaml(slides)
06/22 Finite Automata(slides)
06/25 DFA, NFA(slides)
06/25 Context Free Grammar(slides)
06/28 Midterm
06/29 Parsing(slides) Code (github)
07/02 Operational Semantics (slides) Code (github)
07/04 Holiday
07/06 Lambda Calculus (slides)
07/09 Lambda Calculus Encodings (slides)
07/11 Rust Intro (slides) Work With Rust (slides) Rust Basics (slides)
07/13 Ownership(slides) Collections (slides) Traits (slides) Enums and Structs(slides)
07/17 Closures and Iterators (slides) Smart Pointers (slides)
07/19 Software Security(slide)
07/20 Final