IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

[Compilateur] Analyse sémantique.


Sujet :

C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 45
    Par défaut [Compilateur] Analyse sémantique.
    Bonjour à tous, je sais que le forum que j'ai choisi n'est peut-être pas le plus adéquat ... veuillez m'en excuser :-)

    Dans le cadre d'un de mes cours nous devons écrire un compilateur pour un petit langage que nous avons invité (un langage très simple). Ce compilateur doit être écrit en C++ (raison pour laquelle j'ai posté ici ).

    Je suis chargé de la conception de l'analyseur sémantique ... je suis donc à la recherche d'infos sur les analyseurs sémantiques, leur conception ... tout ce qui peut intéresser qqun qui doit en écrire un !

    Je lance donc un avis à tout qui possède des liens ou infos intéressantes ... "Please partagez votre savoir" ... Merci !

    [ je cherche aussi sur google ]

    Bonne journée !

  2. #2
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    Les traditionnels lex & yacc / flex / bison (qui se marient moyennement avec le C++ il me semble). Peut être boost::spirit aussi...

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    394
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 394
    Par défaut
    Pour construire un analyseur syntaxique, lex & yacc marchent bien.
    Je n'ai pas eu spécialement de problème à les interfacer avec C++.
    Mis à part quelques 'extern C{...}'.
    La référence en matière d'écriture de compilateur, ça reste AMA le 'dragon' :
    Compilers, principles, technicals and tools de Aho, Seti, Ullmann.

    Maintenant, je ne vois pas vraiment ce qu'est un analyseur sémantique.
    Est-ce une erreur de typo, ou bien parles-tu de la partie suivant l'analyse syntaxique,
    qui consiste en général à parcourir l'arbre syntaxique pour y effectuer certain contrôles
    (typage par exemple).

  4. #4
    Membre émérite Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Par défaut
    Ton objectif n'est pas précis:
    Tu dois développer l'analyseur lui-même, ce qui indterdit d'utiliser des outils externes?

    Tu dois développer l'outil autour de l'analyseur, ce qui te laisse le choix d'utiliser un outil externe ?

  5. #5
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 292
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 292
    Par défaut
    boost.spirit est bien pour les grammaires simples.
    Il y a effectivement l'ancêtre lex/yacc (/ flex/bison).
    Mais aussi des trucs plus adaptés au C++ comme ANTLR.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  6. #6
    Membre éclairé Avatar de nicolas66
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 326
    Par défaut
    Si ton projet te permet d'utiliser des outils externes comme bison / yacc / flex / lex, je peux te filer un compilateur que je suis aussi en train de développer pour traduire un langage appelé Galileo vers le langage C :

    http://nicolas.lerme.free.fr/galileo.zip

    En espérant que ca t'aide, bon courage

    Nico.

Discussions similaires

  1. l'analyse sémantique en prolog
    Par stentorus dans le forum Prolog
    Réponses: 14
    Dernier message: 16/03/2010, 13h32
  2. [Interpreteur] analyse sémantique
    Par ZaaN dans le forum Intelligence artificielle
    Réponses: 1
    Dernier message: 28/05/2008, 10h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo