Haskell logoHaskell Suite is a long-time dream of mine, a vision, tangible yet distant. The task to build a fully modular, composable suite of libraries and tools, which taken together comprise a full Haskell compiler (or many!) and interpreter, has seemed daunting to say the least. My well-established haskell-src-exts library would be its foundation, and on top of that there would be a suite of libraries to supply name resolution, type inference, desugaring and other transformations, and a simple and well-defined interface to enable a variety of separate, specialized back ends. Such a modular set of libraries could cater to everything from compiler writers to IDEs to refactoring tools, and much more.

Now, what for a long time seemed only a distant vision is starting to become very real. This past summer, Shayan Najd Javadipour started the work on haskell-type-exts, providing the first steps of type inference functionality as a separate module. Unrelated, Lennart Augustsson presented us with a near-complete library to do import chasing and name resolution. The pieces are coming together.

I present my vision of the Haskell Suite at the Haskell Implementors Workshop in Copenhagen, on September 14.