From cf5e68a5a2bf31d06f7b84a6b1f5cf350351865d Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Wed, 1 Feb 2023 21:24:22 +0100 Subject: Fix argument order in function calls --- snug-clean/src/Snug/Compile.icl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'snug-clean') diff --git a/snug-clean/src/Snug/Compile.icl b/snug-clean/src/Snug/Compile.icl index 50119f3..757b9c3 100644 --- a/snug-clean/src/Snug/Compile.icl +++ b/snug-clean/src/Snug/Compile.icl @@ -141,14 +141,14 @@ simulator ns globals locals expr=:(ExpApp _ _) = case lookupFunction ns id globals of ?None -> abort ("unknown symbol: " +++ id +++ "\n") // TODO pass error up ?Just info | info.arity == length args -> - mapM_ (simulator ns globals locals) args >>| + mapM_ (simulator ns globals locals) (reverse args) >>| buildThunk (functionLabel ns NodeEntry id) info.arity _ -> abort ("arity mismatch in application\n") // TODO implement Constructor id -> case lookupConstructor ns id globals of ?None -> abort ("unknown constructor: " +++ id +++ "\n") // TODO pass error up ?Just (ConstructorDef _ arg_types) | length arg_types == length args -> - mapM_ (simulator ns globals locals) args >>| + mapM_ (simulator ns globals locals) (reverse args) >>| buildCons (constructorLabel ns id) (length args) _ -> abort ("arity mismatch in application of " +++ id +++ "\n") // TODO implement _ -> // TODO -- cgit v1.2.3