@@ -144,14 +144,14 @@ main = do
144 case P.runIndentParser "" parseExpression (unlines ls) of
144 case P.runIndentParser "" parseExpression (unlines ls) of
145 Left err -> outputStrLn (show err)
145 Left err -> outputStrLn (show err)
146 Right decl -> do
146 Right decl -> do
147− handleDeclaration loadedModules imports binders decl
147+ handleDeclaration loadedModules imports (reverse binders) decl
148 go imports loadedModules binders
148 go imports loadedModules binders
149− Right binder -> go imports loadedModules (binders ++ [binder])
149+ Right binder -> go imports loadedModules (binder:binders)
150 Import moduleName -> go (imports ++ [P.ProperName moduleName]) loadedModules binders
150 Import moduleName -> go (imports ++ [P.ProperName moduleName]) loadedModules binders
151 Let line -> do
151 Let line -> do
152 moreLets <- case P.runIndentParser "" parseDoNotationLet line of
152 moreLets <- case P.runIndentParser "" parseDoNotationLet line of
153 Left err -> outputStrLn (show err) >> return binders
153 Left err -> outputStrLn (show err) >> return binders
154− Right l -> return $ binders ++ [l]
154+ Right l -> return $ l:binders
155 go imports loadedModules moreLets
155 go imports loadedModules moreLets
156 LoadModule moduleFile -> do
156 LoadModule moduleFile -> do
157 ms <- lift $ loadModule moduleFile
157 ms <- lift $ loadModule moduleFile