Использование GHCi для загрузки модуля без доступа к его исходному коду - PullRequest
2 голосов
/ 17 сентября 2011

Я создаю простой модуль TestModule.hs, который содержит одно экспортированное определение верхнего уровня testval = 2.Я компилирую его, создавая TestModule.o и TestModule.hiудаляю TestModule.hs.Затем я загружаю TestModule.o в ghci, например:

~ λ ghci TestModule.o
GHCi, version 7.0.3.20110517: http://www.haskell.org/ghc/  :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package ffi-1.0 ... linking ... done.
Loading object (static) TestModule.o ... done
final link ... done
Prelude>

Как видите, TestModule не находится в области видимости, и я не могу получить доступ к testval.Зачем?Как я могу сделать это без доступа к исходному файлу?

Дополнительный вопрос: как мне сделать то же самое с помощью пакета hint?

Спасибо!

1 Ответ

2 голосов
/ 17 сентября 2011

Вы не можете интерпретировать то, что уже скомпилировано. Если вы хотите интерпретировать это, вам нужен источник. Вы можете сделать пакет, если хотите. Инструкции здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...