Glasgow Haskell Compiler

Software screenshot:
Glasgow Haskell Compiler
Software informatie:
Versie: 7.8.4
Upload datum: 1 Mar 15
Ontwikkelaar: Simon Marlow
Licentie: Gratis
Populariteit: 41

Rating: 2.0/5 (Total Votes: 1)

Het ondersteunt momenteel de gehele Haskell 98 talen en een breed scala aan taaluitbreidingen

Kenmerken .

  • GHC heeft bijzonder goede ondersteuning voor concurrency en parallellisme, inclusief ondersteuning voor Software Transactionele Memory (STM).
  • GHC genereert snel code, met name voor gelijktijdige programma's. Neem een ​​kijkje op de prestaties GHC's op de computer Taal Benchmarks Game, en enkele opmerkingen over Haskell door de huidige organisator van de shootout, Brent Fulgham.
  • GHC werkt op verschillende platforms, waaronder Windows en de meeste varianten van Unix, en verschillende processor architecturen. Er zijn gedetailleerde instructies voor het porteren van GHC naar een nieuw platform.
  • GHC heeft uitgebreide optimalisatiemogelijkheden, met inbegrip van inter-module optimalisatie.
  • GHC compileert Haskell code ofwel met een tussenproduct C compiler (GCC), of door het genereren van native code op sommige platforms. De interactieve omgeving compileert Haskell naar bytecode, en ondersteunt de uitvoering van gemengde bytecode / gecompileerde programma's.
  • Profiling wordt ondersteund, zowel door de tijd / toewijzing en diverse soorten hoop profilering.
  • GHC geleverd met een breed scala van bibliotheken.

Wat is nieuw in deze release:

  • Standaard GHC heeft een nieuwe waarschuwing ingeschakeld, -fwarn -typed-gaten, die de compiler om te reageren met het typen van ongebonden variabelen die zij tegenkomt in de broncode veroorzaakt.
  • Het is nu mogelijk om een ​​'gesloten' soort familie te geven bij het gebruik van de TypeFamilies extensie.
  • GHC ondersteunt nu overbelasting lijst letterlijke gebruik van de nieuwe OverloadedLists extensie.
  • GHC ondersteunt nu patroon synoniemen, ingeschakeld door de -XPatternSynonyms extensie.

Wat is nieuw in versie 7.6.2:

  • Een langdurige typechecker bug die unsafeCoerce toegestaan worden geschreven is vastgesteld.
  • Er is een bug opgelost die ervoor zorgde dat GHC soms niet beseffen dat hercompilatie noodzakelijk was.
  • Als zowel -H en een -M & # X3c; grootte & # x3e; vlag worden gegeven, dan GHC zal niet langer de maximale heap-grootte overschrijden.
  • Een off-voor-een fout, die segfaults kunnen veroorzaken, in het RTS vlag parsing is vastgesteld.
  • Diverse bugs die GHC kunnen leiden tot paniek bij het opstellen van bepaalde bronbestanden zijn vastgesteld.
  • Een aantal bugs in het type het controleren van de DataKinds en PolyKinds extensies zijn vastgesteld.
  • De prestaties van gecompileerde programma's is verbeterd in sommige gevallen.

Wat is nieuw in versie 7.6.1:

  • Polymorphic soorten en data promotie zijn nu volledig geïmplementeerd en ondersteunde functies:. Paragraaf 7.8, & quot; Kind polymorfisme & quot;
  • Windows 64bit is nu een ondersteund platform.
  • Het is nu mogelijk om typefouten uit te stellen tot uitvoering met behulp van de -fdefer-type-fouten vlag:. Artikel 7.13, & quot; Het uitstel van het type fouten om runtime & quot;
  • De RTS ondersteunt nu het veranderen van het aantal mogelijkheden op runtime met Control.Concurrent.setNumCapabilities:. Sectie 4.15.2, & quot; RTS mogelijkheden voor parallelle SMP & quot;

Wat is nieuw in versie 7.4.2:.

  • hp2ps kan nu backslashes in identifiers correct
  • Fixed bug in de standaard uitvoering van popCount in Data.Bits.
  • Een potentiële conflictsituatie in Control.Concurrent.Chan is vastgesteld.
  • Een MVaR bug die impasses kunnen veroorzaken is vastgesteld.
  • Bij gebruik van -fwarn-onveilige, GHC meldt nu onveilig taaluitbreidingen.
  • De niet-threaded RTS vermijdt nu wakeups wanneer het systeem inactief is.
  • Een bug veroorzaken van een crash met een zeer kleine initiële stack grootte is vastgesteld.

