GNU Guile

Petos

Tiedot
Kehittäjä GNU-projekti
Ensimmäinen versio 1997
Viimeinen versio 2.2.7 (7. maaliskuuta 2020)
3.0.5 (7. tammikuuta 2021)
Tallettaa git.savannah.gnu.org/cgit/guile.git
Kirjoitettu VS
Käyttöliittymä Hoitajat
Käyttöjärjestelmä GNU / Linux , BSD ( d ) ja Microsoft Windows
Ympäristö GNU , GNU / Linux
Tyyppi Ohjelmointikieli
Lisenssi GNU LGPL
Dokumentointi www.gnu.org/software/guile/manual
Verkkosivusto (en) Virallinen sivusto

Guile ( GNU Ubiquitous Intelligent Language for Extensions ) on tulkki Scheme- ohjelmointikielestä, joka on kehitetty osana GNU-projektia toimimaan virallisena laajennuskielenä GNU- käyttöjärjestelmälle .

Historiallinen

Vuonna 1994 Richard Stallman esitteli ajatuksensa laajennuskielen suunnittelusta GNU-projektille. Yksi tärkeimmistä ajatuksista oli, että käyttäjillä olisi oltava valinta ohjelmointikieleksi. Pääkieli, jota pidettiin, oli järjestelmän muunnos, mutta muita kieliä voitiin tukea kääntäjien kautta.

Tom Lord alkoi heti työskennellä projektin parissa. Vuonna 1995 julkaistiin kaksi ensimmäistä työversiota. Yritys Cygnus Support lisäsi monia ominaisuuksia ja otti omat versiot Cygnus Guile r0.3 ja R0.4. GNU-projektin ensimmäinen virallinen versio ilmestyi vuonna 1997.

Hanketta ylläpitää erityisesti Andy Wingo .

Tekniset ominaisuudet

Kumousta voidaan käyttää klassisena Scheme-tulkkina. Mutta se on suunniteltu alusta alkaen integroitavaksi laajennuskielenä C-kielellä kirjoitettuihin ohjelmiin .

Guile tukee monia Scheme-kielen laajennuksia sekä erilaisia ​​järjestelmämoduuleja, verkko-ohjelmointia ja monisäikeisyyttä .

Se toimii joko tulkki tai kaaviossa kääntäjä tavukoodiksi on virtuaalikoneessa .

Kokoamisinfrastruktuuri ja virtuaalikone

Guile 2,0 kokoaa järjestelmän koodin osaksi bytecode , joka tulkitaan sitten virtuaalinen kone. Tämä parantaa suorituskykyä huomattavasti Guilen vanhempiin versioihin verrattuna.

Lähdekoodi käännetään oletuksena automaattisesti, kun se on löydetty, ilman manuaalista puuttumista. Guile-tools build -komento tarjoaa kuitenkin komentoriviliittymän sekä Scheme-menettelyt kääntäjän hallitsemiseksi.

Sen lisäksi järjestelmä, kääntäjä mukana etupään varten ECMAScript ja Emacs Lisp kieltä .

REPL ja virheenkorjaus

Uusi REPL  (in) on saatavana versiosta 2.0 lähtien, ja siinä on ominaisuuksia tämän tyyppisen vuorovaikutteisen ohjelmoinnin yksinkertaistamiseksi. REPL tarjoaa myös virheenkorjausmahdollisuudet .

Versiohistoria

Versio Julkaisupäivä Tärkeimmät muutokset
2.0.3 22. lokakuuta 2011
  • Uusi moduuli ( synkroninen web-asiakas ), optimointi uudella osittaisella arvioijalla  (en) järjestelmäohjelmille, joita kutsutaan pevaliksi .
2.0.2 2. heinäkuuta 2011
  • Ylläpitoversio (`` while '' -ilmaus, nopeampi kääntäjä, suorituskyky virtuaalikoneelle jne.)
2.0.1 27. huhtikuuta 2011
  • Huoltoversio (REPL, R6RS-standardin unicode jne.)
2.0.0 16. helmikuuta 2011
  • Kääntäjän ja virtuaalikoneen lisääminen.
  • Unicoden tuki .
  • Muutto murunen on Boehm-Demers-Weiser .
  • SXML- tuki ja työkalut XML- käsittelyyn .
  • Osittainen tuki Scheme R6RS -standardille .
  • Web -moduuli , URI tukea ja Http käsittelyyn .

GNU-projekti

Guile on GNU-projektin virallinen laajennuskieli. GNU Debugger -projektin ylläpitäjä Tom Tromey ilmoitti kuitenkin vetäytyvänsä GDB: stä 8. lokakuuta 2010, mieluummin Pythonia ainoana laajennuskielenä.

