Présentation
En anglaisRÉSUMÉ
L’informatique permet à des textes d’agir sur le monde tangible. La programmation est l’art d’écrire et de faire évoluer ces textes. Les langues naturelles n’ayant pas les qualités de concision, d’inambiguïté et de simplicité attendues, les langages informatiques ont été conçus pour être adaptés à ces nouveaux objectifs. Cet article est consacré à ces langages.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleABSTRACT
In computerized data processing, scripts act on the real world. Programming is the art of writing such scripts. Natural languages are not concise, simple or inambiguous enough for this task, and so special computing languages were and are still being invented. This article is dedicated to these languages.
Auteur(s)
-
Christian QUEINNEC : Professeur émérite de Sorbonne Université
INTRODUCTION
Sous le vocable de « langages informatiques » sont regroupés tous les langages servant à décrire les multiples entités dont use l’informatique. On y trouve les langages de programmation mais aussi les langages de description et tout ce qui structure les textes participant aux traitements de données. C’est une histoire qui commence à foisonner à partir de 1950 mais qui demeure toujours active aujourd’hui. Les présentations classiques suivent souvent l’ordre chronologique et présentent les langages majeurs, décennie par décennie , , ou bien, adoptent un point de vue catégorisant les langages de programmation en grandes familles impérative, fonctionnelle, logique et objet . Sans dénier l’intérêt de ces présentations, nous préférons présenter ici les forces sous-tendant les évolutions de ces langages.
KEYWORDS
Computer | programming | programming language | description language
VERSIONS
- Version archivée 1 de déc. 1989 par François GENUYS
- Version archivée 2 de juin 1994 par Bernard ROBINET
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 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. Langages
Tout est à la base fondé sur les langages ! Puisque l’on ne saurait parler de quoi que ce soit s’il n’existe pas, au préalable, au moins une description. Une description est un texte (un ensemble de symboles) régi par des règles (une grammaire) stipulant ce qui est licitement énonçable ou pas. À ces conventions d’ordre syntaxique doit être associée une sémantique qui donne un sens à ce qui est écrit.
C’est à partir de ce sens que l’on peut raisonner – pour écrire un texte procurant un certain effet, – pour savoir si un but est atteignable, – pour déterminer si deux énonciations sont similaires, etc. Les sémantiques sont elles-mêmes des textes rédigés (le plus souvent) en anglais (dans les normes, recommandations, RFC, etc.) ou dans des systèmes formels (BNF, W-grammaire, lambda-calcul, sémantique naturelle, pseudo-code, etc.) ces derniers étant eux-mêmes, à leur tour, régis par grammaire et sémantique.
Aux syntaxe et sémantique est souvent associée une pragmatique fixant des conventions supplémentaires d’emploi du langage : les tours de main, les habitudes, les bonnes pratiques. Ce sont souvent ces pratiques qui soudent les développeurs, leur permettent de se comprendre et les font évoluer en tant que communauté.
La catégorie des langages de programmation est la mieux connue. Un langage de programmation décrit à la fois la structuration des données et les algorithmes qui les transforment. La catégorie des langages de description est plus vaste encore puisque si elle inclut les langages de programmation qui ne sont, en premier lieu, que des descriptions de traitement, elle comprend aussi ses langages qui décrivent des domaines souvent spécialisés comme des Latex entre données (SQL DDL, JSON, RDF…), des mises en page (LaTeX, HTML, CSS…), des formats de chaînes de caractères (RegExp, XML schema…) mais aussi des algorithmes synchrones (Esterel), des algorithmes de manipulation d’arbres (XSLT), etc.
TEST DE VALIDATION ET CERTIFICATION CerT.I. :
Cet article vous permet de préparer une certification CerT.I.
Le test de validation des connaissances pour obtenir cette certification de Techniques de l’Ingénieur est disponible dans le module CerT.I.
de Techniques de l’Ingénieur ! Acheter le module
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 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
Langages
BIBLIOGRAPHIE
-
(1) - Wikipedia - History of programming Language. - https://en. wikipedia.org/wiki/History_of_programming_languages (page consultée le 11/07/2018).
-
(2) - HUNAULT (G.) - Histoires des langages de programmation. Histoire : passé, présent, avenir. - http://www.info.univ-angers.fr/~gh/hilapr/histoire.htm (page consultée le 11/07/2018).
-
(3) - THBZ - The Programming Languages Genealogy Project. - Everything2 media https://www.everything2.com/index.pl?node_id=858421 (page consultée le 11/07/2018).
-
(4) - LEVENEZ (E.) - Computer Languages History. - https://www.levenez.com/lang/ (page consultée le 11/07/2018).
DANS NOS BASES DOCUMENTAIRES
ANNEXES
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 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
QUIZ ET TEST DE VALIDATION PRÉSENTS DANS CET ARTICLE
1/ Quiz d'entraînement
Entraînez vous autant que vous le voulez avec les quiz d'entraînement.
2/ Test de validation
Lorsque vous êtes prêt, vous passez le test de validation. Vous avez deux passages possibles dans un laps de temps de 30 jours.
Entre les deux essais, vous pouvez consulter l’article et réutiliser les quiz d'entraînement pour progresser. L’attestation vous est délivrée pour un score minimum de 70 %.
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 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