Présentation
Auteur(s)
-
Bernard ROBINET : Professeur des Universités - Directeur Scientifique de l’École Nationale Supérieure des Télécommunications
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleINTRODUCTION
Sans ordinateurs, l’informatique ne serait pas ce qu’elle est devenue : c’est un truisme ! Sans programmes, non plus.
L’importance prise ces dernières années par la programmation est considérable et le développement de l’industrie dite des services est largement dû à la possibilité technique d’écriture de très vastes ensembles de programmes construits pour réaliser des tâches compliquées.
Que ces ensembles de programmes ou logiciels soient bien plus complexes que des programmes à caractère didactique, ils nécessitent tous cependant l’usage de langages de programmation pour les représenter : langages primitifs comme ceux des machines ou langages évolués plus proches des langues humaines.
C’est à ces derniers qu’est consacrée la présente rubrique ainsi qu’à leurs conditions d’emploi.
VERSIONS
- Version archivée 1 de déc. 1989 par François GENUYS
- Version courante de oct. 2018 par Christian QUEINNEC
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
1. Différentes classification des langages
Tout langage de programmation est défini par sa syntaxe, sa sémantique et ses usages pragmatiques ; la syntaxe définit les constructions grammaticales licites, la sémantique associe à tout élément du langage sa signification et les usages pragmatiques sont les conséquences des choix d’implantation et des caractéristiques des ordinateurs sur lesquels sont exécutés les programmes. L’utilisation de langages de programmation suppose en effet qu’il existe des traducteurs, compilateurs ou interpréteurs, convertissant ces langages en langage machine sur des ordinateurs divers : les particularités de ces derniers influencent les comportements et altèrent ou modifient la sémantique (cf. article Compilateurs Compilateurs).
Comme l’a écrit François Genuys, une caractéristique sans doute unique d’un langage de programmation est d’être un produit industriel d’importance économique considérable dont le développement, pour les parties syntaxiques et sémantiques, ne nécessite que des ressources modestes. Pure conception de l’esprit, un langage de programmation peut être défini par un homme seul : ce fut le cas, par exemple, de Niklaus Wirth, père du langage Pascal.
Cette relative facilité de développement explique en partie la prolifération des langages évolués depuis la naissance de FORTRAN au milieu des années 50 ; cette multiplicité se retrouve dans cette rubrique où nous avons dû faire un choix fondé essentiellement sur le succès, l’originalité et la qualité des concepts.
Esquissons ici une typologie fondée sur le style de programmation et la façon de « calculer » ; on a l’habitude de qualifier les langages d’impératifs, fonctionnels, déclaratifs ou à objets ; chacune de ces classes possède son représentant à savoir et dans l’ordre, FORTRAN, LISP, PROLOG et SMALLTALK.
Un langage est impératif quand il s’appuie sur les notions d’affectation, d’itération, de test et, souvent, de rupture de séquence : qualifié de fonctionnel, il repose sur les concepts d’alternative et de définition implicite de fonctions, appelée récursivité...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Différentes classification des langages
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive