Glasgow Haskell Compiler

Tela Software:
Glasgow Haskell Compiler
Detalhes de Software:
Versão: 7.8.4
Data de upload: 1 Mar 15
Revelador: Simon Marlow
Licença: Livre
Popularidade: 184

Rating: 2.7/5 (Total Votes: 3)

Atualmente ele suporta toda a linguagem Haskell 98 e uma grande variedade de extensões de linguagem

Características :.

  • GHC tem particularmente bom suporte à concorrência e paralelismo, incluindo suporte para Software Transactional Memory (STM).
  • GHC gera código rápido, especialmente para programas concorrentes. Dê uma olhada no desempenho do GHC no computador Language Benchmarks jogo, e alguns comentários sobre Haskell pelo atual organizador do tiroteio, Brent Fulgham.
  • GHC funciona em várias plataformas, incluindo Windows e mais variedades de Unix, e várias arquiteturas de processadores diferentes. Há instruções detalhadas para portar GHC para uma nova plataforma.
  • GHC tem recursos de otimização extensas, incluindo a optimização inter-módulo.
  • GHC compila código Haskell ou usando um compilador C intermediário (GCC), ou através da geração de código nativo em algumas plataformas. O ambiente interativo compila Haskell para bytecode, e suporta a execução de bytecode mista / programas compilados.
  • Profiling é apoiada, tanto pelo tempo / alocação e vários tipos de heap de perfis.
  • GHC vem com uma ampla gama de bibliotecas.

O que é novo nesta versão:

  • Por padrão, o GHC tem um novo alerta ativado, -fwarn -typed-buracos, o que provoca o compilador para responder com os tipos de variáveis ​​não ligados que encontra no código-fonte.
  • Agora é possível declarar um tipo de família "fechada" ao usar a extensão TypeFamilies.
  • GHC agora suporta a sobrecarga literais lista utilizando a nova extensão OverloadedLists.
  • GHC agora suporta padrão sinónimos, habilitado pela extensão -XPatternSynonyms.

O que é novo na versão 7.6.2:

  • A longa data bug typechecker que permitiu a unsafeCoerce ser escrito foi corrigido.
  • Um bug foi corrigido que causou GHC para não perceber que, por vezes, a recompilação foi necessário.
  • Se ambos -H e um -M & # X3C; tamanho & # x3e; flag é dado, então GHC deixará ultrapassar o tamanho máximo de heap.
  • Um erro off-por-um, o que poderia causar segfaults, na bandeira parsing RTS foi corrigido.
  • Vários bugs que poderiam causar GHC a entrar em pânico quando compilar alguns arquivos fonte foram corrigidos.
  • Alguns bugs na verificação de tipo os DataKinds e PolyKinds extensões foram corrigidos.
  • Desempenho de programas compilados foi melhorada em alguns casos.

O que é novo na versão 7.6.1:

  • tipos polimórficos e promoção de dados estão agora totalmente implementado e recursos suportados:. Seção 7.8, & quot; & quot polimorfismo espécie;
  • Windows de 64 bits é agora uma plataforma suportada.
  • Agora é possível adiar erros de tipo até tempo de execução usando a bandeira -fdefer-erros de recepção:. Secção 7.13, & quot; Adiando erros de tipo de tempo de execução & quot;
  • O RTS agora suporta a alteração do número de recursos em tempo de execução com Control.Concurrent.setNumCapabilities:. Seção 4.15.2, & quot; opções RTS para SMP paralelismo & quot;

O que é novo na versão 7.4.2:.

  • hp2ps agora pode lidar com barras invertidas em identificadores corretamente
  • Corrigido o erro na implementação padrão de popcount em Data.Bits.
  • A condição de corrida potencial em Control.Concurrent.Chan foi corrigido.
  • Um bug MVar o que poderia causar bloqueios foi corrigido.
  • Ao usar -fwarn-inseguro, GHC agora relata extensões de linguagem inseguras.
  • Os RTS não roscados agora evita wakeups quando o sistema estiver ocioso.
  • Um bug causando um acidente com um pequeno tamanho da pilha inicial foi corrigido.

