Schedule | MWF 10:50-11:50 R 10:05-11:30 |
Room | MWF: ??? R: EB N1 |
Office Hrs cs471 hangout |
m/t/w/f ??? |
TA |
Joseph Sanchez |
TA Email | @ bing |
TA Office hrs | ??? |
Catalog Description |
Introduction
to
the design and
implementation of programming languages: linguistic features for
expressing algorithms; formal syntax specification; introduction to
language semantics and parsing; declarative programming (functional and
goal-driven); scripting languages; imperative programming (procedural
and object-oriented); comparative design and implementation issues
across languages and paradigms. Assignments emphasize languages such as
Prolog, Haskell, Python, and Ruby. Required Lab includes student presentations. |
Prerequisites | CS 375 and 373 |
Textbook Required |
Programming
Language Pragmatics, 4nd Edition, Michael L. Scott, Morgan
Kaufmann Publishers, 2015 - Errata |
Good references |
Prolog
Programming A First Course by Paul Brna Or Learn Prolog Now! by by Patrick Blackburn, Johan Bos, and Kristina Striegnitz
---Learn You a Haskell for Great Good! A Beginner's Guide by Miran Lipovaca, no starch press, 2011 OR
Haskell:
The Craft of Functional Programming, 3nd
Edition Simon
Thompson, Addison-Wesley Longman, 2012 |