ALGOL : Le meilleur langage dont vous n’avez jamais entendu parler

Divulgation : Votre soutien aide à maintenir le site en marche ! Nous gagnons une commission de référence pour certains des services que nous recommandons sur cette page. En savoir plus

ALGOL est probablement le langage le plus influent dont vous n’avez jamais entendu parler.

Les autres langages importants de la même époque – Fortran, COBOL, Lisp – sont toujours très utilisés (relativement parlant).

ALGOL était important en soi, notamment dans le milieu universitaire et les mathématiques. Mais sa plus grande influence a été sur le développement d’autres langages. La plupart des langages utilisés aujourd’hui doivent quelque chose à ALGOL

Brief History of ALGOL

ALGOL a été inventé à l’origine à la fin des années 1950, par un comité mixte d’informaticiens américains et européens, réunis à Zurich. Leur travail a été publié comme le langage maintenant connu sous le nom d’ALGOL 58.

Une deuxième version du groupe, connue sous le nom d’ALGOL 60, est devenue la version standard du langage est d’usage courant.

Cette version, décrite dans le désormais célèbre rapport ALGOL 60, a eu un impact profond sur le domaine de la conception des langages de programmation. ALGOL 68, la dernière version « officielle » du langage n’a pas été bien accueillie par la communauté ALGOL.

ALGOL n’a jamais vraiment pris dans la programmation commerciale, à part quelques applications d’analyse mathématique utilisées par l’industrie financière.

Il a cependant été largement utilisé dans l’informatique et les mathématiques universitaires, et a été le langage standard pour la description algorithmique pendant une bonne partie des années 1980 et 1990.

Influence d’ALGOL sur d’autres langages

La syntaxe et la structure d’ALGOL ont directement influencé un certain nombre d’autres langages, qui ont été connus sous le nom de langages « Algol-like ».

Ces langages incluent Simula, C, Pascal et Ada. Certains de ces liens sont assez directs : Pascal, par exemple, a été développé par Niklaus Wirth, qui avait auparavant construit un dérivé d’ALGOL appelé ALGOL W.

Le membre le plus célèbre de ce groupe est C, qui a engendré sa propre famille de dérivés et de descendants : C++, C#, Objective-C, et D – pour n’en citer que quelques-uns. La syntaxe de PHP est également basée sur C, ce qui signifie que le langage côté serveur le plus utilisé sur Internet retrace sa lignée jusqu’à ALGOL.

Plus profondément encore, ALGOL a influencé la façon dont les langages de programmation sont conçus et décrits.

L’informaticien John Backus a proposé une description de grammaire pour ALGOL (PDF), qui a été utilisée dans le rapport ALGOL 60, édité par Peter Naur. Ce langage de description est devenu connu sous le nom de Backus-Naur Form (BNF). BNF, et EBNF (« extended »), est maintenant la manière standard de décrire la grammaire d’un langage formel.

Ressources ALGOL

ALGOL est un vieux langage, pour la plupart obsolète, et il peut donc être très difficile de trouver des ressources et des informations fiables à son sujet. Heureusement pour vous, vous n’avez pas à le faire. Nous avons parcouru l’internet pour vous apporter les ressources les plus importantes pour apprendre ALGOL.

Tutoriels historiques

Tous les tutoriels valables sur ALGOL ont été écrits il y a longtemps. Heureusement, les meilleurs ont été scannés et mis à disposition en ligne.

  • Un cours de programmation Algol 60 (PDF) est un tutoriel sur le langage, écrit par Peter Naur, l’éditeur du rapport original ALGOL 60 (voir ci-dessous)

  • Informal Introduction to ALGOL 68, Revised Edition (PDF) par Lindsey et Meulen, a été initialement publié en 1977, et est maintenant disponible gratuitement en ligne

  • Programming Algol 68 Made Easy (PDF) par Sian Leitch, est un autre livre classique

  • A Tutorial on Algol 68 (PDF) est un article de journal de 1976, fournissant à la fois une introduction au langage et un aperçu de l’histoire de l’informatique.

Compilateurs

  • Algol 68 Genie est un compilateur ALGOL moderne et multiplateforme – probablement le moyen le plus facile de commencer à travailler avec ALGOL sur votre ordinateur ; ne manquez pas Learning Algol 68 Genie (PDF) par Marcel van der Veer, qui comprend un tutoriel sur le langage et des programmes d’exemple

  • Exécutez Algol en ligne avec l’interpréteur Algol dans le navigateur de Tutorials Point

  • Algol-68 to C est un traducteur/compilateur portable, vous permettant d’exécuter ALGOL 68 dans n’importe quel environnement avec un compilateur C

  • Z80 ALGOL Compiler avec une machine virtuelle, pour exécuter ALGOL sur MS-DOS.

