Glasgow Haskell Compiler

Glasgow Haskell Compiler
Типкомпілятор
відкрите програмне забезпечення
вільне та відкрите програмне забезпечення і оптимізувальний компілятор Редагувати інформацію у Вікіданих
РозробникУніверситет Глазго Редагувати інформацію у Вікіданих
Операційна системаLinux, FreeBSD, NetBSD, OpenBSD, Solaris, macOS, Windows і DragonFly BSD Редагувати інформацію у Вікіданих
Мова програмуванняC і Haskell Редагувати інформацію у Вікіданих
Ліцензіямодифікована ліцензія BSDd[1] Редагувати інформацію у Вікіданих
Репозиторійgitlab.haskell.org/ghc/ghc.git
Вебсайтhaskell.org/ghc/ Редагувати інформацію у Вікіданих

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

Можливості

GHC — компілятор мови Haskell, заснований на ідеології відкритого сирцевого коду. Можливості та особливості:

  • Крім власне компілятора, є інтерпретувальне інтерактивне середовище (GHCi).
  • Повна підтримка стандарту мови Haskell-2010, додатково підтримується широкий список розширень.
  • Автоматичне розпаралелювання виконання програми (без явного використання ниток) у системах з багатоядерними процесорами. Оскільки відсутність побічних ефектів у чистих функціях гарантовано, в будь-якому виконанні функції завжди допускається паралельне обчислення двох різних параметрів — порядок їх обчислення не може вплинути на результат виклику.
  • Робота на різноманітних платформах (включно з Windows, багатьма варіантами Unix).
  • Великі можливості оптимізації програм, включно з міжмодульною оптимізацією.
  • Три варіанти компіляції: безпосередньо в машинні коди цільової архітектури, компіляція через проміжний код мовою C або C--, компіляція під віртуальну машину LLVM.
  • Підтримуються різні варіанти профілювання.

Розширення системи типів

Примітки

Посилання

 

Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia