2016-06-04 2 views

ответ

4

Портирован практически весь существующий код библиотеки (т. Е. Прелюдия, данные и т. Д.). Также такие вещи, как QuickCheck, практически без адаптаций.

Интересный случай: Data.HashMap, который имеет тот же интерфейс, что и в Haskell, но реализация зависит от массивов Java.

Вещи, которые следует учитывать: неподдерживаемые расширения GHC, строки/текст, код, который использует внешние функции (то есть, C).

В таких случаях аналог Frege Haskell обычно немного отличается или пропускает функции. Примерами могут быть библиотеки поддержки JSON и библиотеки комбинаторов парсеров (Data.MicroParsec).

Смежные вопросы