I recently gave a talk at a local meetup where I tried to explain briefly what are the main building blocks of compilers, and how a few Haskell features map to those pretty elegantly, trying to demonstrate what Haskell has to offer for compiler writers, and why it's a popular choice for compiler implementations.

The slides for my talk, Compilers and Haskell, are available on GitHub.

I've also compiled (heh) a list of resources on how to start learning compilers, especially if you already enjoy functional languages and are interested in compiling functional languages.

The list, Fun Compilers, is also available on GitHub.