Course Syllabus

Important announcements may be made in lecture, on the class mailing list maintained by the CS Department, or on the course web page: http://www.cs.utsa.edu/~vonronne/classes/cs3723-s06/. Students are expected to regularly attend lecture, check their CS department email account, and check the course web page.

Course Outline

Programming Languages. An introduction to the organization of high-level programming languages, including data types, control structures, data flow, and runtime environments. Use of formal syntax descriptions. The implications of interpretation versus compilation. Activation records and dynamic storage in block structured languages.

The lectures will treat most of the topics in Mitchell's Concepts in Programming Languages in the order they appear in the textbook. Emphasis will be placed on program implementation and the functional programming paradigm.

Course Objectives

At the end of this course, students should understand major language paradigms and language implementation techniques, and as a result, they will:

Prerequisites

This course is designed with the assumption that students have learned to and are able to program in C, C++, Java, or a similar high-level imperative or object-oriented programming language. The formal pre-requisites are:

CS 2213 / CS 2211
Advanced Programming
CS 3233 / CS 3231
Discrete Mathematical Structures

Textbook and Materials

The textbook for this course will be John Mitchell's "Concepts in Programming Languages." Links to additional reference material for the various languages discussed in the class will be provided as needed.

Class Times and Locations

Lecture: HSS 3.03.18; Mon, Wed, Fri; 9:00 - 9:50am
Recitations: Midterm: HSS 3.03.18; Fri, March 10; 9:00 - 9:50am
Final Exam: HSS 3.03.18; Tues, May 9; 7:30 - 10:15am

Instructor Information

Jeffery von Ronne
Office Hours: HSS 4.02.58; Mon 2-3pm, Fri 10-11am and by appointment
Email: vonronne@cs.utsa.edu
Phone: (210) 458-5667

TA Information

Atlas Cook
Office Hours: SB 3.02.04; Mon, Wed 11:00am - 12:00pm
Email: acook@cs.utsa.edu

Grading

The final grade is expected to be weighted average of the following components:

The recitations will include individual and group programming exercises, and participation in these exercises will be a strong determinate of the participation component of the final grades. Attendance in the lecture is also expected, and extensive absenteeism (more than four absences over the semester) or disruptive behavior may result in a lower participation grade.

The weekly homeworks problems sets will be due at the beginning of each Friday's lecture (except for 1/20 and 3/10). As a matter of policy, late homeworks will not be accepted, but the lowest homework score will be dropped.

For the exams, students will be responsible for all the material covered in the text book, on the homeworks, or in the lectures, but the most important material will be covered in multiple formats. Except in the most extenuating circumstances, make up exams will not be given. The midterm exam is scheduled for the Friday before Spring Break; Spring Break travel plans do not constitute a valid excuse for missing the midterm. The final exam is comprehensive, but will focus on material covered after the midterm.

Scholastic Dishonesty

Unless stated otherwise in the instructions for the particular assignment, Students may collaborate with other students on the homework assignments, but

Students are expected to behave ethically and work individually on the examinations. Please refer to UTSA's Student Code of Conduct for a description of expected behavior and the potential penalties for scholstic dishonesty.