wrapIntoModule :: Arrow a => a (Module, ([HsImportDecl], (HsName, (HsQualType, HsExp)))) HsModule
wrapIntoModule = proc (modName, (extImports, (symName, (symType, symExp)))) ->
do let hsModule = HsModule undefined modName (Just exports) imports decls
exports = [HsEVar (UnQual symName)]
wrapIntoModule :: Arrow a => a (Module, ([HsImportDecl], (HsName, (HsQualType, HsExp)))) HsModule
wrapIntoModule = proc (modName, (extImports, (symName, (symType, symExp)))) ->
do let hsModule = HsModule undefined modName (Just exports) imports decls
exports = [HsEVar (UnQual symName)]