Wat is nieuw in versie 7.4.1:

  • Er is een nieuwe functie Veilig Haskell (-XSafe , -XTrustworthy, -XUnsafe): Sectie 7.23, & quot; Safe Haskell & quot ;. Het ontwerp is veranderd sinds 7.2.
  • Er is een nieuwe functie soort polymorfisme (-XPolyKinds): Sectie 7.8.1, & quot; Kind polymorfisme & quot ;. Een neveneffect hiervan is dat, wanneer de toestel niet wordt ingeschakeld, onder bepaalde omstandigheden vormen nu standaard op * plaats wordt opgemaakt.
  • Er is een nieuwe functie constraint soorten (-XConstraintKinds):. Sectie 7.10, & quot; De Constraint soort & quot;
  • Het is nu mogelijk om elke vorm van aangifte bij de ghci prompt geven:. Sectie 2.4.4, & quot; type, klasse en andere verklaringen & quot;
  • De profilering en HPC-implementaties zijn samengevoegd en gereviseerd. Zichtbare veranderingen omvatten het hernoemen van het profileren van vlaggen en de kosten-centrum stapels hebben een nieuwe semantiek, die moet in de meeste gevallen leiden tot meer nuttige en intuïtieve profielen. De + RTS -XC vlag nu geeft ook een stack trace.
  • Het is nu mogelijk om compiler plugins schrijven:. Paragraaf 9.3, & quot; Compiler Plugins & quot;
  • DPH-ondersteuning is aanzienlijk verbeterd.
  • Er is nu voorlopige ondersteuning voor registerised compilatie op de ARM-platform, met behulp van LLVM.

Wat is nieuw in versie 7.0.4:

  • Een floating point regressie in 7.0.3 van invloed x86 is vastgesteld.
  • De ghci linker behandelt nu gedeeltelijk gestript object bestanden. Dit lost het laden van de GHC pakket in ghci wanneer het is ontdaan, wat vaak het geval is in de Linux-distributie pakketten.
  • Een bug die slechte resultaten van getCPUTime, getClockTime en getCurrentTime veroorzaakt is vastgesteld.
  • Een runtime-systeem bug met grote afvalbergen is vastgesteld.
  • Een runtime-systeem bug bij heap profilering is vastgesteld.
  • Een runtime-systeem bug bij heap profilering is vastgesteld.
  • Een runtime-systeem bug, die onjuiste resultaten en segfaults bij het gebruik van FFI callbacks veroorzaakt, is vastgesteld.
  • Een runtime-systeem bug, die af en toe veroorzaakt parallelle programma's op # X3c van &; & # X3c; lus & # x3e; & # x3e; bij het gebruik van -feager-blackholing, is vastgesteld.
  • Onjuiste directory permissies Bij het installeren zijn vastgesteld.
  • zijn enige verbeteringen aangebracht in de nieuwe Cabal testsuite ondersteuning.
  • Cabal is nu 1.10.2.0 (was 1.10.1.0).

Wat is nieuw in versie 7.0.2:

  • Compiler:
  • De oude [$ foo | ... |]. Syntax werkt weer, maar is deprecated
  • Er zijn significante improvments geweest om een ​​nieuw type checker.
  • ghci:
  • Laden .a bibliotheken is nu mogelijk op alle platformen. Een .o bibliotheek wordt nog steeds gebruikt worden bij voorkeur als beide bestaan. Ghci zullen niet langer te waarschuwen over het missen van .o bibliotheken.
  • Wij sluiten nu .ghci bestanden na het lezen van hen, die op Windows-machines kunnen ze worden gewijzigd terwijl ghci actief is.
  • Het is nu mogelijk om:. Uitschakelen van het ghci variabelen (args, prog, snelle, redacteur en stop)
  • Runtime-systeem:
  • DTrace nu ondersteund op Solaris, naast OS X.
  • Build-systeem:
  • OS X bouwt voort op 10.6 nu werken aan zowel 10.5 en 10.6.
  • Windows-installaties omvatten nu de libstdc ++ DLL.
  • Haddock:
  • GHC komt nu met schelvis 2.9.0.
  • GHC bevat nu hoogle databases voor de bibliotheken.

Wat is nieuw in versie 7.0.1:

  • Op POSIX-platforms, is er een nieuwe I / O manager gebaseerd op epoll / kqueue / poll, die het mogelijk maakt multithreaded I / O-code op te schalen naar een veel groter aantal (100k +) van draden.
  • GHC bevat nu een LLVM codegenerator. Voor bepaalde code, met name rekenkundige zware code, met behulp van de LLVM code generator kan een aantal leuke prestatieverbeteringen te brengen.
  • Het type checker is gereviseerd, wat betekent dat het nu in staat om interacties correct omgaan tussen het type systeem extensies.
  • De inliner is gereviseerd, die moet geven in het algemeen betere prestaties, terwijl het verminderen van onnodige code-size explosie.
  • Grote delen van de runtime-systeem zijn gereviseerd, met name de machines met betrekking tot het blokkeren en wakeup van draden en uitzondering gooien (throwTo). Meerdere gevallen van pathologische prestaties zijn vastgesteld, met name waar grote aantallen draden worden betrokken.
  • Door veranderingen in de runtime-systeem, als u Control.Parallel.Strategies van de parallel-pakket, dan kunt u upgraden naar minimaal versie 2 (bij voorkeur versie 3). De implementatie van strategieën parallel-1.x zal parallellisme te verliezen met GHC 7.0.1.

Vergelijkbare software

Cruncher
Cruncher

11 Mar 16

TurtleScript
TurtleScript

13 May 15

Weber
Weber

13 Apr 15

LiveScript
LiveScript

23 Jul 15

Andere software van ontwikkelaar Simon Marlow

Reacties op Glasgow Haskell Compiler

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!
Zoek op categorie