Dr. Alan Garvey
Spring 2023
CS 380 Picture of Dr. Garvey
CS 191 CS 291 CS 480 CS 495

Computer Science 380: Programming Languages

Professor: Dr. Alan Garvey

Section 01: MWF 11:30am-12:20pm VH 1236

Office Hours


While this page will be used for some class related communication, the majority of the content and assignments for this class will be made available via Blackboard.


  • Concepts of Programming Languages by Robert W. Sebesta, Addison Wesley, 2015, Eleventh Edition. Ninth and tenth editions are also acceptable.


The Syllabus is now available.


  • You will write a short paper and a longer research paper for this course.


  • There will be two in-class exams, covering material from the textbook. There is no final exam for this course.

Textbook Links:

Clojure Links:

Other Class-related links:

Lisp-related pointers and stuff:

  • An xkcd lisp-related comic
  • A Lisp truism
  • A quote from Eric Raymond, bigtime Open Source guy:
    Lisp is worth learning for the profound enlightenment experience you will have when you finally get it; that experience will make you a better programmer for the rest of your days, even if you never actually use Lisp itself a lot.
  • Revenge of the Nerds is an article by Paul Graham that explains his ideas about what makes Lisp different from other languages.
  • The Roots of Lisp is Graham's article about Lisp in Lisp. A link to a pdf of this paper.

Other useful pointers:

Programming Assignments:

  • You will have three or four programming assignments in the Clojure programming language.

Homework Assignments:

  • There will be three or four homework assignments during the semester.