"Le Livre du Maître"


Informatique & Logo - Démarches et progression
Compléments indispensables :
-"Compilation Logo" Olivier Schmidt-Chevalier
DiaInformatica 1990
-Logithèque des programmes Logo d'Olivier S. C. (1982-1999)


Dans ces pages consacrées à Logo, je supprime les parties du "Master Book" traitant des "séances" sur la Bureautique, la PAO, le Multimédia, Internet, 'l'informatique &', etc. ; Logo servant toujours parfaitement d'introduction et/ou d'outil à tous ces enseignements.


L'ordinateur : machine électronique programmable traitant des informations (données). L'information passe par la communication (écrits, images, sons). Son alphabet = 0 1. Un interprète = un langage informatique, exemples : ADA, C, FORTH, LISP, LOGO, PASCAL, PROLOG.

SL1: On peut utiliser deux programmes 'outils' d'OSC écrits sous P_LOGO v 1.0 pour ATARI. Le principal (DESSINER.LOG) offre de dessiner sur "feuille" ou sur "papier quadrillé" à l'aide des premières lettres correspondants aux actions désirées (A pour Avance de 10 pas) ; mais on commencera par une de ses adaptations (TRACER.LOG) qui offre les mêmes possibilités, mais à l'aide des chiffres du Pavé Numérique (direction logique selon place des chiffres). [Le portage en P_LOGO pour Compatibles PC ne permettant pas l'utilisation du Pavé Numérique, un troisième programmes, DIRIGER.LOG, adapte le TRACER.LOG pour ATARI qui, sous "PC" n'utilise plus que les 4 flèches du clavier. Du coup, DIRIGER.LOG passe par certaines touches du clavier "lettres"]. Ensuite, il faut imaginer les exercices rendus possibles par ces 3 outils et les adapter selon les enfants et les besoins. Chaque outil est accompagné d'un ou deux exemples d'exercice. Enfin, des réalisations d'enfants à partir de ces outils, se trouvent soit à Dessins, soit à Images dans le Contenu de la Page "Papy Logo".

SL2: Les débuts avec Logo avec le jeu scénique de "l'enfant Tortue" dirigé par ses camarades et où l'animateur "traduit" (interprète). 4 ou 5 premières primitives. AVance, REcul, TourneDroite, TourneGauche, VideEcran, VideTexte, CacheTortue, MontreTortue. L'utilisation des touches : BARRE D'ESPACE, RETURN (ENTRéE, ENTER), BACKSPACE est un pré requis indispensable et évident.

SL3: Le "Labyrinthe" : montrer cette spirale à 90° sur écran (ainsi que d'autres spirales colorées ; si l'on veut). Découverte avec "enfant Tortue" de la démarche : prendre un crayon de couleur, avancer un peu, tourner d'1/4 de tour à droite ou à gauche, prendre un autre crayon, avancer un peu plus, tourner d'1/4 de tour dans le même sens que la première fois, et ainsi de suite. Le "Labyrinthe" terminé, soit l'animateur peut placer la Tortue et changer sa couleur du crayon afin que l'enfant passe au jeu de revenir au début du Labyrinthe sans trop raser les murs ni les dépasser, ou l'on peut demander de recommencer en changeant le Tourne de 90° en sa moitié puis en 45*3. Avec les plus jeunes, on simplifiera en ne parlant pas encore de couleurs.

SL4: Les 16 couleurs (de 0 à 15) de P_LOGO (version DOS). Travail sur le vocabulaire (turquoise, magenta, fushia ; brillant, mat). Manipulation libre avec acquis de SL3 et précédentes.

SL3d1: A ce stade des connaissances des Primitives Logo, l'ont peut envisager une première séance consacrée au Logo_3d de Jean-Francois Lucas ; ou : lorsque la Tortue se prend pour un hélicoptère. Ainsi que je le mentionne à la Page consacrée à ce produit, un des avantages de passer à la 3d est de pouvoir corriger l'amalgame des enfants entre AVANCE et Monter, RECULE et Descendre. Ceci étant, on ne passera à cet outils qu'à partir d'enfants du CE2, voir, de CM1. Avec cet outil, on revoit aussi des notions de Géographie, entre autres. Proposer une mission : décoller, se rendre vers un endroit précis, atterrir. Demander que soit utilisées toutes les Primitives de déplacement ; je pense aux Pas chassés avec DROITE et GAUCHE, parfois plus efficaces qu'un tourner-avancer-reprendre le Cap pour éviter une montagne.

