Course Information for Spring 2018
Time: MWF 11-11:50am
Place: Davis 117
Instructor Information
Prof. Bruce A. Maxwell
Office: Davis 112
Phone: 859-5854
Office hours: M 9:30pm-late, R 7:30pm-late
Any time my door is open. Good times this semester are M-F before 11am.
Course Description
This course is a survey of programming languages and paradigms. We will focus on the design of programming languages and compare and contrast different language familes including imperative, object-oriented, functional, and logic paradigms. Topics include syntax, context-free grammars, parsing, semantics, abstract representations of programming processes and structures, memory management, and exceptions. Students will undertake small programming projects in various languages and more extensive projects in two languages of their choice. Students will present the characteristics of their chosen languages to their peers at the end of the term.
Prerequisite: CS 231
Textbooks
- Tucker and Noonan, Programming Languages, 2nd ed., McGraw-Hill, 2007.
- Handouts
Useful Links
- Maxwell's Lecture notes
- Maxwell's Daily Outlines
- xkcd
- K. Slonneger, Syntax and Semantics of Programming Languages
- Makefile tutorial
- ENIAC Computer
- Fortran statement on a punch card
- Code art
Languages |
Programming Language Tools |
Source Code Examples
|
|
Spring 2018