Welcome to Functional Programming in Haskell. This is the homepage for the course.
Writing large software systems that work is difficult and expensive. Maintaining those systems
is even more difficult and expensive. Functional programming languages, such as Haskell, can make
it easier and cheaper. Haskell is a wide-spectrum language, suitable for a variety of applications.
It is particularly suitable for programs which need to be highly modifiable and maintainable.
Functional languages are superb
for writing specifications which can actually be executed. Such a specification searves as the first prototype of the final
Functional programs are also relatively easy to maintain, because the code is shorter, clearer, and the rigorous control of side effects eliminates a huge
class of unforseen interactions.