SL5: Le carré plein (colorié ; différent du carré remplis). Procédures et exemples se trouvent à "Logo-Lego" dans les Pages Papy Logo.

SL6: Le rond plein (même remarque que pour le carré plein). Procédures et exemples se trouvent à "Logo-Lego" dans les Pages Papy Logo. Donner et expliquer FCFG (couleurs fond écran).

SL7: La couronne (ou "rond vide"). C'est l'introduction des primitives LC et BC ; voir aussi (toujours) avec enfant Tortue. Même but qu'en S9 (dont 1/4, 1/2, 3/4, etc.).

SL6' et SL7': Ronds pleins de plus en plus petits, couronnes idem. Réalisation de la "Cible". On aperçoit ces réalisations dans "Watshow".

SL8: Tenir une des promesse de début d'année quand à Logo devenant l'élève des enfants. Notions de apprendre et enseigner. Présentation de l'outil indispensable, l'EDITEUR LOGO (le cahier de Logo) ; comment y écrire, s'y déplacer et corriger (DELETE, BACKSPACE) ; comment y entrer puis en sortir (ouvrir et fermer le cahier). Puis comment, dans cet outil, enseigner des mots nouveaux (1 par 1) à Logo ; notions de programmes et de procédures. Les primitives POUR et FIN et la syntaxe d'un programme.

Spéciale: "Taguer" son prénom, l'écrire avec la Tortue. Deux exemples : PAPYLOGO.LOG et NeXT.LOG.

