Glasgow Haskell Compiler






































Glasgow Haskell Compiler
Тип
Компилятор
Разработчик
Университет Глазго
Написана на
Си и Haskell
Операционная система
Кроссплатформенное программное обеспечение
Первый выпуск
1989
Последняя версия
  • 8.4.3 (28 мая 2018)[1]

Лицензия
BSD
Сайт
haskell.org/ghc/

Glasgow Haskell Compiler (англ. Компилятор языка Haskell из Глазго) — один из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.




Содержание






  • 1 Возможности


  • 2 Расширения системы типов


  • 3 Примечания


  • 4 Ссылки





Возможности |


GHC является компилятором языка Haskell, основанным на идеологии открытого исходного кода. Возможности и особенности:



  • Кроме собственно компилятора имеется интерпретирующая интерактивная среда (GHCi).

  • Полная поддержка стандарта языка Haskell-2010, дополнительно поддерживается широкий список расширений.

  • Автоматическое распараллеливание выполнения программы (без явного использования нитей) в системах с многоядерными процессорами. Поскольку отсутствие побочных эффектов в чистых функциях гарантировано, в любом вызове функции всегда допустимо параллельное вычисление двух различных параметров — порядок их вычисления не может оказать влияния на результат вызова.

  • Работа на разнообразных платформах (включая Windows, многие варианты Unix).

  • Большие возможности по оптимизации программ, включая межмодульную оптимизацию.

  • Три варианта компиляции: непосредственно в машинные коды целевой архитектуры, компиляция через промежуточный код на языке C или C--, компиляция под виртуальную машину LLVM

  • Поддерживаются различные варианты профилирования.



Расширения системы типов |



  • Экзистенциальный полиморфизм

  • Полиморфизм высших порядков

  • Импредикативный полиморфизм

  • Обобщённые алгебраические типы данных

  • Семейства типов (индексированные синонимы типов, индексированные типы данных)



Примечания |





  1. git.haskell.org - ghc.git/tag





Ссылки |



  • Официальный сайт GHC


  • The Glasgow Haskell Compiler. The Architecture of Open Source Applications, Volume 2, 2012 (англ.)









Popular posts from this blog

Steve Gadd

Лира (музыкальный инструмент)

Сарыагашский район