#haskell #ffi #ghcjs
#хаскелл #ффи #ghcjs
Вопрос:
Я копаюсь ghcjs-jquery
в коде, чтобы посмотреть, как JavascriptFFI
это работает. Что я пытаюсь выяснить, так это то, что как только вы определяете сигнатуру типа импорта FFI для функции JS, как вы можете помочь ghcjs
найти файл, содержащий эту функцию.
Проверка Internal.hs
и настройка Cabal, я не вижу никакого способа указать путь к файлам jQuery JS. Я также поискал документацию по JavascriptFFI
функциям, но ничего не нашел. Я буду признателен за указания о том, как выполнить Javascript FFI ghcjs
для любой библиотеки JS. Должен быть какой-то параметр командной строки ghcjs
, чтобы указать ему, где искать js
файлы.
Я планирую поиграть с библиотечными функциями dojo после того, как разберусь JavascriptFFI
с функцией ghcjs
.
Комментарии:
1. Но почему GHCJS должен иметь возможность «находить» функции? Он просто генерирует вызовы для них; затем, если во время выполнения функции загружены, вызовы будут успешными. Я что-то пропустил?
Ответ №1:
Вам нужно позаботиться о загрузке этих файлов Javascript самостоятельно на странице, на которой вы используете сгенерированный GHCJS Javascript. GHCJS не нужно находить фактическое определение ссылочных функций Javascript — оно принимает как должное любой тип, который вы добавляете в свое foreign
объявление.