CSc 4330/6330 Programming Language Concepts
Summer 2020 (CRN: 52476/53234)
Online
Instructor:Raj Sunderraman (Room 629, 1 Park Place
404-413-5726, raj@cs.gsu.edu,
Office hours: 2.00 pm to 4.00 pm MW)
TAs:
Saeid Motevalialamoti (smotevalialamoti1@student.gsu.edu,
Office hours: 4.00 pm to 6.00 pm Tuesday)
Mehdi Mosavi (smousavi2@student.gsu.edu, Office hours: 2.00 pm to 4.00 pm Thursday)
Course Objective:
To introduce the student to the fundamental concepts and principles underlying
high level computer programming languages.
Syllabus:
Topics to be covered:
- Syntax and Semantics of Programming Languages:
Lexical and Syntax Analysis, Operational and Denotational Semantics.
- Compiler-Compiler Systems such as Python PLY
- Lambda Calculus and Functional Programming (Scala)
- Names, Bindings, and Scopes; Data Types, Expression and Assignment
Statements, Control Structures, Subprograms.
- Logic Programming (Prolog), time permitting
Pre-requisites: CSc 2720, CSc 3210, CSc 3320 with a grade of "C" or better.
Texts:
- Robert Sebesta, Concepts of Programming Languages, 11th Edition,
Pearson 2016.
- Other online resources will be provided in the class website.
Grading Policy: The grading for this course will be based upon
the following components:
- Homeworks (30%)
- 2 Projects worth 10% each (20%)
- Midterm (25%)
- Final (25%)
Additional Requirement for Csc 6330 students:
Some homeworks and projects will have additional work for graduate students.
The final letter grade will be determined based on the following
criteria (appropriate curves will be applied):
Withdrawal Date: July 6, 2020 (Monday)
Academic Honesty Policy The academic honesty policy as described
in the University Faculty Handbook as well as the Student Handbook will be
strictly enforced. Please review the document
Academic Honesty Policy. Other topics related to student conduct are available at
https://codeofconduct.gsu.edu/.
- All assignments are supposed to be individual work and
any collaboration or cheating would result in a zero score for the assignment.
- A second incident of dishonest work will result in an automatic F grade
for the class.
- It is also the repsonsibility of each student to protect his or her work
including computer files etc from being extracted by others. Computer accounts
will be de-activated immediately if the student is found to have been
careless in maintaining his or her files (i.e. has kept them open for
others to read!). If such carelessness results in another student
copying the computer files and submitting them for the assignments all students
involved will automatically get a zero for the assignment.
Note:
Deviations from this syllabus may be necessary during the semester and
changes will be announced in class.
Raj Sunderraman