This site

    Recent site activity

    Teaching‎ > ‎

    Comp 372/471: Theory (and Practice) of Programming Languages

    Information current for spring 2012

    Key Information

    Tentative Outline

    • functional programming (4 weeks)
      • algebraic data types
      • constant-space paramorphisms in lazy languages
    • programming language implementation (4 weeks)
      • interpreters
      • tools: fslex, fsyacc
    • concurrent and parallel programming (4 weeks)
      • threads
      • actors
      • software-transactional memory
      • task-parallel library
      • functional data structures
    • logic programming (1 week)
      • Prolog
    • scripting (1 week)
      • JavaScript

    Course Texts

    Required text

    Programming Language Pragmatics, Third Edition
    By: Michael Scott
    Publisher: Morgan Kaufmann
    eISBN-10: 0-08-092299-6
    eISBN-13: 978-0-08-092299-7
    Publication Date: 23-MAR-2009

    Recommended texts and other resources

    Masterminds of Programming, 1st Edition
    By: Federico Biancuzzi; Shane Warden
    Publisher: O'Reilly Media, Inc.
    Pub. Date: March 27, 2009
    Print ISBN-13: 978-0-596-51517-1



    Learn You a Haskell for Great Good!
    By: Miran Lipovaca
    Publisher: No Starch Press
    Pub. Date: April 11, 2011
    Print ISBN-13: 978-1-59327-283-8

    Real World Haskell
    By: Bryan O'Sullivan, John Goerzen, Don Stewart
    Publisher: O'Reilly Media, Inc.
    Pub. Date: 2008
    Print ISBN-13: 978-0596514983




    Expert F# 2.0
    By: Don Syme; Adam Granicz; Antonio Cisternino
    Publisher: Apress
    Publication Date: 07-JUN-2010
    Print ISBN: 978-1-4302-2431-0

    Professional F# 2.0
    By: Ted Neward; Aaron C. Erickson; Talbott Crowell; Richard Minerich
    Publisher: Wrox
    Pub. Date: June 30, 2010
    Print ISBN: 978-0-4705-2801-3

    Functional Programming for Java Developers
    By: Dean Wampler
    Publisher: O'Reilly Media, Inc.
    Pub. Date: July 26, 2011
    Print ISBN-13: 978-1-4493-1103-2