@@ -141,21 +141,16 @@ codegenExpr codegenEnv@{ currentModule } s = case unwrap s of
141141 S.chezCurriedApplication (codegenExpr codegenEnv f) (codegenExpr codegenEnv <$> p)
142142 Abs a e -> do
143143 S.chezCurriedFunction (uncurry S.toChezIdent <$> a) (codegenExpr codegenEnv e)
144−
145− UncurriedApp fn args ->
146− S.List $ Array.cons (codegenExpr codegenEnv fn) $
147− (codegenExpr codegenEnv <$> args)
148− UncurriedAbs args body ->
149− S.List
150− [ S.Identifier $ scmPrefixed "lambda"
151− , S.List $ (S.Identifier <<< uncurry S.toChezIdent) <$> args
152− , S.List [ codegenExpr codegenEnv body ]
153− ]
154−
155− UncurriedEffectApp _ _ ->
156− S.Identifier "uncurried-effect-app"
157− UncurriedEffectAbs _ _ ->
158− S.Identifier "uncurried-effect-ab"
144+ UncurriedApp f p ->
145+ S.chezUncurriedApplication (codegenExpr codegenEnv f) (codegenExpr codegenEnv <$> p)
146+ UncurriedAbs a e ->
147+ S.chezUncurriedFunction (uncurry S.toChezIdent <$> a) (codegenExpr codegenEnv e)
148+ UncurriedEffectApp f p ->
149+ S.chezThunk $ S.chezUncurriedApplication (codegenExpr codegenEnv f)
150+ (codegenExpr codegenEnv <$> p)
151+ UncurriedEffectAbs a e ->
152+ S.chezUncurriedFunction (uncurry S.toChezIdent <$> a)
153+ (codegenChain effectChainMode codegenEnv e)
159154
160155 Accessor e (GetProp i) ->
161156 S.chezUncurriedApplication