Quel est le langage de programmation LOGO?

Exemple d'écran de MSWLogo
Exemple d'écran de MSWLogo

Logo est à 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é.

Sur le plan informatique, Logo est un langage de programmation orientée objet réflexif. Plus lisible que le Lisp, il en est une adaptation, ce qui lui a valu le surnom de « Lisp sans parenthèses ». Essentiellement connu pour la fameuse tortue graphique, mais est également capable de manipuler des listes, des fichiers et des entrées/sorties… ce qui en fait un langage adapté à l'approche des concepts de l'algorithmique, ce dont on pourra trouver un exemple dans les ouvrages Computer Science Logo Style de Brian Harvey, professeur à l'Université de Berkeley.

Bien que langage complet de haut niveau, Logo a été paradoxalement victime de sa tortue - pourtant présente en Pascal - qui l'a cantonnée à une image faussement puérile, ses fonctionnalités de base étaient supérieures aux divers BASIC des années 1980. Il était, à l'époque, un bon marchepied vers la programmation structurée et modulaire et connaît toujours des développements dans le cadre de recherches en intelligence artificielle.

Philosophie du projet

Logo propose une approche de l’utilisation de l’informatique délibérément constructiviste. C’est l’apprenant, enfant ou adulte expérimenté, 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 à cet effet (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 fin. Ce sera le cas grâce au langage informatique Logo proprement dit.

L’environnement Logo se veut, donc, imprégné de la pensée de Piaget : il offre à l’apprenant - quel que soit son niveau ou son âge - 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 a été victime de cette tortue qui l'a cantonné à une image puérile ainsi également que d'un 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. Or, celle-ci n'est pas l'apanage de Logo : elle existe également dans Pascal 7.0.

Dans le développement du projet, l’intelligence artificielle contribuera à différents titres comme celui d’offrir un milieu propice à la recherche fondamentale, 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. Il inspire également la notion d'émergence pour comprendre ce que pourrait entraîner l'usage de Logo dans l'apprentissage.

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 évoluent 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 (en). 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.

Il succédait à une première tentative de créer un langage de programmation conçu pour les enfants, TELCOMP, basé sur le FORTRAN. À 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 reçut 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é à 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écennie des années 1970 au M.I.T. mais aussi ailleurs comme à l’Université d’Edimbourgh 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érimentation est marquée par des recherches ponctuelles au sein d’écoles voisines (dont la Brookline Public Schools) et donna lieu à des publications à diffusion restreinte (« papers »), les Logo Memos, relatant les enseignements tirés de ces expériences.

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 1980. Deux facteurs vont contribuer à cet 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 par 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’élargit, en effet, avec l’apparition des micro-ordinateurs. Fin des années 1970, le MIT Logo Group s’attelle à développer des versions de Logo pour le Texas Instruments TI-99/4A et Apple II, tous deux sortis en 1977. Si la base du langage est commune, les interfaces graphiques sont différentes eu égard aux spécificités des deux machines : du fait de son interface de type « jeux vidéo », la version pour le TI 99/4A privilégie les projets orientés 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 naîtront 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 Apple II.

En 1980, une nouvelle entreprise est formée, la Logo Computer System Inc. (LCSI) qui va regrouper sous 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 développement du projet. Dans les années qui suivent, LCSI implémentera sur la plupart des nouveaux micro-ordinateurs le langage avec ses caractéristiques fonctionnelles réclamées par son initiateur. Ainsi naquirent 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). En réalité, la vraie difficulté dans les traductions a résidé dans le choix des termes qui doivent être tirés 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 devenus 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, y compris un Logo de qualité discutable pour les ordinateurs MSX qui domineront de plus en plus le marché de l’éducation, sauf aux États-Unis où 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 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.

À 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 et même un débuggeur. 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 une interface simplifiée et plus intuitive, 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, Mitchel Resnick (en) 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 pour 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 de 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).

Les expériences s'arrêtent souvent à une ou deux semaines, c'est-à-dire le temps de découvrir et de s'amuser avec la tortue graphique comme telle que celle menée par l'INRP en France, sauf dans des ateliers privés ou des écoles privilégiées par un projet pédagogique qui favorise une approche active de la part de l'apprenant.

Ce n'est d'ailleurs pas un hasard si Logo reçoit un accueil privilégié en Argentine où l'éducation est fortement imprégnée de la pensée piagétienne.

