Mots clés : langages de spécification,
sémantique, Centaur, Prolog .
Participant : Thierry Despeyroux
[correspondant].
CLF, développé par Thierry Despeyroux (dans l'ex-projet
CROAP) est un ensemble d'outils et de formalismes de
spécification de la syntaxe et la sémantique de langages
informatisées. CLF propose actuellement les langages
AS [Des96] (Abstract Syntax) et CS (Concrete
Syntax).
Une partie de CLF a été directement adaptée au monde
Prolog comme une extension des DCG (``Definite Clause
Grammars''). Par rapport aux DCG, notons une plus grande
facilité d'expression due à la possibilité de récursions
gauches et à la compilation de certaines règles de grammaire
permettant d'utiliser certaines optimisations très
importantes des compilateurs Prolog (indexation de clauses).
De plus l'analyseur ainsi réalisé contient une méthode
générique permettant de faire le lien entre les occurrences
du terme construit et les positions textuelles dans le texte
source, une caractéristique qui manque à la plupart des
générateurs d'analyseurs lexicaux.
Cette extension des DCG a été ensuite utilisée pour
contruire un analyseur XML utilisé pour nos travaux sur la
vérification sémantique de systèmes d'informations écrits en
XML (cf. section 6.6).