SL9: La Mosaïque ; première réalisation "Logo-Lego" (utiliser les acquis précédents afin de construire quelque-chose). Commencer par la regarder se faire sur le poste maître (MOSA.LOG d'OSC). Découverte rapide des étapes avec enfant-Tortue. Donner les dimensions de l'écran : verticale = 140 * horizontale = 280 (ce qui, de VE, fait: 70 * 140) ;
[pour un écran ATARI ; voir pour vos écrans]. Le programme de la Mosaïque et ses sous procédures : Début, CarrePlein, Ligne, Marge.

SL10: Comment écrire sur l'écran graphique. Visualiser sur le poste maître une version autre de NeXT.LOG. Décomposer la démarche, primitive après primitive ; puis en ligne au niveau supérieur; puis dans l'Editeur.
Soit, par exemple : ME 25, VT, FTCAR [1 1] ou [2 2], FCURS [3 6] (colonne ligne), FCT 0 à 15 (couleurs),
EC "MOT ou EC [plus d'un mot]{une liste ; donc}.

SL10': Comment mettre en page sous Logo. Exemples avec KOAN.LOG (devise pédagogique du CMIRH) et PROVERBE.LOG (CM2 St. Ouen, 1991-92).
Mise en page (Logo) {suivant taille caractères et longueur texte voulu : en taille 2, c'est sauter 2 à 3 lignes}. 38 colonnes et 23 lignes en taille 1, 18 colonnes et 11 lignes en taille 2. La démarche d'un exemple : écrire à quelqu'un (centré), quelque-chose et signer en bas de page. [valeurs à vérifier selon écran et Logo].
Remarque : à ce stade, on peut bifurquer sur un logiciel de traitement de texte.

SL11: Une Rose des Vents est perpétuellement affichées dans l'Atelier, ce n'est pas la première fois qu'on a l'occasion de la faire remarquer ; cependant, je la souligne tout particulièrement au moment d'aborder les Polygones réguliers. Démo avec POLY.LOG et de jolies réalisations. Découvrir le raisonnement des 360 / Nombre de Côtés (ou d'angles) par le dialogue ; rapide passage avec enfant-Tortue.

SL12: Suite de la précédente avec les Cercles (360, 180, 120, etc.; toujours la règle des 360 / N.C. !) avec belle démo. Découverte (voir S14). Avec les résolutions actuelles, ont peut faire l'impasse sur les cercles < que 360 ; mais, si possible, pas sur le raisonnement.

Spéciale: Les Etoiles ; celles qui suivent la règle "autour" des 360°. Puis Rosace et explications de FCC CC + 1. DEMOSTAR.LOG, ainsi que VITRAIL.LOG. Aussi, une démo de rosaces de rectangles pleins ; à laisser trouver ou à expliciter, selon classe.

SL13: la procédure devenant sous-procédure (CARRE pour ROSACE) et/ou le REPETE de REPETE avec les Rosaces de polygones, de cercles, d'étoiles.

SL14: Les Etoiles et leurs Rosaces avec variables. Explications, introduction des paramètres. Une variable Taille, puis une seconde qui sera Nombre de fois (à répéter). Pour SL14' : à trouver le Rectangle avec variables et le rapporter la séance suivante.

SL14': voir les propositions pour les Rectangles. Passer aux Polygones avec variables. Commencer à parler d'Incrémenter ou Décrémenter (un programme utilisant la procédure POLY et pouvant faire tous les Polygones - de 3 à 12 & de 360 à 10 - d'un coup). C'est alors que j'introduis les tests (SI [] soit: si, alors, en Logo). Pour ce faire, l'enfant Tortue est, à ce stade, remplacé par les enfants qui me dictent en répondant à mes questions et j'écris au tableau.

SL14": Troisième "leçon" sur les variables et deuxième sur Incrémenter/Décrémenter et les tests avec la Cible paramétrée.

Spéciale: Voir ou revoir les dimensions écran (cf. SL9). Le Quadrillage est une transformation de la page graphique en papier quadrillé dont chaque carré fait 10 pas Tortue. C'est devenu un outil dans 2 autres outils, à savoir, DESSINER.LOG et TRACER.LOG (cf. SL1). Ici, suivant la classe, on peut passer par l'enfant Tortue ou la découverte abstraite après visualisation du model sur le poste maître : QUADRI.LOG. Cette Spéciale entre dans la série des appropriations de l'espace ; entre autres.

Spéciale: Manpower (d'après Léonard de Vinci), si le maître veut une introduction sur les déplacements en double coordonnés. C'est former un carré avec ses médianes et ses diagonales (toutes !) avec uniquement FPOS. On part du centre (comme Logo) et on s'oriente en songeant à la Rose des Vents (N, NE, E, SE, S, SW, W, NW). C'est savoir où l'on est et où l'on veut aller. MANPOWER.LOG. Si l'on revient sur cette réalisation, l'on peut parler de CAP ; ça ne sert à rien en l'occurrence, mais ça permet de dialoguer autour d'un mot et d'une notion. [Manpower1 - Manpower2 - Rose des Vents]

SL3d2: Ces notions acquises, l'on peut envisager de débuter dans la création de son propre paysage virtuel avec le Logo_3d déjà rencontré plus haut. Attention : ce n'est pas si simple ! Créer un paysage, c'est indiquer ses coordonnées en X, en Y, le Cap, l'Altitude ; les coordonnées X et Y sont doubles : positives et négatives (X et -X ; Y et -Y). La spéciale 'Manpower', ci-dessus, peut aider à introduire certains de ces points. Je vois ce type de programmation pour des "Niveau 2", le Secondaire ; pas avant. Plus tard - si la version pour Windows rejoint celle pour DOS -, il sera possible de créer ses propres missions, voir, des jeux. Mais ceci est une autre histoire...

SL15: Une réalisation "Logo-Lego" (cf. SL9) avec le Camion. Pré-requis: le CarrePlein (RectanglePlein), le Carré (Rectangle), le RondPlein, la Couronne, les dimensions écran, les procédures et l'Editeur. Model CAMION.LOG.

SL16: Une autre réalisation "Logo-Lego" avec le Village. C'est avec un Carré on a des murs, avec un Triangle équilatéral on a un toit et on fait alors une Maison. Avec un RectanglePlein on a un tronc, avec un RondPlein on a un feuillage et on fait alors un Arbre. Avec plusieurs Maison et un Arbre on fait un Village (le Soleil, en prime, est possible). VILLAGE.LOG. Pré-requis: les Polygones réguliers; le CarréPlein (pour le RectanglePlein), le RondPlein, les dimensions écran, Procédures et Editeur.

SL17: Les Spirales où l'on se souvient du Labyrinthe (cf. SL3), où l'on révise ses notions de variables et d'incrémentation (et/ou) décrémentation. Une séance avec les enfants qui me dictent et j'écris (efface) au tableau véléda, suivant un dialogue où on découvre par un jeu de questions-réponses. (Voir "Watshow").



SL18: Introduction des primitives PHRASE, LISTE, PREMIER, DERNIER, SP, SD. Explications orales où l'on voit comment réagit Logo (sur machine, donc). Exemples au Tableau. Montrer le DONNE. Outil possible: QUEST.LOG, SALUT.LOG {pas forcément in logitèque mais/et réalisés devant les enfants).

SL19: Et si l'on nommait enfin la Récursivité ?!... Je parle de "L'Histoire sans fin" (un de mes buts, avec les enfants, étant de les amener à lire). Les outils possibles seraient, alors, AGAIN.LOG, ARBRE.LOG, EPELLE.LOG.

Spéciale (exercices divers): Enseigner à Logo à donner les initiales d'un nom (prénom ; une liste, quoi) entré ; à compter de 0 à 10 puis à rebours (faire un compte à rebours avec introduction de ATTENDS) ; jouer à faire une pyramide d'un mot (4 pyramides possibles). Outils JEULIST.LOG.

Spéciales: Histoire de Langages. Cette historique est à rechercher dans ses documents personnels ou sur Internet.

Spéciale: L'outil UNIX_OSC écrit en Logo Thomson et pour l'instant non-portable sous P_Logo (à cause de bugs de ce dernier). Cet outil montrait des simulations d'écrans de stations sous Unix; l'on pouvait voir les Finger, une messagerie (Mail), entrer dans Logo (à défaut de Lisp), se connecter, se déconnecter, se voir refuser par la machine (Denied) à cause d'un Password erroné ; parler de ce qu'est un gros système, un réseau (Transpac) et bien d'autres choses. J'en profiterai pour parler de différents S.E. et interfaces (DOS, TOS, SYSTHEM 7, GEM, WINDOWS, NeXTSTEP, etc.).

Spéciale: La Tour de Hanoï. Passer par mes Démos en Logo ainsi que ma Doc autour du raisonnement sur Hanoï ; le tout (Hanoï_OSC.DOC et HANOI_OSC.LOG) forment un ensemble (écriture abandonnée lors du passage d'ATARI à "PC" où ça devenait trop complexe. Voir la "Compilation Logo").

Les "en plus" possibles : comme outils, BONJOUR.LOG, ANNUAIRE.LOG, TABLE.LOG (de multiplications), pour des "niveau" SL18. La Tortue automate-qui-rebondit sur l'écran avec REBOND.LOG pour des "niveau" SL14'' + la Spéciale MANPOWER.

Pour les séances jusqu'à SL19, j'ai utilisé les outils du livre et de la logithèque cités tout au début, ainsi que de <<L'Esprit s'envole, mes premier pas en Logo - OSC - CMI, 1985>> ; pour la suite, je me sert de <<Logo, Lisp, Prolog; une démarche pour apprendre - OSC - CMI, 1986>>.


LE POINT : afin de voir ce que les élèves ont retenus de leur initiation à Logo, montrer CHRONOS.LOG, une pendule à cadran avec aiguilles, puis LIP.LOG, une horloge digitale sonnant les 1/4 d'heures et les heures; sur le poste maître. Puis, demander qu'ils réalise la seconde (Lip). Une variante possible, comme exercice, est le RADAR avec point lumineux et sonore à chaque passage du faisceau sur l'endroit idoine.

SL20: Voir les diagonales et les arcs de cercles avec les règles mathématiques suivantes, respectivement :
Diagonale = côté * 1.41
Arc de Cercle = rayon * 0.0174
(+ précautions d'usage ! Cf. "Compilation Logo")
LOGO_LEGO : après SL20, montrer PAYSAGE.LOG (champ épis de blés + bleuets d'où s'envole un oiseau - OSC Logo Thomson). En demander la réalisation si elle est possible sur votre version de Logo, selon, aussi, votre machine.

REVISION: ARBRE.LOG et EPELLE.LOG (cf. SL19). Voir et/ou revoir la récursivité avec ces 2 exemples ne sera certainement jamais superflu.

SL21: Ré-écrire REPETE en Logo. Ce n'est pas renommer, mais recréer une primitive. Nous voyons encore la récursivité et découvrons EXECUTE. Utiliser cela pour, avec MASTER.LOG, rendre servile notre machine.

SL22: Révision de SL18 et travail sur d'autres primitives traitant les listes. C'est, aussi ré-écrire COMPTE, créer OCCURance, EFFACE et REMPLACE. C'est encore découvrir RENDS ou RETOURNE.

SL23: 2 mots sur les bases de données et choisir un exemple et une application parmi des centaines avec DISMOI.LOG capable de répondre à la question :
<<Combien d'habitants en Colombie ?>> par un <<28.000.000>> (chiffre attesté en 1983 !).

SL24: Poursuivre ce travail sur les listes et de nouvelles Primitives en créant des procédures plus destinées aux "matheux" comme: MOYENNE, CARRE (le carré d'un nombre et pas la figure géométrique), ABSOLU, FACTORIELLE.

SL25: Création des "jeux" DEVINE_LETTRE, DEVINE_NOMBRE, de CALCUL MENTAL, BABYL.

SL26: 3 thèmes (programmes) possibles sur la Grammaire. Enseigner à Logo à mettre un LE, un LA ou un L' devant un mot (selon ce mot). Lui enseigner les pluriels en S et ceux en X selon les mots; en tirer un "jeu" où selon un mot en OU, Logo le terminera par S ou X.

SL27: De la grammaire, passer à la conjugaison de verbe du premier groupe sans chercher à régler les problèmes posés par des verbes tels que "illustrer" et "manger". Pour un programme de "jeux" sur ce thème, j'ai 3 sous-procédures.

SL28: Le graphisme n'est pas exclu dans le secondaire (et +), surtout au moment où l'on commence à bien "sentir" la récursivité. Nous allons donc parler de Alexander von Khor, de Benoît Mandelbrojt en créant des FRACTALES. Selon les exemples apparaissant sur le poste maître, nous parlerons allemand avec DREI.LOG, verrons un génial auteur de S.F. avec SIMAK.LOG ..... Logo mène à tout avec Papy Logo !

SL29: La séance où l'on parle un peu de bureautique avec la création d'un Fichier avec Menu en Logo ; ce - et depuis le primaire -, afin de montrer aux enfants que l'on peut se servir d'outils (logiciels), mais que l'on peut aussi les/en créer avec un Langage. Cette politique rappelée ici est la même que celle de la SL10' précédant, pour moi, un outil de traitement de texte ; on appelle cela une démarche pédagogique. Outil : FICHIER.LOG, ANNUAIRE.LOG. Bien spécifier, une fois terminé, que certains Logo ont des Primitives spéciales pour traiter ce genre de programmes.

Il est évident que, après cette série de séance (SL29), l'on peut jeter un oeil sur le Minitel, un Tableur, Super Base ou autres outils de bureautique ou utilitaires. A ce stade, revenir aussi sur une présentation plus approfondie (mais pas lourde) de DOS\Windows (puisque TOS\Gem ou NextStep sont, hélas, à oublier).

SL30: Revenons-en aux listes et à la programmation. Créer INVERSE (mot) et INVERSE (liste). Apprendre ce qu'est un Palindrome et enseigner à Logo à les reconnaître. Puis créer un "jeu vicieux" dans lequel tout nombre qu'on donnera devra aboutir sur un Palindrome et ne stoppera pas tant qu'il n'y sera pas parvenu et, forcément, y parviendra. Eh oui ! Je rentre 78, ce n'est pas un Palindrome, le programme "bidouillera" jusqu'à m'obtenir 4884 qui, lui, est un Palindrome (PALINDRO.LOG, PALIN.LOG & leurs sous-procédures).

SL31: Dédiée à Umberto ECO ; commencer la séance en expliquant pourquoi (cf. "Le Pendule de Foucault") ; parler du musée concerné... Eh oui, nous en sommes aux Anagrammes ! J'ai une solution en 2 procédures; on peut (?) faire "mieux". Ce nouvel outil créé, l'on peut écrire un programme plus vaste capable de vous dire si votre mot est un Palindrome et, avec Factoriel, combien de solutions sont nécessaires, sachant, avec Compte, combien de lettres composent votre mot ! (ANAGRAME.LOG + SL précédentes idoines en pré-requis; je rappel que je parle de progression et non de séance tirées au hasard). Aussi : S ne signifie pas "jour à x heures la séance" ; un S peut prendre un certain nombre de séance que je n'indique pas systématiquement.

SL32: La Tour de Hanoï (voir Spéciale à Primaire et, évidement, utiliser cet outil). Cette introduction faite avec une discutions acharnée autour de la règle mathématique idoine, voir comment programmer une Démo de ce "jeu" (écrire une version jeu interactif en P_Logo serait inélégant à cause de Bugs dûs à la paresse de Profil (je l'avais réalisé en Logo LCSI sur Apple). Nous avons, donc une procédure "moteur" et une d'appel.

SL33: Attaquons-nous à un autre problème que, cette fois, nous pourrons écrire sous forme de jeu jouable à 2. Hélas, à ma connaissance, la version de Seymour Papert et Cynthia Solomon où l'on peut jouer contre l'ordinateur, n'est possible que sur un Apple avec le Logo LCSI. J'en ai, toutefois, tiré une version aisément portable sur "tous" Logo (Act, DIALOGo, Sturgon, Win_Logo... Quand au Logo pour Windows 95 et + de Jean-François Lucas, c'est à voir...). Il est question du JEU de NIM où nous avons, par exemple, 9 bâtonnets style Mikado, chaque joueur peut prendre de 1 à 3 bâtonnets; le perdant est celui qui devra prendre le(s) dernier(s) bâtonnet(s).
Evidement, il-y-a un "truc" que l'on enseigne à ORDINATEUR dans la version LCSI... Maintenant, attention, la portabilité se complique si votre Logo ne connait pas les primitives SIVRAI, SIFAUX, TEST ; il faut, alors, d'une certaine manière, les créer. Je dois l'avoir fait en F_Logo (Digital) d'après ma version pour Thomson ; mais je dois vérifier si j'ai eu le temps de le porter sous P_Logo. Palier aux lacunes est parfois un bon exercice (ré-écrire une Primitive, cf. SL 21) ; hélas, on n'a pas toujours le temps selon le programme et le contexte de/pour la classe concerné.

SL34: Quittons un peu le rivage des "matheux" pour voguer du côté des "philosophes". Cet ensemble de procédures servant au programme SOCRATE.LOG qui donne son nom au thème de la séance est, disons-le, aussi bien sur le plan philosophique que informatique, et "tiré par les cheveux", et "plein" de tricheries. Toutefois, cela nous permet - d'une manière agréable -
de jouer avec une notion tout juste apprise dans la classe concernée : <<une pétition de principe>>. La notre sera la suivante : <<Sachant que Socrate est un humain est que tout humain est mortel...>>, le programme décidera si un mot entré, choisi dans une Base de Données, est, mêmement mortel ou non. Ce programme nous permet, surtout, de retravailler sur le traitement des listes. Nous voyons aussi comment "coder" des informations afin d'en faciliter la reconnaissance par ce que l'ordinateur reconnaît et traite plus aisément et spontanément : les chiffres. Nous révisons, enfin, comment interdire à un "joueur" de répondre hors de la question telle que celle-ci l'invite, clairement, à le faire ; je veux dire : enseigner à Logo comment refuser la bêtise ou le manque d'attention, bref à obliger le "joueur" à, tout simplement, suivre les instructions.


Ici, surtout, mais, déjà dès la "rentrée" en Secondaire, l'informatique s'est partagée en différents Ateliers. Je détail plus celui s'occupant de l'informatique en générale (culture, etc.) et des langages, d'une part; et de celui qui suit un cursus scolaire allant du CP à l'université. Les autres Ateliers seront ouverts aux élèves du même cursus, certes ; mais, plus particulièrement, aux élèves des LEP et autres classes techniques préparant à un BEP ou à un CAP. Enfin, à ces élèves, la porte de l'Atelier Informatique & Langages n'est pas fermée (je songe même à des vas-et-viens entre les 2 types d'ateliers ; cependant, suivant le cursus suivi, l'élève à plus besoin soit de ceci, soit de cela). Les autres Ateliers sont: Bureautique, PAO, Graphismes, MAO, DAO, CAO, Multimédia, Hypertexte, Robotique, Internet (dont création de Pages) ; pour les plus importants.

Aboutir sur une présentation légère de quelques notions d'électronique. Passer aux opérateurs logiques, Tables de vérité, parler de George Boole ; bref, montrer, expliquer sans assommer.


SL35: Utiliser à nouveau TABLE.LOG (de multiplication) vu soit en annexe supplémentaire en Primaire, soit en exercice au début du Secondaire. Porter ce programme en Pascal. Commenter et passer à un autre cheminement (pour arriver ou non à C).

SL36: LOGO-LISP-PROLOG. Nous sommes toujours dans une optique d'initiation (certes, parfois poussée) plutôt que de formation (à) "pure et simple". Nous avons déjà vu un exemple de ré-écriture d'une Primitive Logo (REPETE avec REFAIRE.LOG, SL21). Ce genre d'exercice est classique lorsque l'on aborde Lisp. Nous pourrions ré-écrire le DERNIER de Logo, pour ce faire, il nous faudrait créer INVERSER ainsi que nous l'avons fait (SL30) ; en Lisp, ces primitives existent déjà (LAST, INV). Qu'importe, ré-écrivons Last de Lisp en Lisp (Compile. Logo ch.26 p. 53). Ce petit "jeu" nous permet aussi de remarquer l'importance des () en Lisp ; "ancêtre" de Logo {lequel "aime" bien les []}. Mais, fi de NIL [()] ;-), une fois désignée cette familiarité et l'enfant renvoyé à l'Atelier Lisp ; présentons-lui - toujours par le biais de Logo -, un autre langage qu'il ira aussi approfondir dans l'Atelier idoine.

SL37: Bien évidemment, je parlais de Prolog ; encore une fois, une introduction à, une liaison, montrer la continuité. N'apprenons pas comment déclarer des règles, mais, voyons juste comment déclarer des faits, puis ce que l'on peut en tirer, enfin, insister sur la différence avec Logo (comme Lisp, Pascal, etc.). L'exemple est un classique rabâché :

(aime (Jean Marie))

étudier tout ce que l'on peut obtenir de la "ligne Prolog" ci-dessus (Compile. Logo Ch.26 p.53) ; demander d'imaginer tout ce que nous pourrions obtenir si nous avions déclarer d'autres faits (comme Paul Virginie, Sylvain Sylvaine, Marc Sophie, Titi Sylvestre, Florent Vanessa ...) ... Plus "sérieusement", proposer une interprétation (et non une traduction) de cela en Logo avec une procédure toute "philosophique". Cet exemple (LOVE.LOG, Compile. Logo p.54) est uniquement là en tant qu'exercice mettant en pratique les acquis précédents. D'autres exemples - et parlant de Prolog et faisant pratiquer Logo - sont à trouver.

SL38: Une séance qui se déroulera sur plusieurs créneaux. Il s'agit d'un excellent exercice en Prolog (tenter-le en Lisp !...) que nous allons interpréter en Logo. Le thème est tout aussi classique que le fameux <<Les Missionnaires et les Cannibales>>, et c'est un bon exemple pour tout ce qui nous intéresse depuis SL32 (et un peu avant...) ; l'Intelligence Artificielle.

Voici l'histoire : Il était une fois, sur les rives d'une rivière, un Passeur et sa Barque, un Loup, une Chèvre et un Chou. L'homme devait transporter ces 3 passagers de la Rive-gauche à la Rive-droite. Comment devait-il s'y prendre sachant que : il ne peut transporter qu'un passager à chaque voyage et que, s'il n'a rien à craindre du loup, celui-ci aimerait bien dévorer la chèvre
laquelle, mettrait bien le chou à son menu du jour.Faire tout d'abord une analyse sous forme de dialogue ; puis commencer à écrire la suite de procédures qui feront un programme permettant à un joueur de se mesurer au problème posé. Nous pouvons avoir quelques manières différentes d'aborder ce programme ; nous allons, cependant, utiliser nos acquis. Pour ma part, je propose un programme avec 8 sous-procédures (FABLE_I.A. in Compile. Logo p.55-56). Ensuite (ibidem pages suivantes), je mentionne que d'autres analyses sont possibles ; donc, d'autres démarches. Je ne m'arrêterai que sur celle intéressant ma démarche pédagogique (programme & progression). Ce sera une analyse où nous utiliserons VRAI, FAUX, (1, 0), XOR, AND, les puissances de 2. Ce nouveau programme permettra une meilleure interractivité dans le jeu. Enfin, expliquer comment, avec Prolog, nous pourrions affiner encore plus notre analyse, ce qui rendrait notre jeu encore plus interactif. Nous pourrions aussi plus aisément vérifier si l'homme est ou non déjà dans la barque, si celle-ci est pleine ou vide, si elle se trouve bien sur cette rive-ci et non celle-là et vérifier que tel élément est à tel endroit et non à un autre (etc.) ...


LEXIQUE :

SL = Séances Langages (Logo, Lisp, Prolog, Pascal, C),
Spéciales = en sus, en général.


Olivier Schmidt-Chevalier - Paris, 02/02/93 - (v.12/99) ----- RETOUR -----


  Retour à l'Index de la NSC

 Hit-Parade