Logo (langage)

Restez toujours informé : suivez-nous sur Google (☆)

Introduction

Exemple d'écran de MSWLogo

Logo est le nom donné à la fois à une philosophie de l’éducation et à une famille de langages de programmation en constante évolution qui aident à la mettre en pratique.

Le projet est né à la fin des années soixante de la rencontre entre le courant cognitiviste en intelligence artificielle et des théories sur l’apprentissage issues de travaux de Jean Piaget et de ses conceptions en matière d’éducation. Ces deux volets sont respectivement représentés par ses promoteurs, Marvin Minsky et Seymour Papert - qui sera le moteur du projet -, au sein du Computer Science and Artificial Intelligence Laboratory (Laboratoire d'intelligence artificielle et d'informatique) du MIT.

L‘appellation, inspirée du grec Logos « parole, discours, intelligence », recouvre, donc, deux concepts étroitement liés quoique distincts : un mode d’apprentissage inspiré des travaux de Jean Piaget sur le développement cognitif de l’enfant et un type d’environnement informatique, à partir d'un langage adapté du LISP spécialement conçu dans une démarche de pédagogie active inspirée des travaux de celui-ci. Il s'inscrit en réaction à une introduction de l'ordinateur dans l'éducation inspirée de l'enseignement programmé

Principes de base

Logo propose une approche de l’utilisation de l’informatique délibérément constructiviste. C’est l’apprenant qui est le principal acteur de son apprentissage et l’ordinateur n’est présent que pour lui permettre de construire des réalités dans des environnements divers : les Micromondes à l’aide d’un langage informatique spécialement conçu à cette fin (la géométrie Tortue en est un exemple).

Il n’est nullement question ici de Simulation informatique. « C’est en créant qu’on apprend », telle est la thèse piagétienne que Papert défendra dans la poursuite du projet Logo.

L’objectif va, en effet, au-delà de l’acquisition de concepts qui seraient présents à ces micromondes.

Piaget distingue quatre stades dans le développement individuel dont les apprentissages sont acquis par l’interaction entre l’enfant et son environnement. Il note, toutefois, que, faute de trouver un environnement adéquat – qui n’existe pas - , celui-ci n’atteint pas toujours le dernier stade, celui des opérations formelles. Il émet d’ailleurs cette constatation que nombre d’adultes n'y sont, en réalité, jamais arrivés.

Et c’est ici que l’ordinateur entre en jeu. Papert y voit l’opportunité de créer des environnements propices au développement de ces facultés logiques, à condition qu’il soit correctement adapté à cette fins. Ce sera le cas grâce au langage informatique Logo proprement dit.

L’environnement Logo est, donc, imprégné de la pensée de Piaget : il offre à l’apprenant la possibilité de se représenter et de décrire les phénomènes ainsi que le déroulement de sa démarche entreprise : saisie des moyens utilisés, justification de leur choix et/ou ajustements en cours de tâche. L’objectif poursuivi est d’amener, in fine, l’apprenant à dégager lui-même les caractéristiques de ses actions et de ses propres processus cognitifs. En un mot, qu’il apprenne comment il apprend.

Dans son ouvrage, Papert va même plus loin : l’environnement de Logo pourrait amener l’enfant à adopter de lui-même un mode de pensée procédural, mode de pensée qu’il décrit comment étant plus efficace que tout autre.

Encore faut-il une porte d’entrée qui soit à la portée de cet enfant. Ce sera le rôle de la tortue graphique, un robot dont l’enfant pourra commander les déplacements en s’appuyant sur la connaissance de la manière dont lui-même se déplace. Paradoxalement, le langage été victime de cette tortue qui l'a cantonnée à une image puérile ainsi également de son succès commercial qui a fait se multiplier des versions incomplètes, non conformes aux exigences fonctionnelles sur lesquelles insiste pourtant son propre concepteur, et parfois limitées à cette tortue graphique.

Dans le développement du projet, l’intelligence artificielle contribuera à différents titres comme celui d’offrir avec le Lisp un substrat au développement du langage informatique proprement dit, un premier robot d’expérimentation : la tortue de sol, le développement de la géométrie tortue, … sans oublier l’infrastructure informatique, une ressource rare et chère à l’époque.

Histoire

