343 - Structure of Programming Languages CIS 343 Notes and code samples. Most content from the Sebesta Programming Languages book, used in class. Schedule Week/Date Topic Reading Assignment Notes 1 Syllabus and Introductions Chapter 1 1 Overview 1 Language Evaluation Homework 1 Due January 17 by 8:00 a.m. 2 MLK Day 2 Language Spotlight - C (Imperative Procedural) 2 Language Spotlight - C (Imperative Procedural) Explore and understand this code 3 Language Spotlight - C (Imperative Procedural) 3 History and Architecture 3 History and Architecture Game of Life Due 2/12/18 at 8:00 a.m. 4 History and Architecture 4 Syntax and Semantics Chapter 3 4 Syntax and Semantics 5 Lexical and Syntax Analyisis Chapter 4 5 Lexical and Syntax Analyisis 5 Lexing and Flex 6 Flex work 6 Parsing and Bison 6 Demoing Flex/Bison Sample Flex/Bison code 7 Bison work 7 Object Oriented Programming Language Creation project Due 3/12 at 8:00 a.m. 7 Object Oriented Programming Chapters 11 & 12 8 Language Spotlight - Python (Object Oriented) 8 Language Spotlight - Python (Object Oriented) 8 Midterm Exam Text Based Game Due 3/19 at 8:00 a.m. 9 Spring Break 9 Spring Break 9 Spring Break 10 Names, Bindings, and Scope 10 Names, Bindings, and Scope 10 Names, Bindings, and Scope Term Paper Due April 21, 2018 at 8:00 a.m. 11 Expressions and Assignments 11 Expressions and Assignments - Case study in C++ 11 Why Functional Programming Matters 12 Functional Programming 12 Functional Programming 12 Functional Programming 13 Subprograms 13 13 14 14 14 Logic Programming 15 Logic Programming 15 Language Presentations 15 Language Presentations 16 Final Exam (not cumulative).