2010-08-29 19 views
5

Pendant les heures de conception du compilateur, j'utilise JLex comme générateur d'analyseur lexical, qui produit un programme Java à partir d'une spécification lexicale. Je voudrais savoir s'il existe d'autres outils qui peuvent m'aider dans la même chose en générant des programmes C/C++/C# ou VB au lieu d'un programme Java, et peuvent fonctionner sous Windows.Analyseurs lexicaux basés sur C/C++/C#/VB

Répondre

5
  • C#
    • est un générateur de scanners lexicales acceptant une spécification d'entrée « LEX-like » et produit un fichier de sortie C# (C# 2 avec les génériques).
    • Grammatica est un C# et Java Générateur d'analyseur syntaxique
    • générateur d'analyseur syntaxique ANTLR qui prend en charge la génération de code en C, Java, Python, C#, et Objective-C
    • C# Lex
    • C# Flex
  • Java
    • JLex
    • JFLex
    • ANTLR
    • Grammatica
    • Ragel est un compilateur de machine à états finis avec le support de sortie pour C, C++, Objective-C, D, Java et Ruby code source
  • C/C++
4

Lex (et ses variantes comme Flex) devrait être un point de départ. Vous pouvez télécharger les ports Windows de ceux-ci pour commencer. La sortie est en C. De plus, recherchez yacc et bison si vous voulez aussi des générateurs d'analyseurs. Here est une page complète pour tous les quatre.

1

Ragel peut générer des analyseurs lexical rapide d'une langue régulière en C, C++, Objective-C, D, Java et Ruby.