Gauche programcılar ve sistem yöneticileri günlük işleri için büyük komut küçük yazmak için olanak sağlayan kullanışlı bir komut yorumlayıcısı olmak için geliştirilmiş bir R5RS Programı uygulamasıdır. Hızlı başlatma, yerleşik sistem arayüzü, yerli dilli destek benim gol bazılarıdır.
Patavatsız uygulama birkaç Unix benzeri platformlarda çalışır.
Kurulum
% Gzcat Gauche-0.8.3.tgz | tar xf -
% CD Germain-0.8.3
% ./configure
% Make
% Make install
Özellikler :.
- R5RS Kapaklar, neredeyse
- R5RS makro tanımlamak-sözdizimi, let-sözdizimi, letrec-sözdizimi formları gibi tüm desteklenmektedir. Ben makro genişleme hızı komut tercüman olarak önemli olduğunu düşünüyorum, ve derleyici iç motor entegre C R5RS makro genişletici yazdı.
- Sayısal işlemler fixnum, bignum, flonum ve karmaşık desteklenir.
- Aşağıdaki SRFIs destekler.
- Modül sistemi: Basit bir modül sistemi, STklos uyumlu API
- Nesne sistemi: metaobject protokolü ile CLOS benzeri bir nesne sistemi. STklos uyumlu Neredeyse API. Ayrıca Guile 'ın nesne sistemine benzer.
- Multibyte dize desteği: Strings dahili baytlı dize ile temsil edilmektedir. Sen UTF-8 kullanabilirsiniz, EUC-JP, Shift-JIS veya yapılandırma zamanı seçimi ile hiçbir çokbaytlı kodlama. Yerli kodlama sistemi ve harici kodlama sistemi arasındaki dönüşüm noktası nesneler tarafından desteklenmektedir.
- Multibyte regexp: Düzenli ifade matcher baytlı dize farkındadır; hem desen ve Bahisler dizeleri çokbaytlı karakterleri kullanabilirsiniz.
- Okuyucu uzantısı: literal regexp ve karakter kümesi, dize enterpolasyon: Genişletilmiş okuyucu tanır # / ... / bir karakter kümesi olarak bir düzenli ifade ve # [...] olarak. Handy tek gömlekleri yazmak için. (Örn (rxmatch-alt dize (rxmatch # / (d +) / & quot; abc123def & quot;)) == & gt; & quot; 123 & quot;)
- Ayrıca & quot; dize enterpolasyon & quot; (; 1 + 2 =, (2 + 1) n & quot; örneğin (ekran # `& quot)) desteklenir.
- Sistem arayüzü: POSIX.1'e ve Unix'lerdeki ortak diğer bazı özelliklerin çoğunu kapsar. Ayrıntılar için başvuru kılavuzunda bölümüne 6.19 bakınız.
- Ağ arabirimi:. Işletim sistemi tarafından suppots eğer IPv6 dahil, soket tabanlı ağ arabirimi için API Has
- Multithreading: Bazı platformlarda, çoklu Pthreads üstünde desteklenir. Şema düzeyinde API uygundur srfi-18.
- DBM arayüzü:. DBM-benzeri kütüphaneler (dbm, NDBM ve / veya GDBM) sistem sağlamaktadır eğer Arayüz
- XML ayrıştırma:. Oleg KISELYOV en SXML araçları dahil
- OpenGL bağlayıcı:. OpenGL ayrı pakette sağlanan bağlama
- GTK bağlayıcı: GTK2 ayrı bir pakette sunulan bağlama
Bu sürümdeki yeni nedir:.
- Bu sürüm bir kaç yapı sorunları giderir
sürüm 0.9.3 Yeni nedir:
tembel dizileri için
- Bu sürüm ekledi destek, sorunsuz Liste manipülasyon ile tembel değerlendirme entegrasyonu.
- Konu Windows yerel yapı desteklenir.
- vardı onarımları ve performans iyileştirmeleri çeşitli.
nedir sürüm 0.9.2 Yeni:
- Çeşitli küçük özellik geliştirmeleri ve onarımları bu yapılmıştır serbest.
- Yeni özellikler Unicode vaka-haritalama desteği, atom yürütülmesi için bir yardımcı program, uygun bir kıyaslama programı, ve C kod üretimi rutinleri için bir kamu API vardır.
- Windows ikili Yükleyici şimdi WiX tarafından oluşturulan bir MS yükleyici dosyası olarak geliyor.
sürüm 0.9.1 Yeni nedir:
- Bu sürüm de dahil olmak üzere birçok yeni özellik ekliyor: verimli kayıtları, yeniden adlandırma ve prefixing ile gelişmiş modül mekanizması, isteğe bağlı ve anahtar kelime argümanlar, kısmi devamından, iplik havuzları, daha iyi Windows desteği, JSON ayrıştırma, Blowfish şifre sağlama ve daha fazlası. uzatıldı formals
nedir sürüm 0.9 Yeni:
- C API uyumsuz değişiklikler: Çeşitli uyumsuz C API değişiklikleri tanıtıldı neden olabilecek bazı uzatma derlemek için başarısız. Ayrıntılar için 0.9 API Değişiklikleri bakınız.
- Yeni özellikler:
- Yeni modülü: rfc.zlib:. Zlib sıkıştırma / açma
- Yeni modülü: rfc.sha: SHA2 desteği. rfc.sha1 Bu modül yerini almaktadır.
- Yeni modülü: util.sparse: Seyrek vektörler uzay verimli tray tarafından desteklenen ve karma masaları seyrek vektörlerin üstünde uygulanır. Eğer girdilerin on milyonlarca tutmak istedikleri zaman bellek yerleşik karma tabloları daha verimli.
- Autoprovide: Artık çoğu kez için formu 'sağlamak' gerekir. Eğer (gerektirir ifadesi de X ve quot) başarılı bir şekilde X.scm yükler ve bir sağlamak formu, özelliği & quot yoktur, X quot; otomatik sağlanmaz. Iste sağlamak ve & quot; & quot bakın; Daha fazla bilgi için referans bölümüne.
- Modül gauche.test: istisnalar için Geliştirilmiş test. Şimdi durumun belirli bir tip beklenen sonucu (test hata koşulu tipi) vererek atılır olmadığını test edebilirsiniz. Daha fazla bilgi için manuel giriş bakın.
- Modül rfc.http: Proxy anahtar kelime argüman: Şimdi proxy işler. Ayrıca kolayca application / x-www-form-urlencoded oluşturabilirsiniz formu parametreleri göndermek ve multipart / form-data mesajı. Yeni prosedürler:. Http-koyun ve http-silme
- Modül rfc.mime:. MIME mesajı oluştururken desteği eklendi
- Modül gauche.threads: Yeni prosedürler:. Parçacığı durdurma !, iplik-iplik devam !,-devlet
- Modül gauche.termios: Windows POSIX termios emulationg çok olduğundan, Windows doğal destek olarak, bu modül, Windows Console API yerine POSIX termios API sağlar. POSIX hem de Windows üzerinde kullanılabilir ortak üst düzey API seti de eklenir.
- Modül gauche.dictionary, çift yönlü bir harita sağlar.
- modül gauche.process olarak, süreç çalıştırmak ve yerleşik exec sys-ve sys-çatal-ve-exec destek:. Yürütülen sürecin çalışma dizinini belirtmek için dizin anahtar kelime argümanı
- Modül file.util oluşturmak dizin ağacı ve check-dizin-ağacı sağlar.
- Modül gauche.net düşük seviyeli soket işlemleri sağlar. Çağrı-ile-client-soket için tamponlama modunu belirtmek için yeni anahtar kelime bağımsız değişken alır.
- Modül www.cgi:. Httpd günlüğü (daha önce çok daha az yığılmayı) hata iletileri line-by-line kaydedebilirsiniz böylece cgi-ana, hat stderr tamponlama modunu anahtarları
- Önemli düzeltmeler ve geliştirmeler:
- Sabit inşa problemi
- Performans ölçüde nokta sayı işlemlerinde, yerleşik prosedürlerin isteğe bağlı argüman işleme, ve vaka-lambda kayan artırıldı.
- Şimdi tüm boşluk karakterleri kaynak kodu olarak intertoken boşluk çalışır.
- Bir uyarı mesajı bir iplik iplik katılmak tarafından statüsünü almak bir hata ve başka hiçbir iplikle çıktığında yazdırılır! parçacığı önce GC-ed. Bu sorun giderme yardımcı olur. Beri iplik katılın! bir hata exitted iplik, ya sahip iplik katılmak aramak olmadığını bilmek için tek yoldur! durumunu kontrol etmek veya tüm hataları yakalamak ve bunları düzgün işlemek için iş parçacığı thunk yazmak için emin olun.
- olan | # |.
- semboller üzerinde bazı geliştirmeler: 'uninterned' Sembolü resmen desteklenmektedir (gensym tarafından oluşturulan semboller uninterned edilmiş, ama asla resmen belgelenmiştir.) Uninterned semboller # olarak yazılır: sembolü a la CommonLisp. Uninterned semboller iç sembol tablosuna kayıtlı olmayan, bu nedenle adı kazası hakkında hiçbir endişe yoktur. kaynak kodu birden fazla yerden aynı uninterned ifade etmek tek yolu srfi-38 gösterim (# n = ve # n #) kullanmaktır. Sen Şerit- & gt tarafından uninterned sembol oluşturabilir, uninterned-sembolü ve simgesi staj veya sembol intened tarafından olup olmadığını kontrol edin ?. Yeni bir prosedür, sembol-sans-öneki de bulunmaktadır.
Soket-sendmsg, soket-buildmsg ve soket-ioctl:
OSX 10.6 (Snow Leopard). Üzerinde
R6RS tanımlanan
Anonim modül adı #f yerine (biraz keyfi seçilmiş) olarak, şimdi
Hangi sürümü 0.8.14 Yeni:
- Bu toplu onarımları içeren bir bakım sürümü, ve Çok sayıda küçük geliştirmeler.
- VM Bölüm daha iyi performans ve sürdürülebilirlik için yeniden yazılmıştır.
Yorum Bulunamadı