Find all the resources here:
Or just go right away to this YouTube video to get a quick idea:
This lecture was prepared upon invitation by the local research team on active vision. They asked me to hold a lecture on "Bildverarbeitung in Haskell" (engl.: "Image processing in Haskell"). Here I should mention in passing that their invitation was about an Xmas party kind of workshop. Accordingly, my lecture is short and somewhat contrived, but see for yourself. More importantly, all the shown Haskell code is short, well-typed, and available for download, but totally useless.
Technically, the shown, 4th encoding of "image processing" encodes "Bildverarbeitung" and potentially other words, letter by letter, in the type system. The overloaded functions for the letters of the alphabet can only be composed (by means of ".") to form words that are known to the type system. Hence, type checking is spell checking. Quite obviously, this particular approach is horrendously verbose, inefficient and limited. The encoding is good however in so far that it allowed me to illustrate the notion of Haskell's Triangle (as opposed to Pascal's).
Merry Xmas and a Happy New Year!