CSE3302/CSE5307 Programming Languages (Programming Language Concepts)
Course Summary
Welcome to the world of programming languages!
A small number of concepts underline the hundreds of programming languages that have been designed and implemented. This course introduces the concepts that serve as a basis for programming languages. It aims to provide the students with a basic understanding and appreciation of the various essential programming language constructs, programming paradigms, evaluation criteria and language implementation issues. The course covers concepts from functional, imperative,
object-oriented, logic programming and optionally scripting languages.
These concepts are demonstrated by incrementally adding
more features to a simple functional language called Lambda
Calculus to eventually arrive at a full-fledged, user-friendly
general purpose programming language. At the end of the
course, a number of modern programming languages from various
paradigms are presented as case studies.
Latest News and Announcements
- June 18, 2025: The course website is open now.
Administrative Information
Lectures: Mon/Wed 2:30-3:50 PM, ERB-131.
Instructor: Kenny Zhu
- ERB-535 Phone: 817-272-3721 Email: kenny[dot]zhu@uta[dot]edu
Office hours: Wed 4-5PM
Teaching Assistant:
Wonjun Park
Email: wxp7177@mavs.uta.edu
Office hours: Mon 8-10AM @ ERB-316
Reference Textbooks:
- Types and Programming Languages by Benjamin C. Pierce, The MIT Press.
- Practical Foundations for Programming Languages by Robert Harper, Cambridge University Press.
- Programming Languages Principles and Paradigms by Allen Tucker and Robert Noonan, McGraw Hill / 2009-5-1.
- Programming Languages: Application and Interpretation by Shriram Krishnamurthi, Brown, Online.
Assessment:
- In-class quizzes: 10%
- Tutorial participation: 5% (bonus)
- Assignments: 30%
- Project: 30% (Project description doc (PDF) (TeX),
Code Base) Deadline: Dec 3, 2024, 12 Midnight.
- Final Exam: 30%
Schedule
Week | Date | Topic |
Slides | Resources | Homework |
Copyright (c) Kenny Q. Zhu, 2012-2025.