Detalii soft:
Versiune: 7.8.4
Incarca data: 1 Mar 15
Licenţă: Gratuit
Popularitate: 184
Acesta susține în prezent întregul Haskell 98 limba și o mare varietate de extensii de limbă
Caracteristici :.
- GHC are sprijin deosebit de bune pentru concurență și paralelism, inclusiv suport pentru memorie Software Tranzactionala (STM).
- GHC generează cod rapid, în special pentru programele concurente. Uitați-vă la spectacol GHC pe limbaj de calculator Repere joc, iar unele comentarii cu privire Haskell de către organizatorul actual de schimbul de focuri, Brent Fulgham.
- GHC funcționează pe mai multe platforme, inclusiv Windows și cele mai multe soiuri de Unix, și mai multe arhitecturi de procesoare diferite. Există instrucțiuni detaliate pentru portarea GHC la o nouă platformă.
- GHC are capacități de optimizare extinse, inclusiv optimizarea inter-modul.
- GHC compilează codul Haskell, fie prin utilizarea unui compilator C intermediar (CCG), sau prin generarea de cod nativ pe unele platforme. Mediul interactiv compilează Haskell la bytecode, și sprijină executarea bytecode mixt / programe compilate.
- profilat este susținută, atât de timp / alocare și de diferite tipuri de morman profilurilor.
- GHC vine cu o gama larga de biblioteci.
Ce este nou în această versiune:
- În mod implicit, GHC a permis o nouă avertizare, -fwarn -typed-gauri, care determină compilatorul să răspundă cu tipurile de variabile nelegate se întâlnește în codul sursă.
- Acum este posibil de a declara o familie de tip "închis", atunci când se utilizează extensia TypeFamilies.
- GHC suportă acum supraîncărcarea lista literali folosind noua extensie OverloadedLists.
- GHC suportă acum sinonime model, activat prin extinderea -XPatternSynonyms.
Ce este nou în versiunea 7.6.2:
- A de lungă durată typechecker bug care a permis unsafeCoerce la fi scris a fost stabilit.
- Un bug care sa stabilit că a provocat uneori GHC nu a dat seama că recompilarea era necesar.
- Dacă ambii -H și o -M-# x3c, dimensiune și # x3e; pavilion sunt date, atunci GHC nu va mai depăși dimensiunea maximă heap.
- O eroare off-de-unu, ceea ce ar putea provoca segfaults, în pavilion parsarea RTS a fost stabilit.
- Diverse bug-uri care ar putea determina GHC să intrăm în panică atunci când compilarea anumite fișiere sursă au fost rezolvate.
- Unele bug-uri în tip verificarea DataKinds și PolyKinds extensii au fost rezolvate.
- Performanța de programe compilate a fost îmbunătățit în unele cazuri.
Ce este nou în versiunea 7.6.1:
- piata online polimorfe și promovarea datele sunt acum pe deplin puse în aplicare și Caracteristici acceptate:. Secțiunea 7,8, & quot; Tip polimorfism & quot;
- Ferestre 64 de biți este acum o platformă susținută.
- Acum este posibil de a amâna erori de tip până la execuție, folosind -fdefer-erori de tip pavilion:. Secțiunea 7.13, & quot; amânarea erori de tip a rulării & quot;
- RTS suportă acum schimbarea numărului de capacități în timpul rulării cu Control.Concurrent.setNumCapabilities:. Secțiunea 4.15.2, & quot; opțiuni RTS pentru laptele praf degresat paralelism & quot;
Ce este nou în versiunea 7.4.2:.
- hp2ps se pot ocupa acum backslash-uri din identificatori corect
- Fixed bug în punerea în aplicare implicit a popCount în Data.Bits.
- O condiție potențial cursă în Control.Concurrent.Chan a fost stabilit.
- O eroare MVAr care ar putea provoca blocaje a fost stabilit.
- Când folosiți--fwarn nesigur, GHC rapoarte acum extensii de limbă nesigure.
- RTS non-threaded evită acum wakeups când sistemul este inactiv.
- Un bug care cauzează un accident cu un foarte mic inițială stack a fost stabilit.
Ce este nou în versiunea 7.4.1:
- Nu este o caracteristică nouă Safe Haskell (-XSafe , -XTrustworthy, -XUnsafe): Secțiunea 7,23, & quot; Safe Haskell & quot ;. Design-ul a schimbat de 7.2.
- Nu este o caracteristică nouă polimorfism tip (-XPolyKinds): Secțiunea 7.8.1, & quot; Tip polimorfism & quot ;. Un efect secundar al acestui fapt este că, atunci când extensia nu este activat, în anumite circumstanțe, tipuri sunt acum implicit * în loc să fie dedus.
- Nu este un nou tip de constrângere facilitate (-XConstraintKinds):. Secțiunea 7.10, & quot; Restricții de tip & quot;
- Acum este posibil să dea orice fel de declarații la prompt ghci:. Secțiunea 2.4.4, & quot; Tipul, clasa și alte declarații & quot;
- profilare și HPC implementari au fost regrupate și revizuite. Schimbări vizibile includ redenumirea de profilare steaguri și stive de cost de centru-o nouă semantică, care ar trebui, în cele mai multe cazuri duce la profilurile mai utile și intuitive. Steagul -XC + RTS acum oferă, de asemenea, o urmă stivă.
- Acum este posibil să scrie plugin-uri de compilare:. Secțiunea 9.3, & quot; compilatoare Plugin-uri & quot;
- sprijin DSP a fost îmbunătățit în mod semnificativ.
- Nu este acum suport preliminar pentru compilare registerised pe platforma ARM, folosind LLVM.
Ce este nou în versiunea 7.0.4:
- Un punct de regresie plutește 7.0.3 afectează x86 a fost stabilit.
- linker GHCi ocupă acum fișierele obiect parțial dezbrăcat. Aceasta stabilește încărcarea pachetului GHC în ghci atunci când a fost deposedat, care este adesea cazul în ambalaje de distribuție Linux.
- Un bug care a cauzat rezultate proaste la getCPUTime, getClockTime și getCurrentTime a fost stabilit.
- Un bug sistem de rulare cu grămezi mari a fost stabilit.
- Un bug sistem de rulare când morman de profile a fost stabilit.
- Un bug sistem de rulare când morman de profile a fost stabilit.
- Un bug sistem de rulare, care a provocat rezultate incorecte și segfaults atunci când se utilizează callback FFI, a fost stabilit.
- Un bug sistem de rulare, care a provocat ocazional programe paralele la & # x3c; & # x3c; buclă & # x3e; & # x3e; atunci când se utilizează -feager-blackholing, a fost stabilit.
- permisiunile director incorecte la instalarea au fost rezolvate.
- Unele îmbunătățiri au fost făcute la noul suport TestSuite Cabal.
- Cabal este acum 1.10.2.0 (era 1.10.1.0).
Ce este nou în versiunea 7.0.2:
- compilatoare:
- vechi [$ foo | ... |]. Sintaxă funcționează din nou, dar este depreciată
- Au fost improvments semnificative la noul tip verificatorul.
- GHCi:
- Incarcatoare .a biblioteci este acum posibil pe toate platformele. O bibliotecă .o va fi încă folosit de preferință dacă ambele exista. GHCi nu va mai avertiza despre lipsa .o biblioteci.
- Noi acum închideți .ghci fișierele după ce a citit ei, care pe mașini Windows le permite să fie modificată în timp ce GHCi funcționează.
- Acum este posibil să:. Unset variabilele ghci (args, prog, promptă, editor și oprire)
- Runtime:
- DTrace este acum suportat pe Solaris, în plus față de OS X.
- sistem Build:
- OS X 10.6 se bazează pe acum lucrează pe ambele 10.5 și 10.6.
- instalările Windows includ acum libstdc ++ DLL.
- Haddock:
- GHC acum vine cu eglefin 2.9.0.
- GHC include acum baze de date hoogle pentru bibliotecile.
Sistemul
Ce este nou în versiunea 7.0.1:
- Pe platformele POSIX, există un nou I / Manager O bazat pe epoll / kqueue / sondaj, care permite multithreaded cod I / O pentru a scala la un număr mult mai mare (100K +) din fire.
- GHC include acum un generator de cod LLVM. Pentru anumit cod, cod grele în special aritmetică, cu ajutorul generatorului de cod LLVM pot aduce unele îmbunătățiri de performanță frumos.
- tip checker a fost revizuit, ceea ce înseamnă că este acum capabil să se ocupe în mod corect interacțiunile dintre extensiile de sisteme de tip.
- Inliner a fost revizuit, care ar trebui să dea, în general, o performanță mai bună în timp ce reducerea inutile de dimensiuni cod explozie.
- O mare parte a sistemului de rulare au fost revizuite, în special echipamentul legate de blocarea și reactivare a fire si aruncare excepție (throwTo). Mai multe cazuri de performanță patologice au fost stabilite, în special în cazul în care sunt implicate un număr mare de fire.
- Datorită schimbărilor în sistemul de runtime, dacă utilizați Control.Parallel.Strategies din pachetul paralel, vă rugăm să faceți upgrade la cel puțin versiunea 2 (preferabil versiunea 3). Punerea în aplicare a strategiilor în paralel-1.x va pierde paralelismul cu GHC 7.0.1.
Comentariile nu a fost găsit