Chicken

Software screenshot:
Chicken
Dettagli del software:
Versione: 4.9.0.1 Aggiornato
Data di caricamento: 17 Jul 15
Sviluppatore: Felix
Licenza: Libero
Popolarità: 15

Rating: nan/5 (Total Votes: 0)

Il pollo è un programma gratuito e open source per il compilatore del linguaggio di programmazione Scheme. E 'compatibile con il sistema operativo Linux / UNIX.
Pollo produce efficiente e portatile C, e supporta molti standard del linguaggio Scheme corrente (vedere l'elenco sotto per i dettagli).
Esso fornisce out-of-the-box di supporto per SRFI 0 (cond-espansione), SRFI 1 (biblioteca List), SRFI 2 (e-lasciare *), SRFI 4 (omogenei tipi di dati vettoriali numerici), SRFI 6 (porti di stringa di base ), SRFI 8 (ricezione), SRFI 9 (Tipi di record), SRFI 10 (#, forma esterna), SRFI 13 (biblioteca String), SRFI 14 (biblioteca impostato Personaggio), SRFI 16 (caso-lambda), SRFI 17 ( set generalizzata!), SRFI 18 (Multithreading supporto), SRFI 23 (errore), SRFI 25 (primitive di array multidimensionali), SRFI 26 (taglio, carino), SRFI 28 (formato), SRFI 30 (Block commenti), SRFI 37 ( argomento programma di elaborazione), SRFI 38 (Rappresentanza esterna per i dati con struttura in comune), SRFI 39 (Parametri), SRFI 40 (biblioteca Stream), SRFI 42 (comprensioni Eager), SRFI 43 (biblioteca Vector) e SRFI 55 (richiede estensione ).

Cosa c'è di nuovo in questa versione:

  • Questa versione include diversi di sicurezza e di crash importanti correzioni, dopo una recente baldoria bug-caccia dalle nostre hacker fondamentali.

Cosa c'è di nuovo nella versione 4.8.0.5:

  • Questa versione include diversi di sicurezza e di crash importanti correzioni, dopo una recente baldoria bug-caccia dalle nostre hacker fondamentali.

Cosa c'è di nuovo nella versione 4.8.0.3:

  • Questa release corregge principalmente un bug su Linux e Solaris che provoca elevato utilizzo della CPU durante l'attesa di processo secondario di I / O.

Cosa c'è di nuovo nella versione 4.8.0.2:

  • Interprete:
  • regressione Fix a, d per le procedure, che ha provocato un errore di sprintf.
  • Compiler:
  • Fix riscrittura di nuove righe (~~) in printf.
  • Durata:
  • Consenti & gt; 4GB mucchio su sistemi a 64 bit (# 974).
  • Aggiunto libreria mancante (-lrt) su Solaris per le chiamate nanosleep (# 970).
  • sistema di build:
  • Test d'uso -f invece di prova -e in identify.sh per placare Solaris.

Cosa c'è di nuovo nella versione 4.8.0.1:

  • correzioni di sicurezza:
  • Usa POSIX poll () nei sistemi in cui sono disponibili. Ciò evita un difetto di progettazione a select (); supporta più di descrittori FD_SETSIZE.
  • librerie di base:
  • fissi EINTR gestione nel processo di attesa e durante la lettura da porti di file.
  • Bugfix per irregex (# 686). Nota:. Sebbene irregex.scm ora dice la versione 0.9.2, la versione 0.8.3 è in realtà più un paio di patch backport
  • Risolto un problema in "make-percorso" che ha restituito un percorso assoluto se dato un un parente, senza un argomento directory.
  • Nei sistemi a 64 bit il "64 bit" caratteristica identificativo viene registrato.
  • Compiler:
  • Fixed vari bug nel database tipo.
  • Bugfix e miglioramento della scrutatore.
  • Nel flusso-analisi passa, tipo matching di combinazioni di "lista" / è stato reso più affidabile "lista-di" tipi.
  • espansore Sintassi:
  • Fai definisce macro-rinominato in cominciano corpi (moduli all'interno) visibile a forme successive. (# 944).

  • Sistema
  • Durata:
  • fissi codice errato nella conversione discussione straniero per "unsigned-integer64" (# 955).
  • strumenti fondamentali:
  • Il percorso di runtime linker per eseguibili compilati non è stato impostato correttamente su sistemi FreeBSD.
  • Fix install-estensione rottura quando il secondo arg contiene coppie (SRC DST).
  • sistema di build:
  • Prevenire la ricostruzione di buildversion.scm su ogni marca (1) su Windows.

Cosa c'è di nuovo nella versione 4.8.0:

  • Interfacce e funtori sono state aggiunte al sistema modulare.
  • Il sistema tipo è stato esteso.
  • Un gran numero di correzioni e pulizia generale sono state fatte nel compilatore, sistema runtime, librerie di base, e la sintassi di espansione.

Cosa c'è di nuovo nella versione 4.6.0:

  • Alcune ottimizzazioni del compilatore sono state significativamente migliorate.
  • diverse procedure di incasso e l'assegnazione procedure di elenchi, vettori e strutture generare codice più veloce.
  • Unità SRFI-4 e SRFI-18 sono stati pesantemente ripulito e ottimizzato.
  • Diversi bug sono stati risolti nella pianificazione dei thread.
  • pollo-install è stato esteso, e il suo sostegno la compilazione incrociata è stato notevolmente migliorato.
  • Il sistema di compilazione ora supporta più piattaforme e compilatori.
  • sono stati revisionati i vari script di infrastrutture in modo da riflettere la struttura della nuova infrastruttura sito Web.

Cosa c'è di nuovo nella versione 4.4.0:

  • il sistema può essere costruito con LLVM-GCC e / o "clang" (il compilatore LLVM C che non usa il frontend GNU C)
  • ha aggiunto una nuova opzione `-trunk 'a` pollo-install', che le forze di costruire e installare la versione di sviluppo di estensioni in combinazione con `-t locale '
  • ha aggiunto una nuova opzione `-deploy 'a` pollo-install', che costruisce l'estensione per l'uso in applicazioni "distribuite" (vedi sotto)
  • aggiunto opzione `-deploy 'a` csc', il driver del compilatore. Con questa opzione `esc 'in grado di costruire applicazioni in bundle completamente indipendenti e applicazioni doppio cliccabile Macintosh GUI; vedere la "distribuzione" capitolo del manuale per ulteriori informazioni
  • la directory dato alla 'opzione `pollo-install'` -prefix ora può essere un percorso relativo.
  • rimosso libreria di runtime specifico per GUI (`libchicken-gui ') da Windows costruire

  • applicazioni
  • GUI e non GUI ora utilizzano la stessa libreria di runtime
  • forme speciali di interfaccia straniera funzioni sono state sostituite con una forma interna e la sintassi per consentire la ridenominazione e shadowing di queste forme
  • il nuovo 'opzione `esc'` Privata-archivio compila eseguibili con il percorso di estensione repository impostata sulla directory da cui è stato avviato il programma
  • `csc ': deprecato il` -W' e `-Windows 'opzioni, ha aggiunto` -gui' come una sostituzione indipendente dalla piattaforma
  • `richiedere-estensione '/` utilizzo' ora accetta di importazione-specifiche
  • definiti dall'utente estensione-progettisti e `set-extension-specifier! ' sono stati rimossi
  • `delete-file [*] ',` rinominare-file', 'creare directory', `di copia dei file ',` file-move', `delete-directory 'e` cambio-directory' restituire loro argomento / filename destinazione sul successo
  • aggiunto il procedimento mancante `condizione-nome-variabile 'alla SRFI-18 unità libreria (Grazie a Joerg Wittenberger)
  • il `glob? ' Funzione dall'unità `regex 'è stato deprecato
  • ha aggiunto la procedura di `
  • scansione-input-lines 'ai` utils' unità biblioteca
  • ha aggiunto una nuova opzione di runtime `-: g ', che consente l'uscita di debug GC
  • bonifica dei simboli utilizzati in modalità "simbolo-gc" (`-: w ') ora avviene solo per i simboli con una struttura in lista vuota
  • su Windows caricamento di codice compilato con [non] librerie di runtime GUI avrà esito negativo e produrre un messaggio di errore quando il file eseguibile di carico è collegato con un sistema di runtime diverso
  • su Windows, librerie GUI non erano collegate correttamente da `esc '
  • Unità POSIX: setter aggiunto per `file-modifica-time '
  • il banner mostra la branchname del costruire, a meno che non si tratta di "master"
  • l'opzione 'a `pollo-install'` -no-installazione viene ignorata quando si costruisce / installazione dipendenze
  • `pollo-disinstallare 'prende un glob invece di un'espressione regolare come argomento

  • Funzioni
  • Rinomina e confrontare per basso livello macro-definizioni accettano ora arbitraria s-espressioni e rinomina / li confronta ricorsivamente
  • `Number & gt; stringa 'gestisce negativi numeri con basi diverse da 10 correttamente (grazie a Peter Danenberg)
  • rimosso deprecato `setup-install-flag 'e` setup-verbose-flag' dal modulo `setup-api '
  • ha aggiunto una nuova opzione `-repository 'a` pollo-install' (Grazie a Christian Kellermann)
  • rimosso programma stub `pollo-setup '
  • fix a `csc 'utilizzare la libreria corretta al momento della fissazione percorsi di carico dinamico (Grazie a Derrell Piper)
  • rimosso documentazione HTML dalla distribuzione (verrà ora installato il manuale di wiki)
  • bug in `riesportazione 'che ha causato la sintassi non essere riesportato correttamente
  • assegnazioni precedenti a una variabile di primo livello che sono separati da libere espressioni effetti collaterali vengono rimossi
  • versione per Windows fissa del `trovare-files '(grazie a Jim Ursetto)
  • documentazione per le estensioni non viene installato automaticamente da `pollo-install 'più
  • cambiato versione binaria da "4" a "5", perché le nuove librerie di runtime non sono compatibili a livello binario con le versioni precedenti; questo significa che tutte le uova devono essere reinstallato e programmi esistenti essere ricompilato!
  • aggiunto passaggio unboxing al compilatore che si traduce in miglioramenti delle prestazioni parzialmente drammatiche per il codice-intensive in virgola mobile non sicuri; unboxing è abilitato su livelli di ottimizzazione 4 e 5
  • rimosso ottimizzazione resto-discussione-vettore come potrebbe entrare in conflitto con inlining (grazie a Sven Hartrumpf)
  • ribattezzato `puntatore offset 'a` pointer +' e deprecato `puntatore-offset '
  • assegnazioni toplevel che non hanno altri effetti possono essere eliminati se si può dimostrare che il valore non viene utilizzato (il compilatore genererà un avvertimento in questo caso)
  • 'opzione `pollo' rimosso deprecato` -quiet programma
  • rimosso deprecato tempo-run-macro dichiarazione `'
  • rimosso deprecato `-v2 'e` -v3' opzioni nel programma `esc '
  • rimosso deprecato `lista-delle 'funzioni (è disponibile esclusivamente come` lista-dei?' ora)
  • rimosso `stat deprecato -... 'funzioni in un'unità libreria posix
  • rimosso deprecato `per-ogni-line 'e` per-ogni-argv linea «procedure in utils unità libreria
  • aggiunto `fpinteger? ' e `fpabs '
  • deprecato `definire-sintassi compilato '
  • aggiunto nuove primitive in virgola mobile `fpsin ',` fpcos', `fptan ',` fpasin', `fpacos ',` fpatan', `fpatan2 ',` fpexp', `fplog ',` fpexpt' e ` fpsqrt '
  • pesante pulizia di galleggiare funzioni matematiche che offre prestazioni molto migliori, soprattutto per il codice compilato in modalità non sicura
  • chiama `assert 'con un singolo argomento mostra l'espressione testato su fallimento
  • varie correzioni di bug e per la bonifica

Cosa c'è di nuovo nella versione 4.2.0:

  • pollo-installazione è stato modificato per risolvere dipendenze delle librerie in ordine topologico, e per cercare server alternativi se un server uovo risponde con un errore.
  • Lo stack eseguibile in moduli di codice di assemblaggio è disabilitata di default.
  • Molti bug sono stati corretti nella build MinGW.
  • Diverse nuove opzioni sono state aggiunte al compilatore e interprete.

Cosa c'è di nuovo nella versione 3.4.0:

  • Il compilatore supporta ora procedura selettiva di profilazione.
  • Tutte le procedure relative ai file sono stati spostati in nuovi file di unità.
  • Ci sono state numerose correzioni al Cygwin e MinGW costruisce.
  • PCRE in bundle con il pollo è stato aggiornato.

Programmi simili

gears-coffeescript
gears-coffeescript

20 Feb 15

IGCC
IGCC

14 Apr 15

STklos
STklos

15 Apr 15

Altri software di sviluppo Felix

Commenti a Chicken

I commenti non trovato
Aggiungi commento
Accendere le immagini!