Resources
This page provides information on some of the resources available for students in Com S 541. The page is organized as follows:
- Miscellaneous Resources: about the course, various paradigms, language design, and semantics.
- Reserve List: A list of materials on reserve at the Parks Library
Miscellaneous Resources
The following are some links to various resources you may find useful about the course, various paradigms (including OO programming, AOP, functional programming, and logic programming), language design, and semantics.
Course Resources
- The course documentation directory.
- Errata for Haskell: The Craft of Functional Programming, Second Edition by Simon Thompson (Addison-Wesley Longman, 1996).
- Meeting outlines directory, containing outline files for the "lectures".
- Lecture notes directory, containing strangely formatted notes for the "lectures". We recommend that students use the Meeting outlines (above) instead.
- Fabric-painted T-shirts I may use in this course.
- The course bin directory, containing various shell scripts.
Various Paradigms
A general resource is the following.
OO Programming
- Cetus links to Object-Oriented information sources.
- Smalltalk related information.
- Java related information.
Aspect-Oriented Programming
Component-Based Programming
- Microsoft's Component Object Model (COM).
- See Component Software: Beyond Object-Oriented Programming by Clemens Szyperski (Addison-Wesley, 1998).
Functional Programming
- Functional programming FAQ
- A page of tutorial papers on functional programming by John Hughes.
- Why Functional Programming Matters by John Hughes.
-
Haskell related information.
- Information about running Haskell and a locally cached copy of the Haskell 98 Report, and Library Report.
- The Haskell Tutorial, Report, and Library Report.
- HUnit, a unit testing tool for Haskell.
- Scheme
- Standard ML,
- Ericsson uses the functional language Erlang to write all of its software.
Logic Programming
- Logic programing virtual library
-
lambda Prolog related information.
- Information about running lambda Prolog.
-
local documentation directory for Terzo,
including:
- a context-free grammar for lambda Prolog,
- a lexical grammar for lambda Prolog, and
- a ``quick start'' guide to Terzo.
- Dale Miller's site of information about lambda Prolog.
Language Design
- An Introduction to the Literature On Programming Language Design, which was passed out to students.
Semantics
Reserve
To check out one of these (for a few hours or days), go to the Parks library reserve desk. You can look up the call number there from the title.
Required Texts
Author | Adele Goldberg and David Robson |
Title | Smalltalk-80: The Language and its Implementation |
Publisher | Reading, Mass: Addison-Wesley, c1983. |
Call Number | QA76.8.S635 G64 1983 |
Author | Simon Thompson |
Title | Haskell: The Craft of Functional Programming, Second Edition |
Publisher | Reading, Mass: Addison-Wesley Longman, c1996. |
Call Number | QA76.62 T46 1996 |
Other Texts on Programming
Author | Patrick Henry Winston |
Title | On To Smalltalk |
Publisher | New York, NY : Benjamin Cummings, c1997. |
Call Number | TBD |
Other Texts, Mostly on Programming Language Semantics
Author | Matthew Hennessy |
Title | The Semantics of Programming Languages |
Publisher | New York, NY : Wiley, c1990. |
Call Number | QA76.7 .H45 1990 |
Author | David A. Schmidt |
Title | The structure of typed programming languages |
Publisher | Cambridge, Mass.: MIT Press, c1994. |
Call Number | QA76.7 .H45 1990 |
Author | David Watt |
Title | Programming language concepts and paradigms |
Publisher | New York, NY : Prentice Hall, c1990. |
Call Number | QA76.7 W39 1990 |
Last modified Thursday, September 4, 2003.
This web page is for the Fall 2003 offering of Com S 541 at Iowa State University. The details of this course are subject to change as experience dictates. You will be informed of any changes. Please direct any comments or questions to Gary T. Leavens at leavens@cs-DOT-iastate-DOT-edu (after replacing -DOT- with `.').