O que é novo na versão 7.4.1:

  • Não é um novo recurso de segurança Haskell (-XSafe , -XTrustworthy, -XUnsafe): Secção 7.23, & quot; Seguro Haskell & quot ;. O design mudou desde 7.2.
  • Não é um novo recurso polimorfismo espécie (-XPolyKinds): Seção 7.8.1, & quot; & quot polimorfismo tipo ;. Um efeito colateral disso é que, quando a extensão não está habilitado, em certas circunstâncias, os tipos são agora padronizados para * em vez de ser inferida.
  • Há um novo tipo de restrição recurso (-XConstraintKinds):. Secção 7.10, & quot; O tipo de restrição & quot;
  • Agora é possível dar qualquer tipo de declaração no prompt ghci:. Ponto 2.4.4, & quot; Tipo, classe e outras declarações & quot;
  • O perfil e HPC implementações foram fundidas e revistos. Mudanças visíveis incluem renomeação de perfilar bandeiras e as pilhas de centro-cost tem uma nova semântica, que deve, na maioria dos casos resultam em perfis mais úteis e intuitivas. A bandeira -xc + RTS agora também dá um rastreamento de pilha.
  • Agora é possível escrever plugins do compilador:. Seção 9.3, & quot; Compiler Plugins & quot;
  • apoio DPH foi significativamente melhorada.
  • Agora há suporte preliminar para a compilação registerised na plataforma ARM, usando LLVM.

O que é novo na versão 7.0.4: x86

  • A regressão de ponto flutuante em 7.0.3 afetando foi corrigido.
  • O vinculador GHCi agora lida com arquivos objeto parcialmente removidos. Isso corrige o carregamento do pacote GHC em ghci quando ele foi despojado, que é frequentemente o caso em pacotes de distribuição do Linux.
  • Um bug que causou maus resultados de getCPUTime, getClockTime e GetCurrentTime foi corrigido.
  • Um bug sistema de execução com grandes montões foi corrigido.
  • Um bug sistema de execução quando heap profiling foi corrigido.
  • Um bug sistema de execução quando heap profiling foi corrigido.
  • Um bug sistema de execução, o que causou resultados incorretos e segfaults ao usar callbacks FFI, foi corrigido.
  • Um bug sistema de execução, que ocasionalmente causou programas paralelos para & # X3C; & # X3C; laço & # x3e; & # x3e; quando se utiliza -feager-blackholing, foi corrigido.
  • permissões de diretório incorretas ao instalar foram corrigidos.
  • Algumas melhorias foram feitas para o novo suporte testsuite Cabal.
  • Cabal é agora 1.10.2.0 (era 1.10.1.0).

O que é novo na versão 7.0.2:

  • Compiler:
  • O velho [$ foo | ... |]. Sintaxe funciona de novo, mas está obsoleto
  • Houve improvments significativas para o novo verificador de tipos.
  • GHCi:
  • Carregando .a bibliotecas é agora possível em todas as plataformas. Uma biblioteca .o ainda será usado por preferência se ambos existem. GHCi deixará de alertar sobre a falta de .o bibliotecas.
  • Agora feche .ghci arquivos depois de lê-los, o que em máquinas Windows permite que eles sejam alterados enquanto GHCi está em execução.
  • Agora é possível:. Unset as variáveis ​​ghci (args, prog, pronto, editor e stop)

  • Sistema de
  • Duração:
  • DTrace agora é suportado no Solaris, além de OS X.
  • sistema de compilação:
  • OS X baseia-se em 10,6 agora trabalhar em ambos 10.5 e 10.6.
  • instalações do Windows incluem agora o libstdc ++ DLL.
  • Haddock:
  • GHC agora vem com haddock 2.9.0.
  • GHC agora inclui bancos de dados Hoogle para as bibliotecas.

O que é novo na versão 7.0.1:

  • Em plataformas POSIX, há um novo I / O gerente baseado em epoll / kqueue / poll, que permite multithreaded código de I / O para se adaptar a um número muito maior (100k +) de threads.
  • GHC agora inclui um gerador de código LLVM. Por certo código, código pesado particularmente aritmética, usando o gerador de código LLVM pode trazer algumas melhorias de desempenho agradáveis.
  • O verificador de tipo foi reformulado, o que significa que agora é capaz de lidar corretamente com as interações entre as extensões do sistema tipo.
  • O inliner foi revisada, que deve, em geral, dar um melhor desempenho, enquanto reduz desnecessária explosão código-size.
  • Grande parte do sistema de execução foram revisados, em particular a maquinaria relacionada com o bloqueio e ativação de linhas e jogando exceção (throwTo). Vários exemplos de desempenho patológico foram corrigidos, especialmente onde um grande número de threads estão envolvidos.
  • Devido a mudanças no sistema de tempo de execução, se você estiver usando Control.Parallel.Strategies do pacote paralelo, faça o upgrade para, pelo menos, a versão 2 (preferencialmente na versão 3). A implementação de estratégias em paralelo-1.x perderá paralelismo com GHC 7.0.1.

Programas semelhantes

RubyCocoa
RubyCocoa

14 Apr 15

Middleman
Middleman

9 Feb 16

Django Gears
Django Gears

12 May 15

Rubinius
Rubinius

10 Feb 16

Outro software de desenvolvedor Simon Marlow

Comentário para Glasgow Haskell Compiler

Comentários não encontrado
Adicionar comentário
Ligue imagens!
Busca por categoria