Interested Article - GHC

GHC ( англ. Glasgow Haskell Compiler ) — один из самых мощных и развитых компиляторов функционального языка программирования Haskell , разрабатывается под координацией лаборатории университета Глазго ; ключевые разработчики — Саймон Пейтон-Джонс и ( англ. ). Свободно распространяется под модифицированной лицензией BSD; работает на большинстве популярных Unix-систем и входит в большинство дистрибутивов Linux , есть версии для Windows и macOS .

Обеспечивается три варианта компиляции: непосредственно в машинные коды целевой архитектуры, компиляция через промежуточный код на языке Си или C-- , компиляция под LLVM . Сам компилятор в основном написан на Haskell, но среда исполнения для скомпилированных программ реализована на Си и C--. Кроме компилятора, включает интерпретирующую REPL -среду GHCi .

Обеспечивает полную поддержку стандартов Haskell-98 и Haskell-2010, дополнительно реализован широкий список расширений. Одна из особенностей — параллельное исполнение программ, для которой не требуется явное выделение потоков выполнения (лишь требуется явная аннотация от разработчика программы). Реализованы значительные возможности по оптимизации программ, включая межмодульную оптимизацию. Поддерживаются различные варианты профилирования.

Некоторые поддерживаемые расширения системы типов: экзистенциальный полиморфизм, полиморфизм высших порядков, импредикативный полиморфизм, обобщённые алгебраические типы данных, семейства типов (индексированные синонимы типов, индексированные типы данных).

Примечания

  1. — 2022.
  2. — 2022.
  3. (англ.)

Литература

Ссылки

  • , 2012 (англ.)
Источник —

Same as GHC