From e26753be1ed978e20ceea5e284fddbbc29f0338e Mon Sep 17 00:00:00 2001 From: Arnaud Bailly Date: Mon, 3 Nov 2025 21:41:12 +0100 Subject: handle language when loading program --- lambda-calcul/haskell/src/Minilang/REPL/Run.hs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'lambda-calcul/haskell/src/Minilang/REPL') diff --git a/lambda-calcul/haskell/src/Minilang/REPL/Run.hs b/lambda-calcul/haskell/src/Minilang/REPL/Run.hs index 7dc8e81..37d4dd2 100644 --- a/lambda-calcul/haskell/src/Minilang/REPL/Run.hs +++ b/lambda-calcul/haskell/src/Minilang/REPL/Run.hs @@ -70,10 +70,9 @@ handleCommand (Load (Data prog)) = loadProgramInEnv prog handleCommand (Set (StepTypeChecker st)) = getEnv >>= \e -> setEnv (e {stepTypeCheck = st}) handleCommand (Set (DebugParser st)) = getEnv >>= \e -> setEnv (e {debugParser = st}) handleCommand (Set (SelectLanguage lang)) = - trace ("selecting language " ++ show lang) $ - getEnv >>= \e -> - setEnv (e {language = lang}) - >> output (Msg $ "Language set to " <> pack (show lang)) + getEnv >>= \e -> + setEnv (e {language = lang}) + >> output (Msg $ "Language set to " <> pack (show lang)) handleCommand Help = output (Msg helpText) @@ -82,11 +81,11 @@ loadProgramInEnv :: Text -> m () loadProgramInEnv prog = do - repl@REPLEnv {env, context} <- getEnv + repl@REPLEnv {env, context, language} <- getEnv case parse prog of Left err -> output (Msg $ pack $ show err) Right e -> do - case loadProgram e env context of + case loadProgram language e env context of Left typeError -> output (Msg $ pack $ show typeError) Right (term, typ, env', context') -> do setEnv (repl {env = env', context = context'}) -- cgit v1.3.1