YACC (Yet Another Compiler Compiler) è un generatore di parser nel linguaggio di programmazione C originariamente presente in Unix dal 1970[senza fonte].

Yacc
software
Generegeneratore di parser
SviluppatoreStephen C. Johnson
Data prima versione1970
Sistema operativoUnix-like
LinguaggioC

Caratteristiche modifica

Yacc genera un parser per una grammatica fornita nella notazione BNF. L'output di Yacc è in linguaggio C.

Storia modifica

Noto negli anni 1970 come strumento proprietario fornito dai Bell Laboratories per il sistema operativo Unix, la pubblicazione di Yacc come software libero avvenne successivamente nel 1997[senza fonte] come strumento fornito in Plan 9.[1]

Analogamente ad altri strumenti disponibili originariamente su Plan 9, Yacc fu soggetto a vari port per altri sistemi unix-like e fu ad esempio disponibile nei sistemi Debian dal 2005 attraverso il pacchetto 9base.[2][3][4]

Alternative modifica

Nel tempo nacquero varie alternative a Yacc. Una delle prime fu quella del progetto GNU sviluppata a partire dal 1984 e nota come GNU Bison.[5][6] Nel 1990, per mano dell'autore originale di GNU Bison, nacque anche il programma byacc per conto di Berkeley Software Distribution.[7] Sia GNU Bison che byacc furono disponibili in Debian già dal 1997.[8][9]

Fra vari altri software analoghi a Yacc è da citare JavaCC. Fu sviluppato originariamente per conto di Sun Microsystems per generare compilatori del linguaggio Java. Venne rilasciato intorno al 2003.[10]

Note modifica

  1. ^ (EN) Debian copyright file, su metadata.ftp-master.debian.org. URL consultato il 27 giugno 2017.
  2. ^ (EN) 9base, su tools.suckless.org. URL consultato il 27 giugno 2017 (archiviato il 2 luglio 2017).
  3. ^ (EN) Plan 9 from User Space, su swtch.com. URL consultato il 27 giugno 2017 (archiviato il 29 giugno 2017).
  4. ^ (EN) 9base changelog [collegamento interrotto], su metadata.ftp-master.debian.org. URL consultato il 27 giugno 2017.
  5. ^ (EN) GNU Bison, su gnu.org. URL consultato il 27 giugno 2017 (archiviato il 28 maggio 2019).
  6. ^ (EN) bison-1.25.tar.gz, su ftp.gnu.org. URL consultato il 27 giugno 2017 (archiviato l'8 aprile 2013).
    «Copyright (C) 1984, 1989 Free Software Foundation, Inc.»
  7. ^ (EN) byacc, su invisible-island.net. URL consultato il 27 giugno 2017 (archiviato il 16 ottobre 2017).
    «Byacc was written around 1990 by Robert Corbett who is the original author of bison.»
  8. ^ (EN) Debian bison changelog, su metadata.ftp-master.debian.org. URL consultato il 27 giugno 2017 (archiviato dall'url originale il 31 luglio 2018).
    «Vincent Renardias Mon, 10 Feb 1997 01:52:36 +0100»
  9. ^ (EN) Debian byacc changelog, su metadata.ftp-master.debian.org. URL consultato il 27 giugno 2017 (archiviato dall'url originale il 31 luglio 2018).
    «Vincent Renardias Sun, 20 Apr 1997 15:59:28 +0200»
  10. ^ (EN) JavaCC initial import, su github.com, 9 giugno 2003. URL consultato il 27 giugno 2017.

Bibliografia modifica

Voci correlate modifica

Collegamenti esterni modifica

Controllo di autoritàGND (DE4293012-1 · BNF (FRcb12472883s (data)