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

 Delphi Discussion :

Programmer un analyseur syntaxique pour une grammaire donnée


Sujet :

Delphi

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Programmer un analyseur syntaxique pour une grammaire donnée
    comment programmer une Grammaire de précédence???

  2. #2
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    C'est qoui une grammaire de précédence, et quel usage en as tu ?

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    dans le module de compilation
    par exemple:
    Z---------->#S#
    s----------> A)
    A---------> aA / AS / (a

  4. #4
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    Euh..je n'ai toujours pas compris...tu veux en faire quoi exactement ?

  5. #5
    Expert éminent sénior

    Avatar de sjrd
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2004
    Messages
    4 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Suisse

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2004
    Messages : 4 517
    Points : 10 154
    Points
    10 154
    Par défaut
    C'est vrai que rédiger tes messages de façon un peu plus claire serait un plu Il est difficile de te comprendre.

    Bon, heureusement, aujourd'hui, j'ai pu emprunter la boule de cristal de mon voisin

    Donc tu veux, en Delphi, programmer un analyseur syntaxique, à partir de la description de la grammaire du langage. Il est vrai que c'est le module de compilation le plus difficile.

    J'ai rédigé un tutoriel sur ce sujet, avec exemples en Delphi :
    http://sjrd.developpez.com/algorithm...s-syntaxiques/

    Tu devrais y jeter un oeil. Tu devrais y trouver les réponses que tu cherches.
    sjrd, ancien rédacteur/modérateur Delphi.
    Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
    Découvrez Mes tutoriels.

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    3.3 L’analyse descendante
    Une procédure par variable.
    Problème : récursivité directe à gauche ;
    nécessité une transformation pour l’éliminer.
    Grammaire de départ Grammaire modifiée
    Procédures correspondantes : deux procédures supposées écrites :
    • prevision retourne l’unité lexicale suivante sans l’enlever ;
    • correspond(x) lit l’unité lexicale suivante, l’enlève et signale une
    erreur si elle ne vaut pas x. Ici plus, nombre, etc. sont les
    codes d’unités lexicales renvoyés par l’analyseur lexical.
    E® E +T | T
    T® T *F | F
    F ® (E ) | nombre
    A ® E$ (production augmentée)
    E ® TG
    G ® +TG | e
    T® FU
    U ® *FU | e
    F ® (E ) | nombre

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    merci sjrd

    mais le liens n'est pas disponible

  8. #8
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    A mon avis tu trouveras tout ce qu'il faut dans son projet :
    http://sjrd.developpez.com/sepi/

  9. #9
    Expert éminent sénior

    Avatar de sjrd
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2004
    Messages
    4 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Suisse

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2004
    Messages : 4 517
    Points : 10 154
    Points
    10 154
    Par défaut
    Citation Envoyé par mohamed seddik Voir le message
    mais le liens n'est pas disponible
    Corrigé. Le tutoriel de Damien Guichard avait été déplacé sans que je le sache


    http://damien-guichard.developpez.com/
    sjrd, ancien rédacteur/modérateur Delphi.
    Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
    Découvrez Mes tutoriels.

  10. #10
    Expert éminent sénior

    Avatar de sjrd
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2004
    Messages
    4 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Suisse

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2004
    Messages : 4 517
    Points : 10 154
    Points
    10 154
    Par défaut
    Citation Envoyé par philnext Voir le message
    A mon avis tu trouveras tout ce qu'il faut dans son projet :
    http://sjrd.developpez.com/sepi/
    Oui... Et non.

    Non parce que, il y a en effet un générateur d'analyseur syntaxique dans Sepi, mais il est orienté... Sepi. Il travaille avec des noeuds de type TSepiParseTreeNode qui travaille en lien étroit avec TSepiUnitCompiler et TSepiCompiler.

    Oui parce que, il n'est probablement pas très difficile de modifier ce générateur pour le rendre à nouveau indépendant de Sepi. Attention toutefois qu'il est GPL, donc viral

    PS : au fait, si tu veux toujours voir des programmes exemples de Sepi, il y en a, maintenant Et la version SVN de FunLabyrinthe l'utilise désormais intensément
    sjrd, ancien rédacteur/modérateur Delphi.
    Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
    Découvrez Mes tutoriels.

  11. #11
    Expert confirmé

    Profil pro
    Leader Technique
    Inscrit en
    Juin 2005
    Messages
    1 756
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Leader Technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 756
    Points : 4 170
    Points
    4 170
    Par défaut
    Juste une petite remarque :
    Il existe des outils pour générer automatiquement l'analyseur lexical et syntaxique à partir de leur grammaire.

    Personnellement, j'utilise COCO/R. Son langage pour définir la grammaire est vraiment très simple et facile à comprendre.

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/09/2006, 17h05
  2. Réponses: 3
    Dernier message: 11/06/2006, 02h34
  3. récupérer des valeurs pour une semaine donnée
    Par duck54 dans le forum Requêtes
    Réponses: 1
    Dernier message: 30/05/2006, 01h13
  4. [CR] Filtrer pour une période donnée
    Par liberio dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 21/04/2004, 16h32

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