Aller au contenu

Yacc (logiciel)

Un article de Wikipédia, l'encyclopédie libre.
Yacc

Informations
Développé par Stephen C. Johnson (en)Voir et modifier les données sur Wikidata
Première version Voir et modifier les données sur Wikidata
Dépôt www.tuhs.org/cgi-bin/utree.pl?file=V6/usr/source/yaccVoir et modifier les données sur Wikidata
Écrit en CVoir et modifier les données sur Wikidata
Type LALR parser generator (en)Voir et modifier les données sur Wikidata

Yacc est un outil de génération d'analyseurs syntaxiques en langage C. Yacc est l'acronyme de Yet Another Compiler Compiler (« Encore un autre compilateur de compilateur »).
Yacc est notamment utilisé dans la construction des jeux d'instructions en langage machine pour les microprocesseurs.

Du point de vue de la classification des langages, Yacc fournit le code nécessaire à l'analyse de langages de type 2 (non contextuels).

Il est fréquemment utilisé en association avec Lex, générateur d'analyseur lexical.

Équivalents

[modifier | modifier le code]

Lex et Yacc ont pour équivalents respectifs :

  • Flex et GNU Bison ;
  • Alex et Ayacc, ayant pour cible le langage Ada ;
  • JFlex et CUP, ayant pour cible le langage Java ;
  • Ocamllex et Ocamlyacc, ayant pour cible le langage OCaml ;
  • GPLEX et GPPG, ayant pour cible le langage C# ;
  • Alex et Happy, ayant pour cible le langage Haskell.