Gauche

Software skärmdump:
Gauche
Mjukvaruinformation:
Version: 0.9.3.3
Ladda upp dagen: 14 Apr 15
Utvecklare: Shiro.k
Licens: Gratis
Popularitet: 15

Rating: nan/5 (Total Votes: 0)

Gauche är en R5RS Scheme implementering utvecklats för att vara en praktisk manus tolk, vilket gör det möjligt för programmerare och systemadministratörer att skriva små till stora manus för sina dagliga sysslor. Snabb start, inbyggt system interface, infödda flerspråkig support är några av mina mål.
Gauche programmet körs på flera Unix-liknande plattformar.
Installation
% Gzcat Gauche-0.8.3.tgz | tar xf -
% Cd Gauche-0.8.3
% ./configure
% Make
% Make install

Funktioner :.

  • Täcker R5RS, nästan
  • R5RS makro stöds som alla definierar-syntax, låt-syntax, letrec-syntax former. Jag tror att hastigheten på makro expansion är viktig som ett manus tolk, och skrev R5RS makro expander i C, integrerad i det interna kompilatorn motorn.
  • Numeriska verksamhet stöds på fixnum, bignum, flonum och komplex.
  • Stöder följande SRFIs.
  • Modulsystem: ett enkelt modulsystem, API kompatibel med STklos
  • Objektsystemet: CLOS liknande objekt system med metaobject protokoll. Nästan API-kompatibel till STklos. Det är också liknande Guile s objektsystem.
  • multibyte string support: Strängar representeras av flerbytesträng internt. Du kan använda UTF-8, EUC-JP, Shift-JIS eller ingen flerbytekodning av configure-tiden val. Konvertering mellan infödda kodsystem och extern kodningssystem stöds av hamn objekt.
  • multibyte regexp: Reguljärt uttryck passare är medveten om flerbytesträng; Du kan använda multibytetecken i både mönster och matchade strängar.
  • Reader förlängning: bokstav regexp och röding-set, string interpole: Utökad läsare känner igen # / ... / som ett reguljärt uttryck, och # [...] som en teckenuppsättning. Praktiskt att skriva one-liners. (T.ex. (rxmatch-substring (rxmatch # / (d +) / & quot; abc123def & quot;)) == & gt; & quot; 123 & quot;)
  • Också & quot; string interpole & quot; stöds (t.ex. (display # `& quot; 1 + 2 =, (+ 1 2) n & quot;)).
  • System interface: Täcker de flesta av POSIX.1 och några andra funktioner vanliga i Unix. Se avsnitt 6.19 i referenshandboken för mer information.
  • Nätverksgränssnitt:. Har API för socket-baserade nätverksgränssnitt, inklusive IPv6 om OS stödjar idrottaren det
  • Multitråd: På vissa plattformar är multitråd stöds ovanpå pthreads. Scheme-nivå API uppfyller Srfl-18.
  • DBM gränssnitt:. Gränssnitt till DBM-liknande bibliotek (dbm, ndbm och / eller gdbm) om systemet ger dem
  • XML-tolkning:. Oleg Kiselyov s SXML verktyg ingår
  • OpenGL bindande. OpenGL bindning finns i ett separat paket
  • GTK bindande: GTK2 bindning finns i ett separat paket

Vad är nytt i den här versionen:.

  • Denna version fixar några byggfrågor

Vad är nytt i version 0.9.3:

  • Denna version lagt till stöd för lata sekvenser, en sömlös integration av lata utvärdering med listan manipulation.
  • Trådar stöds på Windows infödda build.
  • Det fanns olika buggfixar och prestandaförbättringar.

Vad är nytt i version 0.9.2:

  • Olika smärre funktionsförbättringar och buggfixar har gjorts i det här frigivning.
  • Nya funktioner inkluderar Unicode case-mapping stöd, ett verktyg för atom utförande, en bekväm benchmarking verktyg, och en offentlig API för C-kod generation rutiner.
  • Windows binära installationsprogrammet kommer nu som en MS installationsfil, genererad av Wix.

Vad är nytt i version 0.9.1:

  • Denna version lägger många nya funktioner, bland annat: effektiv skivor, en förbättrad mekanism modul med döpa och prefix, utökade formals för valfria och sökords argument, partiella fortsättning, gäng pooler, bättre stöd för Windows, JSON parsing, Blowfish lösenord hash, och mer.

Vad är nytt i version 0.9:

  • C API oförenliga förändringar: Flera inkompatibla C API ändringar införs , vilket kan orsaka viss förlängning att misslyckas med att sammanställa. Se API Förändringar i 0,9 för detaljer.
  • Nya funktioner:
  • Ny modul: rfc.zlib:. Zlib komprimering / dekomprimering
  • Ny modul: rfc.sha: SHA2 stöd. rfc.sha1 ersätts av denna modul.
  • Ny modul: util.sparse: Glesa vektorer backas upp av utrymmeseffektiv trie, och hash-tabeller förs ovanpå glesa vektorer. De är minneseffektiva än builtin hashtabeller när du vill hålla tiotals miljoner poster.
  • Autoprovide: Du behöver inte längre "ge" form för de flesta av gånger. Om (kräver & quot; X & quot;) framgångsrikt laddar X.scm och det har inte en ge form funktionen & quot; X & quot; är automatiskt tillhandahålls. Se & quot; Kräv och ge & quot; avsnitt av referensen för fler detaljer.
  • Modul gauche.test: Förbättrad testning för undantag. Nu kan du testa om en viss typ av tillstånd kastas genom att ge (test-feltillstånd-typ) som det förväntade resultatet. Se manualen posten för mer information.
  • Modul rfc.http: Nu hanterar proxy efter: proxy sökord argumentet. Du kan också enkelt komponera application / x-www-form-urlencoded och multipart / form-datameddelande för att skicka formulärparametrar. Nya rutiner:. Http-sätta och http-delete
  • Modul rfc.mime:. Utökat stöd för att komponera ett MIME-meddelande
  • Modul gauche.threads: Nya rutiner:. Gänga-stop !, tråd forts !, tråd tillstånd
  • Modul gauche.termios: På Windows inbyggt stöd, ger denna modul Windows Console API istället för POSIX termios API, eftersom emulationg POSIX termios i Windows är för mycket. En uppsättning gemensam hög nivå API som kan användas på både POSIX och Windows sätts också.
  • Modul gauche.dictionary ger en dubbelriktad karta,.
  • run-process i modul gauche.process och inbyggda sys-exec och sys-gaffel-och-exec stöd:. Katalog sökord argumentet att ange arbetskatalog avrättade processen
  • Modul file.util ger skapar-katalogen-trädet och check-katalogträd.
  • Modul gauche.net ger låg nivå socket operationer: socket-sendmsg, socket-buildmsg och socket-ioctl. Call-med-klient-uttag tar nya sökord args att ange buffertläge för uttaget.
  • Modul www.cgi:. Cgi-main växlar buffring sättet stderr till linjen, så att httpd loggen kan spela felmeddelanden rad för rad (mycket mindre skräp än tidigare)
  • Stora korrigeringar och förbättringar:
  • Fixat bygga problem på OSX 10.6 (Snow Leopard).
  • Prestanda förbättras avsevärt om flyttal aritmetik, valfritt argument hantering av inbyggda rutiner och case-lambda.
  • Nu alla blanktecken som definieras i R6RS arbetar som intertoken utrymmen i källkoden.
  • Ett varningsmeddelande skrivs ut när en tråd avslutar med ett fel och ingen annan tråd hämta sin status genom tråd gå med! innan tråden är GC-ed. Detta hjälper felsökning. Eftersom gäng gå med! är det enda sättet att veta om tråden exitted av ett fel, har du antingen ringa tråd gå med! att se till att kontrollera status, eller att skriva tråden thunk att fånga alla fel och hantera dem på rätt sätt.
  • Anonym modulen heter #F nu, i stället för (något godtyckligt valda) | # |.
  • En del förbättringar på symboler: "uninterned" symbos är statsstödda (symboler som genereras av gensym har uninterned, men aldrig dokumenterats officiellt.) Uninterned symboler skrivs som #: symbol a la CommonLisp. Uninterned symboler inte registrerad till den interna symboltabellen, så det finns ingen oroa namn krasch. Det enda sättet att hänvisa till samma uninterned symbol från mer än ett ställe i källkoden är att använda Srfl-38 notation (# n = och # n #). Du kan skapa uninterned symbol genom sträng- & gt; uninterned-symbol och kontrollera om en symbol internerad eller inte genom symbol intened ?. Det finns också ett nytt förfarande, symbol-sans-prefix.

Vad är nytt i version 0.8.14:

  • Detta är en underhållsversion, inklusive kumulativa buggfixar och många små förbättringar.
  • En del av VM har skrivits om för bättre prestanda och underhåll.

Liknande mjukvara

pyLisp-NG
pyLisp-NG

3 Jun 15

4tH compiler
4tH compiler

20 Feb 15

Tiny C Compiler
Tiny C Compiler

3 Jun 15

Kommentarer till Gauche

Kommentarer hittades inte
Kommentar
Slå på bilder!