Glasgow Haskell Compiler
Glasgow Haskell Compiler | |
---|---|
Тип | Компилятор |
Разработчик | Университет Глазго |
Написана на | Си и Haskell |
Операционная система | Кроссплатформенное программное обеспечение |
Первый выпуск | 1989 |
Последняя версия |
|
Лицензия | BSD |
Сайт | haskell.org/ghc/ |
Glasgow Haskell Compiler (англ. Компилятор языка Haskell из Глазго) — один из самых мощных и развитых на сегодняшний день компиляторов функционального языка программирования Haskell, который разрабатывается свободной рабочей группой из многочисленных разработчиков, собранных по всему миру и координируемых из лаборатории университета Глазго.
Содержание
1 Возможности
2 Расширения системы типов
3 Примечания
4 Ссылки
Возможности |
GHC является компилятором языка Haskell, основанным на идеологии открытого исходного кода. Возможности и особенности:
- Кроме собственно компилятора имеется интерпретирующая интерактивная среда (GHCi).
- Полная поддержка стандарта языка Haskell-2010, дополнительно поддерживается широкий список расширений.
- Автоматическое распараллеливание выполнения программы (без явного использования нитей) в системах с многоядерными процессорами. Поскольку отсутствие побочных эффектов в чистых функциях гарантировано, в любом вызове функции всегда допустимо параллельное вычисление двух различных параметров — порядок их вычисления не может оказать влияния на результат вызова.
- Работа на разнообразных платформах (включая Windows, многие варианты Unix).
- Большие возможности по оптимизации программ, включая межмодульную оптимизацию.
- Три варианта компиляции: непосредственно в машинные коды целевой архитектуры, компиляция через промежуточный код на языке C или C--, компиляция под виртуальную машину LLVM
- Поддерживаются различные варианты профилирования.
Расширения системы типов |
- Экзистенциальный полиморфизм
- Полиморфизм высших порядков
- Импредикативный полиморфизм
- Обобщённые алгебраические типы данных
- Семейства типов (индексированные синонимы типов, индексированные типы данных)
Примечания |
↑ git.haskell.org - ghc.git/tag
Ссылки |
- Официальный сайт GHC
The Glasgow Haskell Compiler. The Architecture of Open Source Applications, Volume 2, 2012 (англ.)