Предположим, у меня есть два модуля NecessaryModule1 и NecessaryModule2 (как указано в сообщении Haskell: загрузка ВСЕХ файлов в текущий путь к каталогу. Затем я заметил как в WinGHCi, так и в GHCi что если я это сделаю:
> :load NecessaryModule1
[1 of 1] Compiling NecessaryModule1 ( NecessaryModule1.hs, interpreted )
Ok, modules loaded: NecessaryModule1.
> addNumber1 2 3
5
> :load NecessaryModule2
[1 of 1] Compiling NecessaryModule2 ( NecessaryModule2.hs, interpreted )
Ok, modules loaded: NecessaryModule2.
> addNumber1 2 3
<interactive>:1:1: Not in scope: `addNumber1'
то есть. Загрузка NecessaryModule2 устраняет все функции из NecessaryModule1.
Значит ли это, что единственный способ одновременно загрузить NecessaryModule1 и NecessaryModule2 - использовать третий файл (который импортирует как NecessaryModule1, так и NecessaryModule2), а затем загрузить этот третий файл? (например, см. test.hs в Haskell: загрузка ВСЕХ файлов в текущий путь к каталогу) Спасибо.
----------------------------------------------- ----------------------------------------
[ОТВЕТ НА ГИОКОЗАУРА]
Привет, поэтому, если я сделал :load NecessaryModule1
, а затем хочу загрузить модуль в MyMod.hs:
--MyMod.hs
module MyMod where
import Data.List
f x = sort x
то как мне это сделать? В Haskell: выгрузите модуль в WinGHCi Риккардо объясняет, что :module
предполагает, что модули уже загружены. Значит ли это, что единственный способ достичь загрузки нескольких настраиваемых модулей - загрузить их одним вызовом функции :load
? Спасибо.