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

Lisp Discussion :

Les interpréteurs Lisp ?


Sujet :

Lisp

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif

    Profil pro
    Étudiant
    Inscrit en
    Décembre 2004
    Messages
    499
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2004
    Messages : 499
    Par défaut Les interpréteurs Lisp ?
    Bonjour,

    j'ai eu à faire un petit interpréteur Lisp en C pour la fac et j'aurais aimé avoir votre avis sur ce à quoi doit ressembler un bon interpréteur Lisp ?

    si vous avez des conseils à me donner sur mon code ils seraient les bienvenus
    ou bien sinon une adresse où il serait possible de voir le code d'un bon interpréteur, ou pourquoi pas d'un compilateur, par exemple une version minimale de CLisp et expliquée pas à pas... :-)

    merci
    voir piece jointe
    Renaud
    Fichiers attachés Fichiers attachés

  2. #2
    Membre expérimenté
    Avatar de Strab
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    338
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 338
    Par défaut
    Salut,

    à moins que par la suite tu aies des questions sur le comportement de telle ou telle fonction lisp, je te conseille plutôt de poster sur le forum C, vu que tu écris en C.

    Sinon ton prof te l'autorise, jette un coup d'oeil aux outils Lex et Yacc qui facilitent grandement la tâche pour faire du parsing en C. (Je n'ai pas regardé ton code)

    Bon courage

  3. #3
    Membre très actif

    Profil pro
    Étudiant
    Inscrit en
    Décembre 2004
    Messages
    499
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2004
    Messages : 499
    Par défaut
    Bonjour,
    ma question n'est pas forcément centrée sur le langage dans lequel est codé l'interpréteur mais plutôt sur la notion d'interpréteur Lisp (ou scheme car le noyau est à peu près indentique) et les techniques qui permettent d'en développer un qui soit performant

    pour ce qui est de yacc et de lex vu le petit nombre de fonctions que je prends en charge je n'en ai pa besoin pour le moment, ce qui m'intéresse c'est plutôt le fonctionnement de la fonction eval, la nature de ce qu'elle prend en entrée et de ce qu'elle donne en sortie car la performance d'un interpréteur est basée essentiellement sur cette fonction !

    salut

  4. #4
    Membre expérimenté
    Avatar de Strab
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    338
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 338
    Par défaut
    Lex et Yacc conviennent aussi pour des parsers simples.

    Si tu veux savoir comment fonctionnent la fonction eval des différents interpréteurs et compilateurs, je pense que la meilleure façon est de regarder la doc de développement de ceux open-source et de lire le code.

    Si ce n'est déjà fait, cherche et lit un peu de doc sur la théorie des langages et de la compilation, c'est un sujet de recherche qui a été abondamment traité.

  5. #5
    Membre très actif

    Profil pro
    Étudiant
    Inscrit en
    Décembre 2004
    Messages
    499
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2004
    Messages : 499
    Par défaut
    merci pour ta réponse, j'ai en effet trouvé plusieurs liens intéressants,

    mais serait-il possible puisque tu parais connaître un peu le sujet me conseiller un lien en particulier ?
    (sous entendu qui contienne les notions importantes)


    salut

  6. #6
    Membre à l'essai
    Inscrit en
    Mars 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 7
    Par défaut
    yo,

    si jamais t'es très intéressé sur le sujet ( aka au point de lacher des euros )
    y'a un livre de "christian queinnec : les langages lisp"

    a priori ceci http://paracamplus.com/Books/Cours/LiSP/4/extrait.pdf est un extrait de la prochaine réédition ( bien mise a jour je crois )

    sinon y'a beaucoup de cours sur la théorie des langages et leur implantations ( evaluateur d un petit langage fonctionnel ) sur internet; par contre souvent c'est implanté en lisp ou scheme ou caml .. en C t'auras un petit peu plus de boulot a faire ( coté structures / allocations etc )

    http://www.lix.polytechnique.fr/~dowek/tlp.html <= actuellement leur serveur a l'air HS mais j'ai lu les 9 cours y'a pas plus de 3 jours, j'espere que c'est juste temporaire.

    peace

    vive l'évaluation .. hem

Discussions similaires

  1. lisp pour supprimer les éléments dans une surface
    Par ocni2000 dans le forum Lisp
    Réponses: 1
    Dernier message: 21/03/2012, 11h08
  2. [EMACS LISP] Colorer les occurences d'un mot
    Par freedonadd dans le forum Lisp
    Réponses: 2
    Dernier message: 17/02/2011, 10h11
  3. Réponses: 16
    Dernier message: 04/09/2010, 01h17
  4. Obligatoire : lisez les règles du forum : MAJ 06/08/2010
    Par Anomaly dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 0
    Dernier message: 03/07/2008, 13h46
  5. Les packages du lisp
    Par larbou dans le forum Lisp
    Réponses: 0
    Dernier message: 15/02/2008, 14h38

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