Langage naturel - Langage formel
Votre Publicité sur le Réseau |
Conception : Clarification - Explicitation
- Les langages naturels sont ceux que les êtres humains utilisent pour communiquer. Ces langages n'ont pas été mis au point délibérément (encore que certaines instances tâchent d'y mettre un peu d'ordre) : ils évoluent naturellement.
- Les langages formels sont des langages développés en vue d'applications spécifiques. Ainsi par exemple, le système de notation utilisé par les mathématiciens est un langage formel particulièrement efficace pour représenter les relations entre nombres et grandeurs diverses. Les chimistes utilisent un langage formel pour représenter la structure des molécules, etc.
- Exemple:
- - Les langages de programmation sont des langages formels qui ont été développés pour décrire des algorithmes et des structures de données.
Comme on l'a déjà signalé plus haut, les langages formels sont dotés d'une syntaxe qui obéit à des règles très strictes. Par exemple, 3+3=6 est une représentation mathématique correcte, alors que $3=+6 ne l'est pas. De même, la formule chimique H2O est correcte, mais non Zq3G2
Les règles de syntaxe s'appliquent non seulement aux symboles du langage (par exemple, le symbole chimique Zq est illégal parce qu'il ne correspond à aucun élément), mais aussi à la manière de les combiner. Ainsi l'équation mathématique 6+=+/5- ne contient que des symboles parfaitement autorisés, mais leur arrangement incorrect ne signifie rien du tout.
Lorsque vous lisez une phrase quelconque, vous devez arriver à vous représenter la structure logique de la phrase (même si vous faites cela inconsciemment la plupart du temps). Par exemple, lorsque vous lisez la phrase « la pièce est tombée », vous comprenez que « la pièce » en est le sujet et « est tombée » le verbe. L'analyse vous permet de comprendre la signification, la logique de la phrase (sa sémantique). D'une manière analogue, l'interpréteur Python devra analyser la structure de votre programme source pour en extraire la signification.
Les langages naturels et formels ont donc beaucoup de caractéristiques communes (des symboles, une syntaxe, une sémantique), mais ils présentent aussi des différences très importantes :
- Ambiguïté
Les langages naturels sont pleins d'ambiguïtés, que nous pouvons lever dans la plupart des cas en nous aidant du contexte. Par exemple, nous attribuons tout naturellement une signification différente au mot vaisseau, suivant que nous le trouvons dans une phrase qui traite de circulation sanguine ou de navigation à voiles. Dans un langage formel, il ne peut pas y avoir d'ambiguïté. Chaque instruction possède une seule signification, indépendante du contexte.
- Redondance
Pour compenser toutes ces ambiguïtés et aussi de nombreuses erreurs ou pertes dans la transmission de l'information, les langages naturels emploient beaucoup la redondance (dans nos phrases, nous répétons plusieurs fois la même chose sous des formes différentes, pour être sûrs de bien nous faire comprendre). Les langages formels sont beaucoup plus concis.
- Littéralité
Les langages naturels sont truffés d'images et de métaphores. Si je dis « la pièce est tombée ! » dans un certain contexte, il se peut qu'il ne s'agisse en fait ni d'une véritable pièce, ni de la chute de quoi que ce soit. Dans un langage formel, par contre, les expressions doivent être prises pour ce qu'elles sont, « au pied de la lettre ».
Habitués comme nous le sommes à utiliser des langages naturels, nous avons souvent bien du mal à nous adapter aux règles rigoureuses des langages formels. C'est l'une des difficultés que vous devrez surmonter pour arriver à penser comme un analyste-programmeur efficace.
Pour bien nous faire comprendre, comparons encore différents types de textes :
- - Un texte poétique :
Les mots y sont utilisés autant pour leur musicalité que pour leur signification, et l'effet recherché est surtout émotionnel. Les métaphores et les ambiguïtés y règnent en maîtres.
- - Un texte en prose :
La signification littérale des mots y est plus importante, et les phrases sont structurées de manière à lever les ambiguïtés, mais sans y parvenir toujours complètement. Les redondances sont souvent nécessaires.
- - Un programme d'ordinateur :
La signification du texte est unique et littérale. Elle peut être comprise entièrement par la seule analyse des symboles et de la structure. On peut donc automatiser cette analyse.
- Pour conclure, voici quelques suggestions concernant la manière de lire un programme d'ordinateur (ou tout autre texte écrit en langage formel).
- - Premièrement, gardez à l'esprit que les langages formels sont beaucoup plus denses que les langages naturels, ce qui signifie qu'il faut davantage de temps pour les lire. De plus, la structure y est très importante. Aussi, ce n'est généralement pas une bonne idée que d'essayer de lire un programme d'une traite, du début à la fin. Au lieu de cela, entraînez-vous à analyser le programme dans votre tête, en identifiant les symboles et en interprétant la structure.
- - Finalement, souvenez-vous que tous les détails ont de l'importance. Il faudra en particulier faire très attention à la casse (c'est-à-dire l'emploi des majuscules et des minuscules) et à la ponctuation. Toute erreur à ce niveau (même minime en apparence, tel l'oubli d'une virgule, par exemple) peut modifier considérablement la signification du code, et donc le déroulement du programme.
Conceptions erronées et origines possibles
- ...............................................................................
................................................................................ ................................................................................
Conceptions: Origines possibles
- ...............................................................................
................................................................................ ................................................................................
Conceptions liées - Typologie
Concepts ou notions associés
Références
| |||
---|---|---|---|
Sur le Portail Questions / Réponses |
Sur Portail de Formation Gratuite |
Sur des sites de Formation |
Sur DidaQuest |
Langage naturel - Langage formel sur : Wikipedia / Wikiwand / Universalis / Larousse encyclopédie / Khan Académie | |||
Sur Wikiwand : | |||
Sur Wikipédia : | |||
Sur Wikiversity : | |||
Sur Universalis : | |||
Sur Khan Académie : |
Éléments graphique
Stratégie de changement conceptuel
Questions possibles
Bibliographie
Pour citer cette page: (naturel - Langage formel)
ABROUGUI, M & al, 2020. Langage naturel - Langage formel. In Didaquest [en ligne]. <http:www.didaquest.org/wiki/Langage_naturel_-_Langage_formel>, consulté le 22, décembre, 2024
- ..................
- ..................
- ..................
- ..................
Votre Publicité sur le Réseau |