PomonaComputer Science 52
Fundamentals of Computer Science
Fall 2008
Course Page Syllabus Assignments Resources



Course handouts:


SML resources:

  • Harper, Programming in Standard ML, working draft of June 23, 2006.
  • Lee, Using the SML/NJ System. A brief and basic guide to usage.
  • Gilmore, Programming in Standard ML '97: An On-line Tutorial. A readable and complete guide to programming in SML.
  • Pucella, Notes on Programming Standard ML of New Jersey, revision of January 10, 2001. A concise description of the language for programmers.
  • The Standard ML of New Jersey page, with links to software, documentation, and tips.  The page on the Interactive System is a good place to start for people new to SML.  You will often want to refer to the documentation on the Basis Library.  If you download software for your own computer, be sure to get the same version as the class is using.
  • Copies of the following books are available in the computer science laboratory, Edmunds 227. Please do not remove them from the laboratory! They cannot be replaced if they disappear.
    • Paulson, ML for the Working Programmer, second edition, Cambridge University Press, 1996.
    • Ullman, Elements of ML Programming, ML 97 Edition, Prentice-Hall, 1998.
    • Hansen and Rischel, Introduction to Programming using SML, Addison-Wesley, 1999.

Unix and emacs resources:


Python resources:


ISC documentation:

  • The Incredibly Simple Computer was created by Professor Robert Keller of Harvey Mudd College.  We are grateful for his permission to use it.

JFLAP resources:

  • JFLAP is a Java-based tool for studying automata, context-free grammars, and turing machines.  It was produced by Professor Susan Rodger of Duke University.  See the main JFLAP page and the instructions for use.



Course Page Syllabus Assignments Resources