Un projet tel que celui porté par Logo relève d’un long processus au cours duquel, tant sous l’influence de l’évolution de la pensée de ses concepteurs – Papert en premier – que des rapides progrès dans le domaine du matériel informatique. Bien que projet et langage informatique vont évaluer de pair, il y a néanmoins parfois lieu d’effectuer une distinction dans l’évocation de leur histoire respective.

La période d’incubation : (1966 à 1980) : une tortue à petits pas

En tant que langage informatique proprement dit, Logo a été créé chez Bolt Beranek et Newman (BBN). Le concept initial émergea d’intenses discussions en 1966 entre Seymour Papert, Dan Bobrow et Wallace Feurzeig. Papert conçut les spécificités fonctionnelles essentielles du nouveau langage et Bobrow contribua à son concept et en réalisa sa première implémentation. Par la suite, contribuèrent également à son développement Richard Grant, Cynthia Solomon, Frank Frazier et Paul Wexelblat (Feurzeig).

Il succédait à une première tentative de créer un langage de programmation conçu pour les enfants, TELCOMP, basé sur le FORTRAN. A ce stade, le projet restait très orienté vers l’apprentissage des mathématiques et une familiarisation avec l’algorithmique, tout en insistant pour qu'il soit accessible aux jeunes élèves sans grande préparation. La première version de LOGO fut, d'ailleurs, une version pilote testée en 1967 avec des étudiants en mathématique de grades 5 et 6 à l’école Hanscom Field School de Lincoln, Massachusetts, sous la responsabilité de l’U.S. Office of Naval Research.

À l'issue des quatre années de recherche nécessaires aux chercheurs du BBN, il a reçu de nombreuses interfaces de simulation différentes, dont la tortue graphique, qui apparut cependant relativement tard par rapport à la première version du Logo.

Les premiers utilisateurs en milieu scolaire, eux, l'ont testée à Muzzy Jr High, Lexington, Massachusetts. La première version est sortie, sur un PDP-1, en Lisp. Il était alors appelé Ghost, et était destiné à la résolution de problèmes de base : les bugs pouvaient être mis en valeur immédiatement grâce à la tortue. Le langage n'était pas particulièrement puissant, et la conception avait plutôt été axée sur la simplicité d'utilisation pour des débutants en informatique (qui devaient alors utiliser un Teletype). La possibilité de fournir un commentaire détaillé des erreurs était également déterminante.

