Bonjour j'aimerais savoir comment on peut faire afficher le temps d'execution d'un programme en scheme.
Bonjour j'aimerais savoir comment on peut faire afficher le temps d'execution d'un programme en scheme.
La science est ce que nous comprenons suffisamment bien pour l'expliquer à un ordinateur. L'art, c'est tout ce que nous faisons d'autre.
Donald E. Knuth
Affiche le temps d'exécution sur la sortie standard et retourne le résultat de la-dite fonction.
Code : Sélectionner tout - Visualiser dans une fenêtre à part (time (ma_fonction arg1 ... argN))
(time expr ) affiche le temps d’exécution de l’évaluation de expression expr et renvoie le résultat de celle-ci.
Edit : deux réponses valent mieux qu'une ^^
c'etait pas bien difficile..
La science est ce que nous comprenons suffisamment bien pour l'expliquer à un ordinateur. L'art, c'est tout ce que nous faisons d'autre.
Donald E. Knuth
parce que Dr Scheme me met
"reference to undefined identifier: time"
La science est ce que nous comprenons suffisamment bien pour l'expliquer à un ordinateur. L'art, c'est tout ce que nous faisons d'autre.
Donald E. Knuth
Tu n'as juste pas le bon niveau de langage probablement.
Il y a 4 niveaux (si on ne considère que les plus courants):
R5RS (R6RS) qui est le langage standard
MzScheme qui charge les bibliothèques de base de PLT
MrEd qui charge les bibliothèques pour les éléments graphiques
Pretty Big qui charge tout ce qu'il faut.
C'est pratique d'utiliser Pretty Big, mais, comme pour tout langage, il faut apprendre quel module défini quoi. Et pour cela, il n'y a pas de secret, mais un outil magique : menu Help de DrScheme. Celui-ci te dit qu'il te faut MzScheme (cf image jointe). Donc tu le sélectionnes comme langage (CTRL-L ou -L) et le tour est joué.
Mais jme suis bien dit que ct un problème de librairie alors j'ai essayé d'en charger, mais kan j'ai relancé drscheme, apres chargement de l'environnement, au lieu d'afficher la fenetre habituelle, il a redemarré itérativement d'autres drscheme comme si le processus drscheme forkait à l'infini. Apres avoir 15 drscheme lancés, j'ai tout fermé et réinstallé scheme via apt-get mais rien n'y a fait toujours ce problème bizarre. Du coup j'ai installé via le script d'install du site de drscheme et c'est redevenu normal. Vous avez deja eu ce genre d'erreur?
La science est ce que nous comprenons suffisamment bien pour l'expliquer à un ordinateur. L'art, c'est tout ce que nous faisons d'autre.
Donald E. Knuth
j'ai installé drscheme a partir du script qui est sur leur site. Mais c'est tout merdique je peux pas charger de nouvelles librairies: quand je vais dans ajouter un teachpack ca me sort une fenetre avec "Les teachpacks ne sont disponibles que dans les langages suivants :
Etudiant niveau débutant
E...tudiant niveau intermédiaire
Etudiant niveau intermédiaire, plus lambda
Etudiant niveau avancé"
et donc en particulier jpeux pas ajouter mzscheme. Bref qq'un peut me dire comment m'en sortir ?
La science est ce que nous comprenons suffisamment bien pour l'expliquer à un ordinateur. L'art, c'est tout ce que nous faisons d'autre.
Donald E. Knuth
Dans le menu de DrScheme, tu choisis "Language" puis "Sélectionner un Language".
Là apparaît une fenêtre avec pleins de choix possibles.
Module : C'est le nec plus ultra si tu sais gérer les modules, pour chaque module que tu programmes, tu choisis un langage, tu inclus d'autres modules/fichier, c'est souple et si tu veux faire par exemple du pur Scheme R6RS, tu commence ton programe par
Ensuite viennent les langages d'enseignement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part #lang scheme
Chaque section correspond à un ouvrage d'enseignement, ces langages correspondent à du Scheme limité. Par exemple "How to Design Programs" - "Etudiant niveau débutant" dispose de très peu d'instructions.
L'avantage c'est que tu peux alors installer un "teachpacks", mais ces modules apportent des choses qui ne correspondent à aucun standards ou librairie, et à moins de suivre les cours des bouquins, il vaut mieux programmer "Modules" et utilisé les bonnes bibliothèques.
Viennent les Langages dit "du passé", sous entendu potentiellement obsolètes et forcement non maintenu, non évolutifs.
Tu as le Scheme R5RS
Le Swindle (je ne connais pas ce dialecte)
et l'Assez gros Scheme, qui est un R5RS avec pas mal de bibliothèques chargé, comme celles pour les interfaces graphiques par exemples. C'est bien pratiques pour fait des tests et étudier les bibliothèques facilement, mais aussi tentant que ce soit de l'utiliser, il vaux mieux pour ses projets utiliser "Modules"...
Enfin tu as les langages expérimentales...
Voilà voilà
C'est bon je m'en suis sorti, apparement time est inclus dans "pretty big scheme" en revanche je comprends toujours pas pourquoi quand j'installe drscheme depuis apt-get il ne marche pas (a savoir il fait ce que j'ai décrit plus haut, il fork à l'infini et sans m'afficher la fenetre principale de l'environnement). Ca me fait ça depuis hier soir c'est vraiment chelouu
La science est ce que nous comprenons suffisamment bien pour l'expliquer à un ordinateur. L'art, c'est tout ce que nous faisons d'autre.
Donald E. Knuth
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager