@@ -16,6 +16,7 @@
1616module Language.PureScript.Sugar (desugar, module S) where
1717
1818import Control.Monad
19+import Control.Arrow ((>>>))
1920
2021import Language.PureScript.Declarations
2122
@@ -25,10 +26,13 @@ import Language.PureScript.Sugar.CaseDeclarations as S
2526import Language.PureScript.Sugar.TypeDeclarations as S
2627import Language.PureScript.Sugar.BindingGroups as S
2728import Language.PureScript.Sugar.TypeClasses as S
29+import Language.PureScript.Sugar.Let as S
2830
2931-- |
3032-- The desugaring pipeline proceeds as follows:
3133--
34+-- * Desugar let bindings
35+--
3236-- * Introduce type synonyms for type class dictionaries
3337--
3438-- * Rebracket user-defined binary operators
@@ -45,6 +49,7 @@ desugar :: [Module] -> Either String [Module]
4549desugar = desugarTypeClasses
4650 >=> rebracket
4751 >=> desugarDo
48− >=> desugarCasesModule
52+ >=> desugarLetBindings
53+ >>> desugarCasesModule
4954 >=> desugarTypeDeclarationsModule
5055 >=> createBindingGroupsModule