Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Invité de passage
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

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

    Informations forums :
    Inscription : avril 2011
    Messages : 1
    Points : 0
    Points
    0

    Par défaut débutant lisp : Packages

    Bonjour a tous, j'essaye depuis plusieurs jours de créer un mini package entre deux fichiers lisp, et toutes les aides et tutoriels que j'ai lu pour l'instant me font penser que les packages doivent etres dans les memes fichier... voici le corps d'un fichier que j'ai créer :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    (make-package :declar)
    
    (make-package :use)
    
    (in-package :declar)
    (defun f (x) (+ x 1))
    (defun g (x) (* x x))
    
    (in-package :use)
    
    (import 'declar::f)
    (import 'declar::g)
    (defun p (x) (g (f x)))
    
    (p 5)
    lorsque je le lance il n'y a pas de problème, tout marche.
    Mon problème est que j'aimerais séparer en deux fichier, d'un coté la déclaration des fonctions f et g, et de l'autre l'import de ces deux fonction pour les utiliser dans p :
    fichier 1 :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    (make-package :declar)
    (in-package :declar)
    (defun f (x) (+ x 1))
    (defun g (x) (* x x))
    
    fichier 2 :
    
    (make-package :use)
    (in-package :use)
    (import 'declar::f)
    (import 'declar::g)
    (defun p (x) (g (f x)))
    
    (p 5)
    // ceci ne marche pas du tout bien évidement...

    j'ai eu beau chercher, je me suis noyer dans les informations ne se rapportant pas a mon problème.

    j'en vient donc ici requerir votre aide, ou tout du moins dites moi si ce que j'essaye de faire est simplement possible...

    d'avance merci


    //
    j'ai trouver une manière de faire, je ne sait pas si c'est la plus propre, mais ca marche, j'utilise (load chemin_du_fichier) qui ajoute le listing du fichier voulu avant le reste du code.

    Personnelement j'appelle pas cela un vrai package mais bon...

  2. #2
    Expert Confirmé
    Inscrit en
    avril 2008
    Messages
    1 071
    Détails du profil
    Informations forums :
    Inscription : avril 2008
    Messages : 1 071
    Points : 2 543
    Points
    2 543

    Par défaut

    Citation Envoyé par Student-lisp Voir le message
    Bonjour a tous, j'essaye depuis plusieurs jours de créer un mini package entre deux fichiers lisp, et toutes les aides et tutoriels que j'ai lu pour l'instant me font penser que les packages doivent etres dans les memes fichier... voici le corps d'un fichier que j'ai créer :

    [SNIP]

    // ceci ne marche pas du tout bien évidement...

    j'ai eu beau chercher, je me suis noyer dans les informations ne se rapportant pas a mon problème.

    j'en vient donc ici requerir votre aide, ou tout du moins dites moi si ce que j'essaye de faire est simplement possible...

    d'avance merci


    //
    j'ai trouver une manière de faire, je ne sait pas si c'est la plus propre, mais ca marche, j'utilise (load chemin_du_fichier) qui ajoute le listing du fichier voulu avant le reste du code.

    Personnelement j'appelle pas cela un vrai package mais bon...
    Je ne pense pas vraiment pouvoir t'aider, mais je crois qu'il serait bon que tu précises quel lisp tu utilises et sur quelle plateforme.

    De plus, merci d'utiliser la balise "QUOTE" symbolisée par un "#".

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •