lhs2TeX is a literate programming tool. It is implemented as a preprocessor that generates LaTeX code from literate Haskell sources. It allows for and provides different styles for the formatting of code. You can easily select between representing operators with mathematical symbols or with ASCII approximations, as well as deciding whether or not to highlight keywords. The formatting of your own defined tokens may be adjusted. Preprocessor-style conditionals are supported, and Haskell can be used to generate parts of the document.
Pandoc is a Haskell library for converting from one markup format to another, and a command-line tool that uses this library. It can read markdown and (subsets of) reStructuredText, HTML, and LaTeX, and it can write markdown, reStructuredText, HTML, LaTeX, DocBook, OpenDocument XML, RTF, ODT, GNU Texinfo, MediaWiki markup, and S5 HTML slide shows. Pandoc extends standard markdown syntax with footnotes, embedded LaTeX, and more. A compatibility mode is provided for those who need a drop-in replacement for Markdown.pl. Included wrapper scripts make it easy to convert markdown to PDFs and Web pages to markdown documents. It has a modular design where the addition of a new input or output format requires only the addition of a reader or writer module.