Gauche

Tela Software:
Gauche
Detalhes de Software:
Versão: 0.9.3.3
Data de upload: 14 Apr 15
Revelador: Shiro.k
Licença: Livre
Popularidade: 15

Rating: nan/5 (Total Votes: 0)

Gauche é uma implementação Scheme R5RS desenvolvido para ser um intérprete certificado acessível, que permite aos programadores e administradores de sistema para escrever pequenas a grandes roteiros para suas tarefas diárias. Inicialização rápida, built-in interface do sistema, suporte multilíngue nativo são alguns dos meus objetivos.
Aplicação Gauche é executado em várias plataformas Unix-like.
Instalação
% Gzcat Gauche-0.8.3.tgz | tar xf -
% Cd Gauche-0.8.3
% ./configure
% Make
% Make install

Características :.

  • Covers R5RS, quase
  • R5RS macro é suportado como todos definir-sintaxe, deixe-sintaxe, formas letrec-sintaxe. Eu acho que a velocidade de expansão de macro é importante como um interpretador de script, e escreveu R5RS macro expansor em C, integrado no motor interno do compilador.
  • operações numéricas são suportados em fixnum, bignum, flonum e complexo.
  • Suporta os seguintes SRFIs.
  • sistema Módulo: um sistema de módulos simples, API compatível para STklos
  • sistema Objeto: CLOS-like sistema de objetos com o protocolo de meta-objeto. Quase API compatível para STklos. Ele também é semelhante ao sistema objeto Guile 's.
  • Suporte multibyte: Cordas são representados por string de vários bytes internamente. Você pode usar UTF-8, EUC-JP, Shift-JIS ou nenhuma codificação de vários bytes por escolha em tempo configure. Conversão entre o sistema de codificação nativa e sistema de codificação externo é apoiado por objetos de porta.
  • Multibyte regexp: Regular expressão de correspondência está ciente da cadeia de vários bytes; você pode usar caracteres de vários bytes, tanto em padrões e strings combinadas.
  • Leitor extensão: regexp literal e carbonizar-set, interpolação string: leitor estendido reconhece # / ... / como uma expressão regular, e # [...] como um conjunto de caracteres. Handy para escrever one-liners. (Por exemplo, (rxmatch-substring (rxmatch # / (d +) / & quot; abc123def & quot;)) == & gt; & quot; 123 & quot;)
  • Também & quot; seqüência de interpolação & quot; é suportada (por exemplo, (visualização # `& quot; 1 + 2 =, (+ 1 2) n & quot;)).

  • Interface
  • Sistema: cobre a maior parte POSIX.1 e algumas outras características comuns em sistemas Unix. Consulte a seção 6.19 do Manual de Referência para mais detalhes.
  • interface de rede:. Tem API para a interface de rede baseada em socket, incluindo IPv6 se o OS suppots it
  • Multithreading: Em algumas plataformas, multithreading é apoiado em cima de pthreads. Esquema de nível API conforma SRFI-18.
  • interface de DBM.: Interface para bibliotecas DBM-like (dbm, ndbm e / ou gdbm) se o sistema proporciona-lhes
  • parsing de XML:. Ferramentas SXML de Oleg Kiselyov estão incluídos
  • ligação OpenGL:. Ligação OpenGL é fornecido em um pacote separado
  • GTK obrigatório: GTK2 ligação é fornecida em um pacote separado

O que é novo nesta versão:.

  • Esta versão corrige alguns problemas de compilação

O que é novo na versão 0.9.3:

  • Esta versão adicionou suporte para sequências de preguiçosos, uma perfeita integração de avaliação preguiçosa com a manipulação lista.
  • Threads são suportadas na construção nativo do Windows.
  • Havia várias correções de bugs e melhorias de desempenho.

O que é novo na versão 0.9.2:

  • Vários aprimoramentos de recursos menores e correções foram feitas nessa release.
  • Os novos recursos incluem suporte a Unicode caso de mapeamento, um utilitário para execução atômica, um utilitário de benchmarking conveniente, e uma API pública para rotinas de geração de código C.
  • O instalador binário do Windows agora vem como um arquivo instalador MS, gerado por Wix.

O que é novo na versão 0.9.1:

  • Esta versão adiciona muitas novas funcionalidades, incluindo: eficiente registros, um mecanismo módulo reforçada com renomeação e prefixação, formals estendidas para argumentos opcionais e palavra-chave, continuações parciais, conjuntos de encadeamentos, melhor suporte do Windows, JSON parsing, hashing senha Blowfish, e muito mais.

O que é novo na versão 0.9:

  • C API mudanças incompatíveis: Várias alterações C API incompatíveis são introduzidos , o que pode causar alguma extensão a falha na compilação. Veja mudanças na API em 0,9 para os detalhes.
  • Novos recursos:
  • Novo módulo: rfc.zlib:. Zlib compressão / descompressão
  • Novo módulo: rfc.sha: apoio SHA2. rfc.sha1 é substituída por este módulo.
  • Novo módulo: util.sparse: vetores esparsos apoiada por espaço eficiente trie, e tabelas de hash implementado em cima de vetores esparsos. Eles são a memória eficiente do que as tabelas de hash embutidas quando você quer manter dezenas de milhões de entradas.
  • Autoprovide: Você não precisa mais "fornecer" forma para a maioria das vezes. Se (exigir & quot; X & quot;) carregado com êxito X.scm e ele não tem uma forma de fornecer, o recurso & quot; X & quot; é fornecida automaticamente. Veja o & quot; Exigir e fornecer & quot; seção da referência para mais detalhes.
  • Módulo gauche.test: teste melhorado para exceções. Agora você pode testar se um tipo específico de condição é acionada, dando (test-error-tipo de condição) como o resultado esperado. Veja a entrada manual para mais detalhes.
  • Módulo rfc.http: Agora lida com procuração por: argumento palavra-chave proxy. Você também pode compor facilmente application / x-www-form-urlencoded e mensagem multipart / form-data para enviar parâmetros de formulário. Novos procedimentos:. Http-posto e http-delete
  • Módulo rfc.mime:. Adicionado suporte de compor uma mensagem MIME
  • gauche.threads módulo: Novos procedimentos:. Fio-stop !, thread-cont !, thread-estado
  • gauche.termios módulo: On suporte nativo do Windows, este módulo fornece o Windows Console API em vez de API POSIX termios, desde emulationg termios POSIX no Windows é demais. Um conjunto de comum API de alto nível que pode ser usado tanto em POSIX e Windows também são adicionados.
  • Módulo gauche.dictionary fornece um mapa bidirecional,.
  • Execute-processo no módulo gauche.process e embutidas sys-exec e sys-garfo-e-exec apoio:. Argumento palavra-chave diretório para especificar o diretório de trabalho do processo executado
  • Módulo file.util fornece criar-directory-tree e check-diretório de árvore.
  • Módulo gauche.net fornece operações de socket de baixo nível: socket-SENDMSG, socket-buildmsg, e socket-ioctl. Chame-com-client-socket leva novos argumentos de palavra-chave para especificar o modo de buffer para o socket.
  • Módulo www.cgi:. Cgi-principal muda o modo de buffer de stderr para a linha, de modo que o registo de httpd pode gravar mensagens de erro de linha por linha (muito menos confusão do que antes)
  • Principais correções e melhorias:
  • problema de compilação fixo no OSX 10.6 (Snow Leopard).
  • O desempenho é muito melhor em aritmética de ponto número, manuseio argumento opcional de procedimentos embutidas, e caso-lambda flutuante.
  • Agora todos os caracteres em branco definidas no R6RS funciona como espaços intertoken no código-fonte.
  • A mensagem de alerta é mostrada quando um segmento sai com um erro e nenhuma outra thread recuperar seu status por thread-se juntar! antes que o segmento é GC-ed. Isso ajuda a solução de problemas. Desde thread-se juntar! é a única maneira de saber se o segmento exitted por um erro, você tem quer chamar thread-se juntar! para certificar-se de verificar o status, ou para escrever a conversão fio para pegar todos os erros e tratá-los adequadamente.
  • Anonymous nome do módulo é #f agora, em vez de (um tanto arbitrariamente escolhido) | # |.
  • Alguns acessórios em símbolos: 'uninterned' SymbOS são oficialmente suportados (símbolos gerados por Gensym foram uninterned, mas nunca foi documentado oficialmente.) Uninterned símbolos são escritos como #: símbolo a la CommonLisp. Símbolos Uninterned não se encontram registados na tabela de símbolos, por isso não há nenhuma preocupação sobre o nome acidente. A única maneira de se referir ao mesmo símbolo uninterned de mais de um lugar no código fonte é usar SRFI-38 notação (# n = e # n #). Você pode criar símbolo uninterned por string- & gt;-símbolo uninterned e verificar se um símbolo é internado ou não por intened-símbolo ?. Há também um novo procedimento, símbolo-sans-prefix.

O que é novo na versão 0.8.14:

  • Esta é uma versão de manutenção, incluindo correções de erros cumulativos e numerosas pequenas melhorias.
  • Parte da VM foi reescrito para um melhor desempenho e facilidade de manutenção.

Programas semelhantes

PL/1 for GCC
PL/1 for GCC

2 Jun 15

Magic C++
Magic C++

3 Jun 15

Cake
Cake

14 Apr 15

Seed7
Seed7

22 Jun 18

Comentário para Gauche

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