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

Scheme Discussion :

Je débute en scheme et je me sens bête


Sujet :

Scheme

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 13
    Points : 3
    Points
    3
    Par défaut Je débute en scheme et je me sens bête
    Bonjour.

    Excusez-moi d'avance si je vous pose une question qui est sans doute idiote.

    Je débute en Scheme et j'utilise la version 371 de DrScheme.

    J'ai un exercice à faire, qui consiste à tracer un sablier en superposant deux triangles par la pointe.

    Pour ce faire, je suis amenée à utiliser la primitive graphique filled-triangle.

    Or, quand je veux exécuter, je reçois un message d'erreur qui me dit que mon code contient une référence non définie à "filled-triangle".

    Je suppose que c'est parce que je ne sais pas comment "un peu cappeler" cette fonction dans le programme.

    En C, pour disposer d'une fonction prédéfinie, on fait un include de la librairie voulue.

    En Scheme, je ne sais pas, en fait, ce qu'on doit mettre avant de commencer le code des fonctions que l'on veut définir.

    Encore que je me demande s'il faut réellement mettre quelque chose. En effet, si je veux faire des calculs, je ne dois rien faire d'autre que d'écrire la fonction de calcul et ça s'exécute correctement. Or, là aussi, on fait appel à des fonctions primitives.

    Est-ce qu'il manquerait quelque chose dans mon installation de DrScheme ?

    Peut-être comprendrais-je mieux si quelqu'un pouvait m'expliquer comment fonctionnent les sous-dossiers et les fichiers que je trouve dans le répertoire "collects" qui lui-même se trouve dans /home/(nom d'utilisateur)/lib (je suis en effet sous kubuntu).

    Merci de me répondre.

    Désolée, j'ai tapé quelque chose d'incompréhensible :

    "Je suppose que c'est parce que je ne sais pas comment "un peu cappeler" cette fonction dans le programme."

    Il faut naturellement lire : comment on peut "appeler" cette fonction ...
    L'épée qui a fait roi Arthur

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Essaye en mettant en debut de programme (require lib "graphics.ss" "graphics")), Utilise le langage "Assez gros Scheme"
    PS Poste dans la sous cat Scheme.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 13
    Points : 3
    Points
    3
    Par défaut
    Merci pour la suggestion.

    J'avais effectivement pensé à utiliser "Assez gros Scheme" mais ....

    Quand je disais que je débutais, ça impplique entre autres le fait que je ne connais pas les instructions à mettre en début de programme. Autrement dit les instructions de pré-processeur.

    Je ne sais pas notamment comment faire pour que le module "lib" soit reconnu et puisse être utilisé. Et avant d'indiquer le module, quid ?

    Il doit bien y avoir des instructions communes à tous les compilateurs Scheme, non ?

    J'ai vainement cherché sur le Web un manuel dans ce sens, sans doute parce que je n'ai pas trouvé les bons mots-clés pour la recherche. Je pense que ça m'aiderait déjà beaucoup si quelqu'un pouvait me donner au moins une référence à un tel manuel ou mode d'emploi.

    Je crois que j'ai compris ce qui se passe. Le problème, c'est que je me base sur le cours LI101 d'une certaine université et que pour pouvoir tester les codes écrits dans le cadre des exercices, il faut disposer de l'environnement propre à ce cours. Autrement dit, il faut que j'arrive à installer un fichier .plt (que j'ai). Parce quand l'environnement est installé, on ne doit rien indiquer en début de programme.

    Sur les ordinateurs des salles où se font les TP, cet environnement est disponible mais "ils" utilisent une version de DrScheme ou plutôt de MzScheme plus ancienne que la mienne.

    De sorte que je n'arrive pas à installer de fichier .plt.

    Quelqu'un pourait-il m'indiquer la marche à suivre pour y arriver sachant que je reçois le message suivant quand je tente l'installation :

    setup-plt: Setup version is 371 [3m]
    setup-plt: Available variants: 3m
    setup-plt: Main collection path is /home/voyou/lib/plt/collects
    setup-plt: Collection search path is
    setup-plt: /home/voyou/.plt-scheme/371/collects
    setup-plt: /home/voyou/lib/plt/collects
    cannot install; version (200) of collection ("mzscheme") is required, but version (370) is installed

    === context ===
    /home/voyou/lib/plt/collects/setup/unpack.ss:248:42: loop
    /home/voyou/lib/plt/collects/setup/unpack.ss:138:10

    Il paraît - d'après ce que j'ai trouvé sur une maillist plt-scheme - que l'on peut forcer l' "unpacking" mais je n'ai pas compris ce qu'il faut faire pour ça.

    Il faudrait que je puisse y arrver sous Windows XP et sous Feisty.

    Pour le moment, je suis très frustrée car il m'est impossible de tester les codes que j'écris à la maison pour résoudre les exercices proposés, alors que je n'ai pas (encore) de gros problèmes de compréhension à ce niveau.

    Je risque d'être tout simplement bloquée dans mon apprentissage.

    J'espère que mon problème est plus clair maintenant. Parce que souvent, pour les débutants, expliquer clairement aux programmeurs expérimentés quel est l'objet de leurs tourments n'est pas chose facile.

    Merci d'avance pour toute aide de nature à débloquer le problème.
    L'épée qui a fait roi Arthur

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Essayes ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    
    (require (lib "graphics.ss" "graphics"))
    
    (define *viewport* '())
    
    (open-graphics)
    (set! *viewport* (open-viewport "fenetre graphique" 400 200)) 
    
    (define (tracer-ligne x0 y0 x1 y1)
      (let ((outil (draw-line *viewport*))
            (depart (make-posn x0 y0))
            (arrivee (make-posn x1 y1))
            )
        (outil depart arrivee)
        )
      )
    
    (tracer-ligne 1 1 200 200)
    Est-ce que ça marche ?

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 13
    Points : 3
    Points
    3
    Par défaut
    Oh oui, ça marche, après sélection du langage "assez gros Scheme". Et ça dessine une jolie fenêtre. Merci.

    On dirait que c'est moins la galère qu'avec la SDL pour faire ce genre de choses.

    Je crois finalement qu'avec DrScheme tel qu'installé après téléchargement, on a juste des bibliothèques basiques et que si l'on veut aller plus loin, il faut en créer d'autres soi-même ou bien emprunter celles développées par d'autres et même des langages supplémentaires.

    Ce qui m'ouvre pas mal de perspectives.

    Dans l'immédiat, je crois que je peux considérer mon problème comme résolu.
    L'épée qui a fait roi Arthur

  6. #6
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Citation Envoyé par Excalibur Voir le message
    [...]
    Je crois finalement qu'avec DrScheme tel qu'installé après téléchargement, on a juste des bibliothèques basiques et que si l'on veut aller plus loin, il faut en créer d'autres soi-même ou bien emprunter celles développées par d'autres et même des langages supplémentaires.[....]
    Il y a aussi un système de module qui te permet de rajouter des trucs.

    Menfinbon si tu as besoin d'aide n'hésites pas.

    N'oublies pas le bouton

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 13
    Points : 3
    Points
    3
    Par défaut
    Je crois que ça va aller pour le moment.

    Encore merci.
    L'épée qui a fait roi Arthur

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ALGO] dessiner un triangle dans le bon sens
    Par lefait dans le forum Algorithmes et structures de données
    Réponses: 13
    Dernier message: 05/02/2005, 14h38
  2. Association : comment choisir le sens ?
    Par 1cado dans le forum Diagrammes de Classes
    Réponses: 2
    Dernier message: 26/09/2004, 23h12
  3. probleme réseau : ping a sens unique
    Par be_on_edge dans le forum Développement
    Réponses: 14
    Dernier message: 18/09/2004, 10h01
  4. sens trigomometrique
    Par CookSlash dans le forum OpenGL
    Réponses: 4
    Dernier message: 09/04/2004, 18h11
  5. prolog et scheme
    Par bourvil dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 30/09/2003, 12h09

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