Csc 4330/6330, Programming Language Concepts (Spring 2018)
Instructional Staff
Instructor: Raj Sunderraman; Room 629, 1 Park Place; raj@cs.gsu.edu; Office hours: Monday/Wednesday 4.00 pm to 5:15 pmTA: Ms. Heta Desai; Room 612, 1 Park Place; hdesai1@student.gsu.edu; Office Hours: Tuesday/Thursday 12-1 PM
Course Details
Syllabus
Textbook: Robert W. Sebesta, Concepts of Programming Languages, 11/E, Pearson, 2016.
Secure Shell Client for Windows
Another lightweight SSH slient(Windows/Unix)
Homework Submission Guidelines
ANTLR4-IntelliJ-Windows10 - How To (Thanks, Samuel!)
ANTLR4 on Windows Command Terminal (Thanks, Noria for pointing out this link!)
Graduate Student Project (Due: April 29, 2018 - Sunday) Handin under assignment: grad
Textbook: Robert W. Sebesta, Concepts of Programming Languages, 11/E, Pearson, 2016.
Secure Shell Client for Windows
Another lightweight SSH slient(Windows/Unix)
Homework Submission Guidelines
ANTLR4-IntelliJ-Windows10 - How To (Thanks, Samuel!)
ANTLR4 on Windows Command Terminal (Thanks, Noria for pointing out this link!)
Graduate Student Project (Due: April 29, 2018 - Sunday) Handin under assignment: grad
Course Materials
Preliminaries/Grammars/Lexical Analysis/Parsers
Chapter 1: PreliminariesChapter 3: Describing Syntax and Semantics
Chapter 4: Lexical and Syntax Analysis
ANTLR Lexer/Parser Generator
Hand coded Recursive Descent Parser in Java
ANTLR Example (WAE Expressions) (8 steps to writing the code)
Homework 1 (Due: February 2, 2018 - Friday)
Homework 2 (Due: February 7, 2018 - Wednesday) (Solution)
Homework 3a (Due: February 16, 2018 - Friday)(Solution) (Handin under assignment 3a)
Homework 3b (Due: February 25, 2018 - Sunday) (Handin under assignment 3b)
Homework 3c (Due: February 18, 2018 - Sunday) (Solution) (Handin under assignment 3c)
Functional Programming (Lambda Calculus and Scala)
Lambda Calculus (Thanks Vida Movahedi, York University!)Lambda Calculus (Some Examples)
Homework 4a (Due: March 11, 2018 - Sunday) (Solution) (Handin under assignment 4a)
Homework 4b (Due: March 21, 2018 - Wednesday) (Solution) (Handin under assignment 4b)
Scala Download/Documentation
Functional Programming in Scala - Part I
Functional Programming in Scala - Part II
Functional Programming in Scala - Part III
Functional Programming in Scala - Part IV
Couple of sample programs
Homework 4c (Due: March 25, 2018 - Sunday) (Handin under assignment 4c) (Solution)
Homework 5 (Due: April 1, 2018 - Sunday) (Solution)
Homework 6 (Due: April 15, 2018 - Sunday)
Logic Programming (Prolog)
Learn Prolog Now (Tutorial)SWI Prolog
SWI Prolog (Built-in Predicates)
Prolog Notes - Part I
Prolog Notes - Part II
Take Home Exam (Due: April 29, 2018 - Sunday) (Handin under assignment: final)
Practice Problems for Exam 3 (Solution)