## Functors, Monads and Programming

### Logistics

We maintain a list of registered participants for this course so that we can get in touch with all the interested people.

The participants meet for Category Theory on Fridays 9:30-11:00 in Room 217. The participants meet for Haskell on Mondays 9:30-11:00 in Room 217 (or in Room 123 if there is no projector in Room 217).

The initial announcement has been moved to a separate page.

### References

Some basic texts on Category theory are:

- Categories for the working mathematician by S. Maclane
- Sheaves, Geometry, Logic by Maclane and Moerdjk
- Topos theory by P. Johnstone
Toposes, Triples and Theories by Michael Barr and Charles Wells.

Some basic texts for Haskell are:

Real World Haskell by Bryan O'Sullivan, Don Stewart, and John Goerzen

Where do I begin? A problem solving approach to teaching functional programming by Simon Thompson

Other books and tutorials listed on the Haskell web site http://www.haskell.org

### Notes

Participants are encouraged to add notes as "subpages" (start the name with a forward slash (`/`)) of this page:

### Projects

We list some possible projects to work on in Haskell.

- Create a package that implements symbolic manipulation for polynomials in one or more variables.
Take an existing project (such as "elvis" or "par" ) and re-write it in Haskell.

- Vivek Dadu implemented the quadratic sieve factoring method in C/C++. Convert his work to Haskell/Clean and implement concurrency.