Exemples de programmes ALGOL

  • Hello World ! et Compute the Mean, écrit en ALGOL pour le mainframe Unisys (Burroughs) A-series

  • 99 Bottles of Beer on the Wall, programmé en ALGOL 68 et en ALGOL 60

  • Sieve of Eratosthenes in ALGOL 60 montre un exemple de programme pour trouver des nombres premiers en ALGOL.

Ressources historiques

  • Report on the Algorithmic Language ALGOL 60 (PDF) édité par Peter Naur, est le document de définition original du langage – une lecture indispensable pour tout chercheur ALGOL ; le Revised Report (PDF) fournit la définition finale et officielle du langage ; le Revised Report est également disponible dans une édition critique contemporaine avec des errata corrigés (PDF)

  • Algol68.org est un site Web dédié au langage, avec beaucoup de ressources et de matériel supplémentaires

  • le projet History of ALGOL du Software Preservation Group comprend une foule de matériel ALGOL, y compris des documents originaux, des compilateurs, des articles, des applications et plus encore.

Livres sur ALGOL

  • A Guide to ALGOL Programming (1962) par Daniel McCracken est un livre couvrant ALGOL 60

  • Programming – ALGOL (1969) par D J Malcolme-Lawes est un premier manuel grand public sur le langage, et comprend une introduction historiquement fascinante à la technologie informatique

  • Programming and Problem-Solving in Algol 68 (1978) par Andrew JT Colin est un livre d’entrée de gamme qui introduit à la fois la programmation informatique en général et ALGOL en particulier

  • An Introduction to Algol 68 Through Problems (2014) par Learner et Powell introduit également la programmation informatique en utilisant ALGOL, en utilisant une série de problèmes informatiques pratiques

  • Programmation par études de cas : An Algol Primer (1969) par Chedzoy et Ford est une autre introduction à la programmation par le biais d’ALGOL, mais avec un accent sur les mathématiques.

ALGOL et autres langages

  • Handbook and Guide for Comparing and Selecting Computer Languages (1990) par James Ogden fournit une comparaison intéressante des propriétés, des forces et des faiblesses du Basic, FORTRAN, Pascal, COBOL, PL/1, APL, ALGOL-60 et C

  • Numerical Methods of Mathematical Optimization (1968) édité par Kunzi et al couvre le calcul mathématique en utilisant à la fois FORTRAN et ALGOL

  • Data Structures of Pascal, ALGOL 68, PL/1 et Ada (1986) par Lewi et Paredaens, couvre les concepts sous-jacents, pas les exemples de programmation pratiques, dans les langages inclus

  • FORTRAN, PL/I et les Algols (1979) par Brian Meek compare ces trois importantes familles de langages

  • Expert C Programming : Deep C Secrets (1994) par Peter van der Linden comprend des détails intéressants sur l’influence qu’ALGOL a eu sur le développement du C

  • Algol-like Languages Volume 1 (1996) et Volume 2 (1997) édités par O’Hearn et Tennent est une collection d’essais explorant l’histoire d’ALGOL et son influence sur le développement d’autres langages de programmation.

Summary

ALGOL n’est pas un langage que vous devez apprendre pour obtenir un emploi ou pour devenir un développeur accompli. Cependant, il a été extrêmement influent sur la pratique et la théorie de la programmation informatique.

Si vous vous intéressez à la conception des langages ou à l’histoire de l’informatique, ALGOL est une pierre de touche importante à connaître.

Lectures et ressources complémentaires

Nous avons plus de guides, de tutoriels et d’infographies liés au codage et au développement :

  • Ressources du Fortran : l’un des tout premiers langages de haut niveau, encore largement utilisé en programmation scientifique.

  • Introduction et ressources de COBOL : le langage classique de programmation commerciale.

  • Ressources de Prolog : Prolog était un langage de programmation logique précoce.

Quel code devriez-vous apprendre?

Confus sur le langage de programmation dans lequel vous devriez apprendre à coder ? Consultez notre infographie intitulée Quel code devriez-vous apprendre ? Non seulement il aborde différents aspects des langages, mais il répond à des questions importantes telles que : « Combien d’argent vais-je gagner en programmant Java pour vivre ? »

.

Laisser un commentaire