Après 1990, de Logo au constructionnisme ; les métamorphoses de la tortue

Au début des années 1990, Logo est considéré comme un produit vieillot et obsolète en Amérique du Nord. Logowriter n’a plus guère évolué depuis sa sortie. Quant au Logo classique, il n’a pas intégré les apports de la rapide évolution des ressources informatiques. En Europe, l’engouement des premiers temps a fait long feu après l’échec des plans informatiques visant à introduire les nouvelles technologies de l’information dans l’enseignement. À l’exception de la Grande-Bretagne qui l’utilise comme un outil pédagogique sans rapport avec le projet d’apprentissage sous-jacent, son usage est devenu anecdotique dès le milieu des années 1980 dans un contexte pédagogique largement défavorable à sa philosophie.

Ce n’est pas nécessairement le cas partout. Par exemple, un ambitieux programme est lancé au Costa Rica par une « ancienne du MIT», Clotilde Fonseca, qui va faire école dans une douzaine de pays d’Amérique Latine. Au Japon, Logowriter va également faire son chemin au début des années 1990.

Un regain d’intérêt se manifestera vers le milieu de la décennie où l’on verra s’effacer Logo, tel qu’il était défini au début des années 1980, au profit du développement de nouveaux produits et d’un nouveau concept : le constructionisme (en).

En fait, si le nom de Logo va peu à peu disparaître, les idées qui en formaient le substrat, subsistent dans les grandes lignes. Même si elles intègrent de nouvelles fonctionnalités, les conceptions à la base du langage informatique restent les mêmes : un langage « naturel » avec des mots « de tous les jours », que l’on peut combiner et enrichir de nouveaux mots ;

Par contre, le projet éducatif, lui, s’est affiné. D’abord plutôt vague sur son option pédagogique dans sa description du « facilitateur » en milieu Logo, Papert opte résolument pour une pédagogie active, en insistant sur l’importance de créer des choses - « making things - lorsqu’on apprend ainsi que sur celle de la verbalisation dans la construction de nouvelles connaissances.

Plus tard, Resnick, le concepteur des nouveaux micromondes, va encore compléter le concept en y ajoutant une dimension de travail de groupe.

Sur le plan informatique, MicroWorlds Logo va ajouter dès 1993 de nouvelles fonctions à l’environnement Logo en se basant sur l’interface MacIntosh : de nouveaux outils de dessins, un éditeur de formes, un générateur de musique et la possibilité d’importer des images ou des sons. De même, il prend en charge les tâches multiples de sorte que des objets peuvent être animés ou créés de manière indépendante : la tortue n’est plus toute seule.

Au MIT, une brique programmable apparaît dans le cadre de Lego Logo qui rend inutile une liaison avec un ordinateur.

Par ailleurs, Brian Harvey va continuer à enrichir le langage de base : sur le plan purement informatique UCBLogo, dans sa version distribuée librement, comprend 344 primitives.

À l’autre extrémité, dans le domaine de la recherche, Mitchel Resnick va développer avec StarLogo (en) des environnements où des milliers de « tortues » peuvent interagir.

Plus récemment, le même Resnick proposera avec Scratch un nouveau projet de type Logo intégrant une implémentation visuelle et dynamique du langage de programmation Smalltalk basé sur Squeak. Squeak est l'héritier du Logo dans l'approche qu'il propose de l'interaction informatique-éducation. Il s'inscrit dans les cadres théoriques de la psychologie du développement et des idées de gens comme Baldwin, Piaget ou Vygotski.

RETOUR

  • 5 Utilisateurs l'ont trouvée utile
Cette réponse était-elle pertinente?

Articles connexes

Qu'est-ce qu'un nom de domaine?

Un nom de domaine (NDD en notation abrégée française ou DN pour Domain Name en anglais) est, dans...

Qu'est-ce qu'un médias sociaux?

L’expression « médias sociaux » est de plus en plus utilisée et tend à remplacer le terme de Web...

Qu'est-ce DNS?

Le Domain Name System (ou DNS, système de noms de domaine) est un service permettant de traduire...

Qu'est-ce que le Cloud Computing?

Le cloud computing, ou l’informatique en nuage ou nuagique ou encore l’infonuagique (au...

Quel est le protocole Internet IPv6?

IPv6 (Internet Protocol version 6) est un protocole réseau sans connexion de la couche 3 du...

Powered by WHMCompleteSolution