Functional MetaPost is a Haskell frontend to the MetaPost language by John Hobby. Users write their graphics as Haskell programs, which then emit MetaPost code that can be compiled into encapsulated PostScript files and smoothly included into e.g. LaTeX.
A collection of useful examples how to use Functional MetaPost can be found in the user's manual at http://download.savannah.nongnu.org/releases/funcmp/Manual_eng.ps. The document doesn't offer very much detail in terms of explanations, but the code samples are quite helpful.
Further documentation can be found in the original thesis that describes the implementation. The text is available in German at http://download.savannah.nongnu.org/releases/funcmp/Thesis.ps and in English at http://download.savannah.nongnu.org/releases/funcmp/Thesis_eng.ps.
Last but not least, there is a tutorial that offers many helpful examples available in German at http://download.savannah.nongnu.org/releases/funcmp/Tutorial.ps and in English at http://download.savannah.nongnu.org/releases/funcmp/Tutorial_eng.ps.