En 1970, Seymour Papert fonda le laboratoire LOGO au M.I.T. L’année suivante vit apparaître les premières expérimentations avec les tortues LOGO (de sol ou d'écran), considérées à tort par beaucoup pour être essentielles au projet LOGO alors qu’elles n’en représentent qu’un sous-ensemble. Plusieurs implémentations sur différents matériels et des expériences pédagogiques suivirent au cours de la décade des années 70 au M.I.T. mais aussi ailleurs comme à l’Université d’Edimbourgh Jim Howel) ou à celle de Tasmanie, en Australie (c’est, d’ailleurs, par cette dernière que se diffusa la première tortue graphique sur Apple II sous le nom de Tasmania Logo).

Cette phase de réflexion et d'expérimentatione est marquée par des recherches ponctuelles au sein d’écoles voisines (dont la Brookline Public Schools) et donnèrent lieu à des publications à diffusion restreinte (« papers »), les Logo Memos, relatant les enseignements tirés de ces expériences.

Des videos de cette période sont visibles sur le site de Cynthia Solomon

Apogée et désillusion (1980 à 1990) : du lièvre à la tortue

LOGO va quitter le laboratoire et connaître sa période faste au début des années 80. Deux facteurs vont contribuer à cette engouement :

  • l’arrivée des micro-ordinateurs qui vont à la fois rendre les ressources informatiques plus accessibles et, en les individualisant, donner l’impression à ses utilisateurs de pouvoir s’approprier une informatique jusque là aux mains de spécialistes officiant dans des grandes salles interdites et climatisées. De part son approche de l’informatique, LOGO va pouvoir s’inscrire dans ce mouvement ;
  • la sortie de l’ouvrage de Papert en 1980 qui va séduire dans un premier temps le monde de l’éducation en lui offrant une alternative à l’enseignement programmé en informatique distribuée qui inquiète les enseignants qui y voient à la fois une concurrence technologique et une perte de liberté dans le choix des méthodes pédagogiques.

L’horizon de la tortue s’élargir, en effet, avec l’apparition des micro-ordinateurs. Fin des années 70, le MIT Logo Group s’attelle à développer des versions de Logo pour le Texas Instruments TI-99/4A (vidéos le site de Cynthia Solomon) et Apple II, tous deux sortis en 1977. Si la base du langage est commune, les interfaces graphiques sont différents eu égard aux spécificités des deux machines : du fait de son interface de type « jeux video » la version pour le TI 99/4A privilégie les projets orientées vers le mouvement (les dyna-turtles ou lutins) tandis que celle pour l’Apple II donne la préférence au graphique tortue bien connu et à la manipulation de mots et de listes - bien moins connue.

En 1980 est lancé un projet pilote à la Lamplighter School de Dallas où 50 TI 99/4A sont mis à la disposition des 450 élèves. Dans la foulée est lancé un autre projet à New York avec 12 TI 99/4A auxquels s’ajouteront un peu plus tard quelques Apple II. De ces deux projets naisseront des produits commercialisés par la société Terrapin Softwares (qui commercialise également des tortues de sols depuis 1977): le TILOGO sur le TI 99/4A et le Terrapin Logo, devenu par la suite Logo PLUS, sur le Apple II.

En 1980 une nouvelle entreprise est formée, la Logo Computer System Inc. (LCSI) qui va regrouper sour l’égide et la présidence de Papert nombre de chercheurs, enseignants, développeurs et autres programmeurs embarqués dans l’aventure qu’a été le developpement du projet. Dans les années qui suivent, LCSI implémentera sur la plupart des nouveaux microordinateurs le langage avec ses caractéristiques fonctionnelles réclamées par son initiateur Ainsi naissèrent APPLE LOGO , Commodore LOGO, Atari LOGO, ensuite IBM LOGO, et, enfin, Mac LOGO, tous construits sur les mêmes fondements, mais enrichis en fonction de l’évolution technique des matériels. Des versions pour une douzaine de langues furent développées, chose en soi très facile puisque l’architecture permettait de redéfinir aisément les primitives du langage (de même qu’il est toujours possible de « doubler » une primitive par une procédure construite avec celle-ci). La vraie difficulté dans les traductions a résidé, en réalité, dans le choix des termes qui doivent être tiré du langage naturel et ne revêtir aucune ambiguïté. C’est ainsi, par exemple que Papert, après avoir longtemps hésité, donna sa préférence à la traduction canadienne DROITE ou GAUCHE plutôt qu’aux TOURNEDROITE ou TOURNEGAUCHE devenu usuels par la suite sous l’influence française. Petit détail amusant, c’est pourtant au Centre mondial informatique et ressource humaine que Papert qui en était devenu le directeur scientifique, mettra la dernière main à la version française du Apple Logo.

Le plus digne successeur de cette série est certainement le UCBLogo développé par Brian Harvey qui ne cessera d’enrichir le langage informatique dans le strict respect du métalangage tout en indiquant explicitement comment changer ou traduire les primitives et les messages.

D’une manière ou une autre, les nombreuses versions de Logo s’inspireront avec plus ou moins de rigueur des versions LCSI, en ce y compris un Logo de qualité discutable pour les ordinateurs MSX qui domineront de plus en plus le marché de l’éducation, sauf aux Etats-Unis ou Apple reste le favori. Une domination renforcée par l’échec du lancement du PC Junior d’IBM qui pouvait supporter un Logo de qualité et le choix du politique en France de privilégier Thomson MO5 dans le Plan informatique pour tous. Les développeurs se tourneront alors vers ce matériel en ajoutant, par exemple, les tortues dynamiques développées sur le TI 99/4A, le tout fonctionnant avec des cartouches à insérer.

A la même période va se manifester un certain intérêt pour utiliser Logo en tant que langage de programmation proprement dit comme ce sera le cas avec le MacLogo de LCSI et Object Logo de Coral Software, une autre version pour le MacIntosh qui comprenait notamment un compilateur. Mais Logo ne parvint jamais à intéresser les programmeurs professionnels, sans doute à cause de l’étiquette « pour enfant » qui lui collait à la peau.

En 1985, LCSI lance Logowriter qui, outre un interface simplifié et plus intuitif, comprend un traitement de texte et réintroduit les « lutins » (sprite), des tortues qui peuvent prendre des formes et des couleurs différentes.

Parallèlement, [Resnick] et Steve Ocko vont développer LEGO Logo une interface entre Logo et des moteurs, lumières et autres détecteurs utilisables dans des montages avec les fameuses briques Lego. Cette idée d’utiliser des robots n’était pas neuve mais recueillit néanmoins un succès commercial.

Alors que LCSI marque le pas avec Logowriter, Terrapin Softwares et Harvard Associates ; les premiers pout Macintosh, les seconds pour DOS et ensuite Windows, vont continuer à développer des versions qui, bien que bénéficiant des progrès du matériel, se cantonneront à la géométrie Tortue et à la manipulation des mots et de listes.

Par contre, même si les initiatives d'introduction de Logo se multiplient durant cette décennie, il faut bien reconnaître que le volet projet d'apprentissage du projet marque le pas dans un monde de l'éducation qui se révélera très vite frileux (cf supra).

De Logo au constructionnisme (après 1990) la métamorphose de la tortue

Mises en œuvre

Exemple de spirale récusive en MSWLogo

Il existe plus de 130 mises en œuvre du Logo, aux caractéristiques variées.

  • UCBLogo semble être la mise en œuvre multiplateformes la plus utilisée.
  • MSWLogo, sa version Windows gratuite, est beaucoup utilisée dans les écoles britanniques.
  • Comenius Logo, une autre bonne mise en œuvre, est disponible en hollandais, allemand, tchèque, etc.
  • SOLI Logo était une version française largement utilisée dans les écoles primaires dans les années 1980 par le biais des MO5 et des TO7/70.
  • Lego/Logo était un système de contrôle de moteurs et capteurs Lego, beaucoup utilisée dans les écoles dans les années 1990.

D'autres implémentations ont ou ont eu une importance qui mérite d'être signalée : le P_Logo, des éditions Profil ; le jLogo et le XLogo, basées sur des interpréteurs écrit en Java. Le JFLogo a fait ses preuves tout comme une version, du même auteur, permettant de créer des paysages virtuels, Logo3d. Dans le monde des logiciels libres, on peut citer Logo.Net. Enfin, récemment, la plate-forme multimédia MicroWorlds (due à la compagnie LCSI, Logo Computer Systems Inc), une version du langage de programmation basée sur un environnement entièrement graphique.

Une récente évolution du langage permet de faire évoluer des milliers de tortues indépendamment. Il en existe trois mises en œuvre : StarLogo, NetLogo et Logoplus Multi-Gfx. Ces versions permettent d'expérimenter des théories concernant les phénomènes émergents, ce qui est particulièrement intéressant en sciences sociales, en biologie, en physique, ainsi que dans de nombreuses autres sciences. Même si ces langages se concentrent sur l'interaction d'un grand nombre d'agents indépendants, il parviennent à conserver la philosophie du Logo.

Il n'existe aucune norme de Logo, mais uniquement une tradition. Ainsi, on constate des différences importantes entre les différentes évolutions du Logo. Les exemples de code donnés ci-dessous sont censés fonctionner dans la plupart des dialectes du Logo.

Logo, langage informatique

Aperçu du Metalangage

LOGO fait partie de la famille des langages orientés objet.

A l'origine n'existe que 2 types d'objets : les MOTS et les LISTES.

Les MOTS sont des chaînes de caractères. Formellement, les nombres ne sont que des mots particuliers dont la valeur est évaluée automatiquement. Les LISTES sont des suites ordonnées d'objets.

Un mot est signalé par un guillemet, une liste par des crochets. Si un mot n'est pas précédé d'un guillemet, il est évalué comme une procédure (voir ci-dessous).

Ces objets peuvent servir d'entrées - d'ARGUMENTS - à des OPÉRATIONS ou des COMMANDES.

Une OPÉRATION sert à créer un nouvel objet à partir des objets entrant (formellement des ARGUMENTS), qu'elle retourne à une autre opération ou à une COMMANDE. Une COMMANDE dit ce qu'il (l'ordinateur ou le robot) doit faire de cet objet.

Une ligne de programmation est et ne peut être que formulée qu'en terme d'INTRUCTION. Une instruction se compose impérativement d'une - et d'une seule - COMMANDE, suivie d'un objet ou d'une ou de plusieurs OPÉRATIONS qui retournent l'objet qu'elles créent à l'éventuelle opération qui la précède, ou à la commande.

C'est pourquoi taper simplement 5 + 5 (ou SOMME [5 5]) entraîne un message d'erreur du type "Ne sait que faire avec 10", puisque que l'instruction est incomplète du fait de l'absence de commande. De même ECRIS tout seul fera apparaître une message "Pas assez d'entrée pour..." puisque, cette fois-ci l'instruction est incomplète du fait de l'absence d'objet.

Par contre, dans l'instruction ECRIS 5 + 5 affiche 10, l'opération d'addition sur des mots directement évalués comme des nombres retournant son résultat à la commande d'affichage, De même, dans le micromonde "Tortue", AVANCE 5 + 5, fera se mouvoir le robot tortue de 10 pas. Par contre, ECRIS [5 + 5] produira un affichage du texte 5 + 5 puisque il s'agit d'afficher le contenu d'une liste signalée par les [...].

Un groupe d'instructions peut toutefois être écrit sur une même ligne. Sera, donc, licite :

AVANCE SOMME [5 5] TOURNEDROITE 360/10

La seule exception à la règle de commande unique réside dans l'emploi de la primitive REPETE qui accepte comme entrée une liste d'instructions.

REPETE 360 [AV 1 TD 1] (formule du cercle en géométrie LOGO).

Soit une instruction qui commande de répéter 360 fois, deux instructions

Les mots prédéfinis dans le langage sont appelés PRIMITIVES du langage.

Ce langage de base peut s'enrichir de PROCÉDURES' créées par l'utilisateur. Une fois définie, ces procédures font faire partie intégrante du langage et obéissent aux mêmes règles d'écriture. Leurs définitions sont écrites et corrigée dans l'éditeur ED ou, dans certaines versions, définies directement à l'aide de la commande "POUR", suivie du nom de la procédure (ce qui facilite le passage de la commande directe vers la programmation)

Une procédure comprend trois partie : son nom, les commandes et opérations que son activation déclenchera et le mot FIN. Elle peut être définie comme nécessitant une ou plusieurs entrées qui, sont, en réalité des variables pouvant stocker localement des objets. Dans ce cas, leur utilisation exigera impérativement l'introduction d'objets. Taper un mot qui n'est pas une procédure ou une primitive sera signalé comme une erreur "ne sait comment..."

LOGO se présente comme un langage évolutif : les "primitives" ne sont, en réalité que des procédures build in.

Dès lors, en toute logique, une procédure doit pouvoir comprendre des procédures, y compris elle-même', ce qui confère à LOGO la puissance d'un langage récursif.

POUR RECURSION

RECURSION

FIN

est donc licite et crée une boucle sans fin.

Toujours aussi logiquement, une procédure peut être une opération en utilisation la primitive RETOURNE. Ainsi si on définit la procédure suivante :

POUR MULTIPLICATION :X :Y

RETOURNE PRODUIT [:X :Y]

FIN

ECRIS MULTIPLICATION 5 6 affichera 30

Force est de reconnaître qu'en réalité, peu de versions de Logo intègrent ces aspects.

Notation mathématique : préfixe ou infixe.

Exemple :

  • EC SOMME 10 3 ⇒ préfixe : l'opérateur est devant.
  • EC 10 + 3 ⇒ infixe  : l'opérateur est entre les nombres.

Formellement, seule le forme préfixe répond aux exigences de syntaxe comme quoi les objets suivent une opération à laquelle ils servent d'arguments. Tout comme l'interprétation directe d'un nombre, la forme infixe n'existe que parce que cette notation est familière.

Interface graphique : la tortue

Le terme "Tortue" relève d'une tradition née vers 1950 avec les premiers robots construits par le neurophysiologiste William Grey Walter, pionnier de la cybernétique avec ce qu'il appellera ses "tortoises".

Description

A l'origine un robot de sol, la "tortue" est un robot sur l'écran, prêt à explorer son espace. Dans ce cas, le plus connu, elle se présente la plupart du temps sous la forme d’un triangle orienté dans la direction qu’elle va prendre. Elle traîne à l’arrière – et non derrière elle, la nuance est d’importance d’un point de vue pédagogique – un crayon qui lui permet de laisser des traces de son passage. Ce crayon peut être levé (LC) ou remplacé par une gomme. Avec l’évolution du matériel informatique, il pourra également prendre des couleurs différentes.

Au départ, ce robot occupe une position et une orientation précises. Au départ, ce seront le milieu (position 0,0) et le haut de l’écran, c’est-à-dire vers le « Nord », au cap de 0°.

On travaille, donc, en coordonnées polaires et non pas en coordonnées cartésienne, même si le langage comprend la possibilité d’utiliser ces dernières. La Tortue se déplace comme un navire, c’est-à-dire en prenant une direction relative et en parcourant une distance à partir d’un point et d’une orientation de départ.

Mieux, elle se déplace, en réalité sur une sphère, ce qui explique qu’en position normale, elle « ENROULE », c’est-à-dire que si elle disparaît par un côté de l’écran, elle réapparait à son opposé.

Le concept de la « géométrie Tortue » est issu des travaux du Logo Group du MIT et permet à l’apprenant d’explorer un univers géométrique en s’identifiant à la tortue. Ce que Papert appellera la « syntonie avec le corps »

ABELSON & DI SESSA, 1986.

Au départ, l’utilisateur lui donne des ordres simples, « militaires » : AVANCE, RECULE, DROITE, GAUCHE pour la faire se déplacer. Elle se déplace pas à pas et s’oriente par degré ; à chaque 360°, elle fait, donc, un tour complet sur elle-même (théorème du tour complet de la tortue). Du fait de son crayon, elle laisse une trace de son passage sur l’écran (sauf, bien sûr, si on lui a donné l’ordre de la lever).

Par la suite, ces ordres pourront être rassemblés dans des PROCÉDURES qui enrichiront le langage informatique et pourront, par conséquent, elles-mêmes être apellées dans d’autres procédures.

Dans un grand nombre d'interfaces graphique de Logo, l'écran est divisé en 2 parties afin de permettre de visualiser à la fois les instructions qui lui sont données et leurs résultats :

L'une pour le graphique proprement,

l'autre pour introduire et voir les instructions déjà données.

Quelques exemples

Exemple d'image réalisable avec la tortue (cliquez pour voir le code Logo correspondant)

Exemple de définition de procédure : la procédure CARRE devra tracer un carré à l'écran. Le texte est tapé dans l'éditeur du LOGO, puis sauvé.

POUR CARRE AV 100 TD 90 AV 100 TD 90 AV 100 TD 90 AV 100 TD 90 FIN

ou plus simplement

POUR CARRE REPETE 4 [AV 100 TD 90] FIN

Emploi de CARRE dans une autre procédure :

POUR PLCARRE REPETE 36 [CARRE TD 10] FIN

Dans cet exemple,

  • «AV n» signifie «AVance la tortue du nombre de pas n»
  • «TD n», «Tourne à Droite de n degrés (ici de 90 degrés)»

Pour employer PLCARRE, il suffit de taper dans la zone de commande PLCARRE.

Le passage de paramètres à une procédure est possible.

POUR CARRE :LG REPETE 4 [AV :LG TD 90] FIN

Utilisation : CARRE 50 trace un carré de 50 pas de TORTUE.

Pour faire un CERCLE, il suffit de décrire le périmètre de celui-ci

X = 36 Y = 5 répète X [ TOURNEDROITE 360/X AVANCE Y ]

En réalité, il s'agira d'un polygone régulier à 36 côtés, cette formule ne s'applique qu'au versions LOGO où la Tortue ne peut tourner que par des angles de 10°. La rosace présentée en illustration peut donc s'écrire (KTurtle)

COULEURCRAYON 255, 0, 0 X = 36 Y = 5 répète X [ TOURNEDROITE 360/X répète X [ TOURNEDROITE 360/X AVANCE Y ] ]

pour un hexagone

REPETE 6[AV 100 TG 60]

Primitives graphiques

FrançaisCommande ou opérationAnglaisDéfinition
AV n ou AVANCE ncommandeFD n ou Forward nla tortue avance de n pas
RE n ou RECULE ncommandeBK n ou Back nla tortue recule de n pas
TD n ou TOURNEDROITE n (DR n, DROITE n)commandeRT n ou RIGHT nla tortue tourne de n degrés d'angle vers la droite
TG n ou TOURNEGAUCHE n (GA n, GAUCHE n)commandeLT n ou LEFT nla tortue tourne de n degrés d'angle vers la gauche
LC ou LEVECRAYONcommandePU or PENUPLa tortue ne laisse pas de trace
BC ou BAISSECRAYONcommandePD or PENDOWNLa tortue laisse sa trace (par défaut)
CT ou CACHETORTUEcommandeHT ou HIDETURTLEla tortue n'est plus visible sur l'écran graphique
MT ou MONTRETORTUEcommandeST ou SHOWTURTLELa tortue est visible sur l'écran graphique
ENR ou ENROULEcommandeWRAPEnroule l'écran graphique (valeur par défaut)
FENcommandeWINDOWSLa tortue peut sortir du jardin et disparaître de l'écran graphique
CLOScommandeFENCELa tortue ne peut pas sortir du jardin
ORIGINEcommandeHOMERetour au milieu du carré de salade
VEcommandeCS ou CLEARSCREENEfface toutes les traces et restaure l'état initial (tortue au centre et regardant vers le haut)
NETTOIEcommandeCLEANEfface toutes traces de l'écran graphique sans changer la position de la tortue
VTcommandeCT or CLEARTEXTEfface l'écran de commande
FCC ncommandeSETPC nChange la couleur du crayon, n est un entier positif
FCFG ncommandeSETBG nChange la couleur du fond, n est un entier positif
FCB ncommande*****Change la couleur des bords, n est un entier positif
FCAP ncommandeSETH ou SETHEADINGFixe le cap de la tortue de maniere absolue, selon l'angle de n degrés
Ex : 0 CAP vers le haut de l'écran, 90 vers la droite, 180 en bas, 270 à gauche
FPOS [X Y]commandeSETPOS [X Y]Fixe la POSITION de la tortue avec une LISTE de 2 nombres entiers (id : coordonnées cartésiennes).
Ex : LC FPOS [50 35] BC ou avec des variables DONNE "X 50 DONNE "Y 35 FPOS PH :X :Y
CAP nopérationHEADINGretourne l'orientation de la tortue exprimée en degrés
POSITION, POSopérationPOSretourne la position de la tortue en coordonnées cartésiennes.
FrançaisAnglaisDéfinition
n1 + n2n1 + n2Addition de nombres réels - Ex : EC 45.124 + 11 ou EC (+ 45 10 78 23)
n1 - n2n1 - n2Soustraction de nombres réels - Ex :EC 5 - 1.09
n1 * n2n1 * n2Multiplication de nombres réels - Ex :EC 5 * 9
n1 / n2n1 / n2Division de deux nombres réels - Ex :EC 45 / 9
SOMME n1 n2SUM n1 n2Addition de nombres réels - Ex : EC SOMME 45 11
DIFF n1 n2- n1 n2Soustraction de nombres réels - Ex :EC DIFF 5 1
PROD ou PRODUIT n1 n2PRODUCT n1 n2Multiplication de nombres réels - Ex :EC PROD 5 9.45
DIV n1 n2QUOTIENT n1 n2Division de deux nombres réels - Ex :EC DIV 45 11
QUOTIENT n1 n2QUOTIENT n1 n2Division de deux nombres réels - Ex :EC DIV 45 11
RESTE n1 n2REMAINDER n1 n2Reste de la division
ENT nINT nRenvoie la partie entière du nombre réel - Ex :EC ENT 55.75 → 55
ARRONDI nROUND nArrondit un nombre réel - Ex :EC ARRONDI 55.75 → 56
ABS nABS nRenvoie la valeur un nombre réel - Ex :EC ABS -55 → 55
HASARD nRANDOM nRenvoie un nombre entier entre 0 et n-1
RC n ou racine nSQR nRenvoie la racine carré d'un nombre réel - Ex :EC RC 25 → 5
LOG nLOG nRenvoie le logarithme naturel d'un réel
LOG10 nLOG10 nRenvoie le logarithme de base 10 d'un réel
EXP nEXP nRenvoie l'exponentielle d'un réel
SIN nSIN nRenvoie le sinus d'un réel n en degrés - Ex :SIN 30
COS nCOS nRenvoie le cosinus d'un réel n en degrés
TAN nTAN nRenvoie la tangente d'un réel n en degrés
ATAN nATAN nRenvoie tangente d'arc d'un réel n en degrés
PIPI3.141592…
RADIANS nRADIANS nConvertit un angle en radians n en degrés
DEGRES nDEGRES nConvertit un angle en degrés n en radians

Logo, projet pédagogique

en cours de rédaction