Site news

(No announcements have been posted yet.)

Course categories


Available courses

Summer course for Discrete structures, teaches math.

This course is about principles, concepts, and ideas that underly programming languages. We will dissect programming languages by constructing interpreters. The semester project is to construct an interpreter for JavaScript (incrementally). We will see that interpreters are the basis for realizing computation, and we will study the programming language theory that enable us to reason carefully about a language's design and implementation. Our approach will be gradual in that we will initially consider a small subset of JavaScript and then slowly grow the aspects of the language that we consider.

Surveys data management, including file systems, database management systems design, physical data organizations, data models, query languages, concurrency, and database protection. Requisites: Requires prerequisite course of CSCI 3104 (minimum grade C-).

Senior Software Engineering Project is a year long course in which students work in teams on a real-life project from industry, University affiliate, or non-profit organization. Rather than participate as a team member, students with significant full-time work experience as a software developer take the fall portion of the course working as mentors for teams. Students working on interdisciplinary projects in other departments take the fall portion of the course with their project component satisfied in another department.

Forums for CSCI faculty

Communication for the curriculum committee

This course provides some demonstration quizzes for the STACK question type.

Undergraduate Committee Communication Site