CSc 4330/6330, Programming Language Concepts (Summer 2020)
Instructional Staff
Instructor: Raj Sunderraman (raj@cs.gsu.edu) Office hours: 2.00 pm to 4.00 pm MWTA 1: Mehdi (Sam) Mousavi (smousavi2@student.gsu.edu) Office hours: 2.00 pm to 4.00 pm Thursday
TA 2: Saeid Motevalialamoti (smotevalialamoti1@student.gsu.edu) Office hours: 4.00 pm to 6.00 pm Tuesday
Course Details
Introduction VideoSyllabus
Homework Submission Guidelines (Video instructions)
Course Discussion in Piazza (Self Sign-in)
Office Hours Recordings
Filezilla - File Transfer Client, WinSCP - Another File Transfer Client
Python Install, Scala Install
Project 1 (Due: 10 July 2020 - Friday; Late Submission: 15 July (Wednesday))
(Video explanation)
Project 2 (Due: 30 July 2020 - Thursday; Late Submission: 2 August (Sunday))
(Video explanation)
Week 7: Scala Part II (July 20 to July 26)
Scala3.html, Scala4.htmlLecture Videos: Last 8 videos in playlist: Parts 3-3 to 3-5 and Parts 4-1 to 4-5
Homework 6 (Due: 28 July (Tuesday); Late Submission: 30 July (Thursday)) (Solution)
Week 6: Scala Part I (July 13 to July 19)
Scala1.html, Scala2.html, Scala3.htmlLecture Videos: First 8 videos in playlist: Parts 1-1 to 1-3, Parts 2-1 to 2-3, and Parts 3-1 and 3-2
Homework 5 (Due: 21 July (Tuesday); Late Submission: 24 July (Friday)) (Solution)
Scala Documentation
Week 5: Lambda Calculus (July 6 to July 12)
Lambda CalculusLecture Videos: 6 videos
Homework 4 (Due: 14 July (Tuesday); Late Submission: 16 July (Thursday)) (Solution)
Week 4: Lexical Analysis and Parsing Part II (June 29 to July 3)
Chapter 4: Lexical Analysis and Parsing Part IILecture Videos: Parsing 4 post 12 minute mark, Parsing 5 to Parsing 9
Homework 3b (Not to be turned in - Solutions will be posted Friday) (Solution)
Week 3: Lexical Analysis and Parsing: Part I (June 22 to June 28)
Chapter 4: Lexical Analysis and Parsing: Part I SlidesLecture Videos: Lexical Analysis 1, Lexical Analysis 2
Lecture Videos: Parsing 1, Parsing 2, Parsing 3 and first 12 minutes of Parsing 4
Non-PLY Lexical Analyzer and Recursive Descent Parser
Homework 3a (Due: 30 June 2020 - Tuesday; Late submission by 3 July 2020 - Friday) (Video explanation) (Solution)
Week 2: Describing Semantics (June 15 to June 21)
Chapter 3: Describing Semantics SlidesLecture Videos: 9 videos
Homework 2 (Due: 23 June 2020 - Tuesday; Late submission by 26 June 2020 - Friday) (Video explanation) (Solution)
Week 1: Describing Syntax (June 8 to June 14)
Chapter 3: Describing Syntax SlidesLecture Videos: 8 videos
WAE Example Code
Homework 1 (Due: 16 June 2020 - Tuesday; Late submission by 23 June 2020 - Tuesday) (Video explanation) (Solution)