Käyttöskenaariot

Guilen käyttäminen sovelluksessa antaa ohjelmoijille mahdollisuuden kirjoittaa laajennuksia ja antaa käyttäjille mahdollisuuden käyttää sovellusta, joka sopii paremmin heidän tarpeisiinsa.

Vilppi voidaan itse asiassa integroidaan kolmannen osapuolen ohjelmistojen muodossa ohjelmisto kirjasto , jonka käyttöliittymä antaa heille toiminnallisuudet järjestelmän kielen ja siihen liittyvistä moduuleista. Guilea käytetään siis laajennuskielenä monissa sovelluksissa, kuten Gimp , Anubis , GnuCash , LilyPond , MDK , robotit , Serveez , TeXmacs tai Scwm

Hakkerit GNU Guile -projektista ovat työskennelleet vuodesta 2010 lähtien myös kokonaismuutoksesta GNU Emacsista Guileen, ja Guile toteuttaa nyt Emacs Lisp -ohjelmaa.

Bibliografia

Täydennykset

GNU Guile-Ncurses

Guile-Ncurses on Ncurses täytäntöönpano jolloin luomisen tekstimuotoinen rajapintojen kaaviossa / vilppi kieltä. Se antaa tulkin kaavion GNU Guile kyky vuorovaikutuksessa panos merkkien on ympäristön teksti-tilassa , riippumatta päätteen . Se on paketti taustalla olevista Ncurses- kirjastoista . Tätä projektia, jonka ensimmäinen vakaa versio on vuodelta 2010, ylläpitää edelleen niin sanottu Mike Gran, sen luoja.

Muut aiheeseen liittyvät hankkeet

GNU-projektista riippumattomia, mutta GNU Guilelle omistettuja moduuleja on monien oheislaitteiden joukossa:

Huomautuksia ja viitteitä

Viitteet

  1. (in) Ludovic Courtes ( d ) , GNU Guile 2.2.7 vapautetaan  " ,7. maaliskuuta 2020(käytetty 8. tammikuuta 2021 )
  2. (in) Andy Wingo, GNU Guile 3.0.5 julkaisi  " ,7. tammikuuta 2021(käytetty 8. tammikuuta 2021 )
  3. Keskustelut Tcl-kielivirheistä: http://www.vanderburg.org/OldPages/Tcl/war/ ja http://www.vanderburg.org/OldPages/Tcl/war2/
  4. (in) "  henkilökohtaisen sivuston ylläpitäjä  " sivustolla wingolog.org ,12. syyskuuta 2010(katsottu 11. syyskuuta 2012 )
  5. (in) Manual Guile, jakso 2.1 http://www.gnu.org/software/guile/manual/html_node/What-is-Guile_003f.html#What-is-Guile_003f
  6. (in) kooste hankkeen lennossa myös kehitetään .
  7. (in) Tarkistettu6-raportti algoritmisesta kielijärjestelmästä . Algoritmisen kielijärjestelmäraportin kuudes tarkistus
  8. (en) Tukea Guile ei ylläpidetä GDB .
  9. (in) "  GNU Guile-Ncurses  " on directory.fsf.org , FSF ,27. lokakuuta 2014
  10. (in) GNU: n peitekurssit 1.0 saavutettu 4. lokakuuta 2010.
  11. (in) nongnu.org, Guile-PG  " (käytetty 11. helmikuuta 2012 )
  12. (en) Thien-Thi Nguyen, Guile-PG 0,43 saatavana , peitelähteet,6. helmikuuta 2012( lue verkossa ).
  13. (en) Thien-Thi Nguyen, Guile-WWW 2.35 saatavana , guile-lähteet,6. marraskuuta 2012( lue verkossa )..
  14. (sisään) "G-Wrap" , nongnu.org , 16. joulukuuta 2011.
  15. (in) "Guile-0.4.1 SDL available" , luettelo diffuusionesteen lähteistä , 16. marraskuuta 2012.
  16. (sisään) "Mixp" , nongnu.org , 22. elokuuta 2011.
  17. (in) "Mixp 0,6 saatavilla" , lists.gnu.org 25. tammikuuta 2012 mennessä.

Huomautuksia

  1. Versio 2.0 perustuu edelleen Scheme R5RS -standardiin, samalla kun se osittain ottaa käyttöön uuden R6RS- standardin . Guile on GNU-projektin tärkein järjestelmätoteutus, toinen on MIT / GNU-järjestelmä .

Ulkoiset linkit