|Instructor: Pohl||E-mail: firstname.lastname@example.org|
|Office: 4082 Engineering Building||Phone:760-0830|
|Office hours: Tuesday and Thursday: 1:30-2:30.|
|Office hours: TBD|
|Class: meets Tuesday and Thursday from 2:45 -- 4:00 in Classroom Building room 306.|
|Web Page: http://www.cs.uwyo.edu/~jlc/courses/3015/|
Prerequisites: COSC 2030
Learn You a Haskell for Great Good (LYAHFGG)
by Miran Lipovaca, No Starch Press, 2012
This is considered one of the best resources for learning the Haskell programming language and is available free online HERE.
by Graham Hutton Cambridge University Press, 2007
A good introduction to the language.
Introduction Functional Programming using Haskell
by Richard Bird, Prentice Hall, 1998
The classic text introducing functional programming in Haskell. Covers some sophisticated topics.
Purely Functional Data Structures |
by Chris Okasaki,Cambridge University Press, 1999
An excellent reference on efficient data structures and algorithms in a functional setting. Not required but highly recommended.
Higher-Order Perl: Transforming Programs with Programs
by Mark Jason Dominus, Morgan Kaufmann, 2005
This highly praised book applies techniques of function programming in the setting of the Perl programming language. It is available free online HERE.
Real World Haskell
by Bryan O'Sullivan, John Goerzen, Don Stewart, O'Reilly, 2009
Another recent Haskell book with some more advanced material. Available free online HERE.
Abstract: Functional programming languages are distinguished from the "ordinary" imperative programming languages you already know ( e.g. Java, C++) by
Grading and Other Policies: Grades will be based on written
homework, an in-class midterm exam and a final exam. A standard
grading scale will be used, where an overall average of 90%-100% earns
an A, 80%-89% a B, 70%-79% a C, 60%-69% a D and 0%-59% an F. Work is
due at the beginning of class, and late work is accepted for a
few days, or until a solution is distributed, at a substantial
reduction in credit each day. Returned work should be kept for
verification of records.
The professor reserves the right to alter the grading scheme or to take extenuating circumstances into account when assigning grades. Discussion of the course material among students is encouraged, although students are expected to write up their own homeworks. Academic dishonesty will be treated in accordance with university standards. Students are urged to read University regulation 802 , section 3 defines academic dishonesty. .
Sunil Kothari typed up lecture notes for a previous version of the course. They can be found on his web-page, here Class Notes
|1||Thursday: August 29||
Read the following:
Some files from class: qsort.hs . |
Nothing to hand in.