@@ -51,15 +51,10 @@ moduleToJs :: Options -> Module -> Environment -> [JS]
51moduleToJs opts (Module pname@(ProperName name) decls) env =
51moduleToJs opts (Module pname@(ProperName name) decls) env =
52 [ JSVariableIntroduction name Nothing
52 [ JSVariableIntroduction name Nothing
53 , JSApp (JSFunction Nothing [name]
53 , JSApp (JSFunction Nothing [name]
54− (JSBlock (concat $ mapMaybe (\decl -> fmap (map $ optimize opts) $ declToJs opts (ModuleName pname) decl env) (sortBy typeClassesLast decls))))
54+ (JSBlock (concat $ mapMaybe (\decl -> fmap (map $ optimize opts) $ declToJs opts (ModuleName pname) decl env) (decls))))
55 [JSAssignment (JSVar name)
55 [JSAssignment (JSVar name)
56 (JSBinary Or (JSVar name) (JSObjectLiteral []))]
56 (JSBinary Or (JSVar name) (JSObjectLiteral []))]
59− typeClassesLast (ExternDeclaration TypeClassDictionaryImport _ _ _) (ExternDeclaration TypeClassDictionaryImport _ _ _) = EQ
60− typeClassesLast (ExternDeclaration TypeClassDictionaryImport _ _ _) _ = GT
61− typeClassesLast _ (ExternDeclaration TypeClassDictionaryImport _ _ _) = LT
62− typeClassesLast _ _ = EQ
65-- Generate code in the simplified Javascript intermediate representation for a declaration
60-- Generate code in the simplified Javascript intermediate representation for a declaration