LSE (langage de programmation)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir LSE.

LSE est un langage de programmation conçu au début des années 1970 par une équipe de Supélec sous la direction d'Yves Noyelle. À l'instar du BASIC, c'est un langage destiné aux débutants en programmation ; il possède une syntaxe francophone.

Histoire[modifier | modifier le code]

LSE est le résultat d'une évolution d'un langage plus ancien, le LSD, conçu lui aussi à Supélec[1].

Son sigle avait initialement deux significations :

  • Langage symbolique d'enseignement,
  • Langage de Sup-Élec,

auxquelles sont venues se joindre, parmi bien d'autres :

  • Langage simple à enseigner,
  • Langage sans espoir.

LSE doit sa diffusion à sa mise à disposition par le ministère de l'Éducation nationale français sur les ordinateurs destinés aux lycées, jusqu'à l'arrivée des PC et compatibles, lesquels n'en ont pas été équipés. Le langage d'origine supportait les procédures (contrairement au BASIC)[2].

Le langage a été révisé en 1983 par Jacques Arsac[3], pour enfin intégrer la notion de boucle explicite indispensable à toute bonne programmation structurée, et se débarrasser définitivement de son « ALLER EN » (goto). À noter, l'introduction des exceptions.

Cela n'a pas empêché LSE de sombrer rapidement dans l'oubli à la suite de l'abandon de celui-ci par le gouvernement français. Il existe cependant une petite communauté d'utilisateurs et le langage a fait l'objet d'une révision proposée par Luc Goulet (LSE2000) qui reprend en bonne partie les propositions de 1983 et inclut des améliorations. Notamment elle ajoute au langage la prise en charge de la programmation orientée objet et aspect. Un wikilivre décrit la proposition LSE-2000.

Justification politique[modifier | modifier le code]

Les ambitions pédagogiques annoncées visaient également à défendre la place de la France (et de son industrie informatique) dans le monde, comme le montre le texte suivant[4], remis au ministère en 1982 par l'EPI (association d'enseignants en informatique) :

« Le LSE doit être, pour l'instant, conservé.
Il est totalement maîtrisé dans son évolution par les enseignants eux-mêmes. Il est apte, par sa normalisation actuelle comme par ses développements en cours (graphique) à répondre aux besoins dans tous les ordres d'enseignement. Il peut être amélioré (Bulletin no 26, p. 14). Son vocabulaire et sa syntaxe française constituent un argument décisif dès lors que l'introduction de l'informatique est réalisée dans les collèges, les écoles et la formation permanente. Il est urgent de se préoccuper d'installer le LSE sur les micro-ordinateurs français destinés au grand public. (l'EPI a pris des contacts avec la CAMIF et THOMSON à ce sujet).
Ainsi la France est en mesure de fournir un modèle complet d'introduction de l'informatique dans l'éducation. Ce modèle peut être un des éléments permettant de retrouver le rôle culturel qu'elle a perdu dans de nombreux pays (des versions du LSE en espagnol et en anglais existent déjà). »

Exemples de programme[modifier | modifier le code]

Les bouteilles de bière[modifier | modifier le code]

  1*CHANSON DES 99 BOUTEILLES DE BIERE
  2*PASCAL BOURGUIGNON, <PJB@INFORMATIMAGO.COM>, 2003
 10 FAIRE 20 POUR N←99 PAS -1 JUSQUA 1
 20 &STROF(N)
 30  AFFICHER['IL EST TEMPS D’’ALLER AU MAGASIN.',/]
 40 TERMINER
100 PROCEDURE &STROF(N) LOCAL S1,S0;CHAINE S1,S0;S1←"S";S0←"S"
110 SI N=2 ALORS S0←"" SINON SI N=1 ALORS DEBUT S1←"";S0←"" FIN
120 AFFICHER[U,' BOUTEILLE',U,' DE BIERE SUR LE MUR.',/]N,S1
130 AFFICHER[U,' BOUTEILLE',U,' DE BIERE.',/]N,S1
140 AFFICHER['EN PRENDRE UNE, LA FAIRE PASSER.',/]
150 AFFICHER[U,' BOUTEILLE',U,' DE BIERE SUR LE MUR.',2/]N-1,S0
160 RETOUR

Anagramme récursive[modifier | modifier le code]

Exemple extrait du papier de Jacques Arsac sur LSE83[3] :

1 CHAINE A,B,BP
5 FAIRE
10 AFFICHER 'A = ' ;LIRE A ; SI A=’’ ALORS FINI IS
11 AFFICHER 'B = ' ;LIRE B ; BP ← B
12
15 R SI LGR(A) # LGR(B) ALORS .FAUX. SINON &ANAG(A,B) IS
20 SI R ALORS AFFICHER A, 'EST ANAGRAMME DE ',BP
21 SINON AFFICHER A, 'N’’EST PAS ANAGRAMME DE 1, BP
22 IS
25 BOUCLER
29
30 TERMINER
31
50 FONCTION &ANAG(U,V) LOCAL J {lgr(u)=lgr(v)}
51 SI U=' ' ALORS RESULTAT .VRAI. IS
52 SI J = 0 ALORS RESULTAT .FAUX. IS
54 RESULTAT &ANAG(SCH(U,2, ' '),MCH(V,J,l, ' '))
55 $&ANAG
99 $

Exemple LSE2000[modifier | modifier le code]

* Quelques déclarations
* Suivies d'une boucle
BOOLEEN A←.VRAI.,B←.FAUX.
ENTIER U,W,X←200
NOMBRE PI←3.14159
CHAINE CHN
TABLEAU DE ENTIER TBL[3,3]
QUEUE DE CHAINE Q[8]
ENSEMBLE DE NOMBRE  NPREMIER←{1.0,2.0,3.0,7.0}

CHN←'Salut'
X ← SELON X ALORS 1,2,3,7,11 SINON 0
POUR U←0 JUSQUA 2 FAIRE
    POUR W←0 JUSQUA 2 FAIRE
        TBL[U,W]←X
    BOUCLER
BOUCLER
TERMINER

Références[modifier | modifier le code]

  1. Yves Noyelle, « La saga du LSE et de sa famille, LSD/LSG/LST », Bulletin de l'EPI, no 54, juin 1989, p. 216–233 ; extrait des actes du colloque sur l'histoire de l'informatique en France (Grenoble, 3-5 mai 1988), Philippe Chatelin (dir.), ENSIMAG, 1988, vol. 2, 428 p. (ISBN 2-950288-70-7) (éd. complète) (ISBN 2-950288-72-3) (vol. 2).
  2. Stéphane Berche, « Comparaison LSE/BASIC », Revue française de pédagogie, no 56, juillet-septembre 1981, p. 33–46.
  3. a et b Jacques Arsac, « LSE83 », Bulletin de l'EPI, no 38, juin 1985, p. 116–137.
  4. « Participation EPI au « schéma directeur » », Bulletin de l'EPI, no 28, décembre 1982.

Sur les autres projets Wikimedia :

Voir aussi[modifier | modifier le code]

Lien externe[modifier | modifier le code]

Compilateur PhoenixLSE (LSE2000)

Nasium-LSE, re-implémentation du LSE Mitra-15/T-1600 http://nasium-lse.ogamita.com