A SASL compiler in Haskell