Команда "ghc" возвращает переменную вне области действия - PullRequest
0 голосов
/ 11 июля 2019

Я начинаю в Haskell и сталкиваюсь с этим странным сообщением об ошибке при попытке скомпилировать файл .ghci в Haskell. У меня есть очень простой код, например:

main = do
    putStrLn "Greetings! What is your name?"
    inpStr <- getLine
    putStrLn $ "Welcome to Haskell, " ++ inpStr ++ "!"

Я сохранил код в файле с именем basicio.hs и попытался запустить ghc basicio.hs Вместо строки я получаю следующее сообщение

<interactive>:2:1: error:
    Variable not in scope: runghc :: t0 -> b0 -> c

<interactive>:2:8: error: Variable not in scope: basicio

Я не уверен, что не так, команда ": load" работает нормально и находит мой файл.

1 Ответ

5 голосов
/ 11 июля 2019

Это сообщение об ошибке выглядит так, как будто оно было сгенерировано, набрав "runghc basicio" в приглашении GHCi:

GHCi, version 8.6.5: http://www.haskell.org/ghc/  :? for help
Loaded GHCi configuration from ...
> runghc basicio

<interactive>:3:1: error: Variable not in scope: runghc :: t0 -> t

<interactive>:3:8: error: Variable not in scope: basicio
>

Однако команда runghc и команда компилятора ghc предназначены для запуска непосредственно из командной строки.

...