RECHERCHE :
Bienvenue sur le site de Michel VOLLE
Powered by picosearch  


Vous êtes libre de copier, distribuer et/ou modifier les documents de ce site, à la seule condition de citer la source.
 GNU Free Documentation License.


Langage et « langage »

1er mai 2004


Liens utiles

- Cours de linguistique générale
- Pour un génie sémantique
- Concevoir un référentiel
- Mettre en place une administration des données
- Interaction entre langage connoté et langage conceptuel

-
Qualité du concept d'ordinateur

Les défauts du vocabulaire de l'informatique suscitent dans l'entreprise de fréquents malentendus. Ici nous tentons d'éclaircir la relation entre langage naturel, langage théorique et langage de programmation.

Structure et évolution du langage naturel

Selon Saussure[1], la « langue » est un « système de signes », le signe étant le doublet constitué d’un signifiant phonétique et d'un signifié conceptuel. Le terme « langage », lui, associe « langue » et « parole », cette dernière désignant les aspects physiologiques et acoustiques de l’élocution et de l’audition.

Saussure estime impossible de dire lequel, du signifiant ou du signifié, est premier dans le signe. Pour décrire la formation des signes il utilise une image suggestive (p. 156) : « La pensée, chaotique de sa nature, est forcée de se préciser en se décomposant. Il n'y a donc ni matérialisation des pensées, ni spiritualisation des sons, mais [...] la "pensée-son" implique des divisions et la langue élabore ses unités en se constituant entre deux masses amorphes. Qu'on se représente l'air en contact avec une nappe d'eau : si la pression atmosphérique change, la surface de l'eau se décompose en une série de divisions, c'est-à-dire de vagues ; ce sont ces ondulations qui donneront une idée de [...] l'accouplement de la pensée avec la matière phonique ».

Cette intuition puissante tourne le dos à la conception qui ne verrait dans la langue que l’habillage de concepts préexistants : la création des signes est à la fois, inséparablement, création des concepts et de la notation sonore qui conditionne leur identification, leur recyclage dans le raisonnement ou l’imaginaire, ainsi que leur communication.

Les structuralistes, soucieux de mettre à jour les contraintes qui délimitent ce qui peut se dire dans une langue existante, ne se sont intéressés ni à la création, ni à l’évolution de la langue que Saussure avait pourtant évoquées : comme ils voulaient souligner les contraintes qu’impose l'architecture existante, il n'ont pas cru opportun de faire apparaître les procédés qui permettraient de s’en affranchir ou tout au moins de les déplacer.

Par ailleurs Saussure n’accorde pas de place aux connotations, ces liaisons entre les signes qui confèrent au langage sa puissance suggestive. Du coup, il ne mentionne pas les associations d’idées qui, appuyées sur le réseau des connotations, sont si fécondes pour la réflexion et si efficaces pour la communication.

Il nous faut donc (1) libérer la linguistique du carcan dans lequel les structuralistes l’ont enfermée, et considérer la création et l’évolution des langues ; (2) enrichir le modèle de Saussure pour tenir compte des connotations ; (3) considérer le mécanisme des associations d’idées et son rôle dans la formation de la pensée comme dans la communication.

On rencontre alors un fait qui semble contredire Saussure : il arrive, lorsque l’esprit suit le cours des associations d’idées ou des raisonnements, qu’il identifie un concept pour lequel il lui faut trouver un nom. Dans ce cas la création du signifié serait antérieure à celle du signifiant.

Nous n’irons pas plus loin dans cette analyse qui visait à explorer quelques propriétés du langage que vous et moi parlons, transmis par des parents qui l’avaient eux-mêmes reçu de l’histoire de l’humanité. On l’appelle « langage naturel » pour le distinguer des « langages de programmation » qu’utilise l’informatique.

Langage naturel, langage théorique, langage de programmation

Il n’est pas innocent d’utiliser le même mot « langage » pour désigner le « langage  naturel » et les « langages de programmation ». Rien en effet, dans les réflexions de Saussure comme dans les remarques qu’elles  nous ont suggérées, ne s’applique aux langages de programmation.

Les informaticiens de profession connaissent la différence entre le langage de programmation et le langage naturel. Ils savent que le langage de programmation ne doit pas comporter de connotations : l’automate ne pouvant pas interpréter les suggestions, il faut lui donner des consignes parfaitement explicites. La vie courante a par ailleurs tôt fait de leur enseigner que, dans la conversation entre êtres humains, l’explicitation parfaite qu’exige la programmation n’est pas de mise.

Il apparaît qu’il faut distinguer au moins trois types de langages :

-          1) le langage naturel, connoté, suggestif, alimente une pensée qui fonctionne par association d’idées ; il est exploratoire et créatif, mais au risque d’une erreur logique (contradiction interne) ou d’une inadéquation à l’action.

-          2) le langage théorique, fondé sur des définitions dont toute connotation doit être écartée, procure la précision nécessaire à l’action. Aux concepts purs ainsi dégagés il associe des hypothèses causales.

Nota Bene 1 : Les mathématiques sont le langage théorique pur ; elles explorent, à partir des définitions ou axiomes (« what is ») les implications du principe de non-contradiction ; elles constituent une préparation à l’action en général.

Nota Bene 2 : Associer la théorie à l’action peut surprendre. Cependant il faut bien, pour agir, préciser sur quoi l’on va agir et faire des hypothèses sur les causalités que l’action fera jouer. Le fait que cela soit souvent implicite n’enlève rien à cette opération ; il est vrai toutefois qu’il faut distinguer la théorie implicite, à l’œuvre, de la théorie explicite qui seule se prête à la communication et à la discussion scientifique.

Nota Bene 3: La théorie, qui ne doit comporter aucune connotation, s’élabore en polémiquant avec le langage naturel : l'association d’idées n’a aucune valeur dans l’expression d'une théorie. Cela n’empêche pas les associations d’idées de jouer un rôle essentiel dans la réflexion qui précède et motive l’élaboration théorique. Elles sont comme ces échafaudages qui faut ôter après la construction de l’immeuble, mais sans lesquels on n'aurait pas pu le construire.

Nota Bene 4 : Les théoriciens attribuent au langage théorique le monopole de la rigueur. Cependant le bon usage du langage naturel est, dans son ordre, aussi exigeant que la construction théorique. Il n’est pas facile de bien utiliser la puissance allusive de la langue. C’est tout l’art de la poésie et ceux qui se moquent des poètes auraient du mal à égaler le pouvoir suggestif de La Fontaine :

Un jour, sur ses longs pieds, allait, je ne sais où,
Le héron au long bec emmanché d’un long cou
[2].

-          3) le langage de programmation vise à faire faire par l’automate un ensemble bien défini d’opérations. On est là dans le monde du « how to », du « savoir-faire », de la mise en pratique. Les contraintes de cohérence logique s’appliquent de façon impérative (dans le domaine de l’action, le principe de non-contradiction s’applique absolument), tout comme les contraintes physiques de l’automate (taille des mémoires, puissance des processeurs, débit des réseaux). Les données sont définies par des concepts purs, sans connotations, tout comme dans le langage théorique.

Pour pouvoir formuler les commandes adressées à l’automate, le langage de programmation fournit une syntaxe, c’est-à-dire (1) des règles d’écriture permettant de distinguer programme et commentaire, donnée et fonction, divers types parmi les données, et aussi (2) des « formes spéciales » conventionnelles et des fonctions préprogrammées. Il ne fournit pas – mais il est prêt à les accueillir – les tables de codage qui associent à chaque donnée sa définition selon le langage conceptuel (pur) de l’utilisateur.

Un langage théorique est plus pauvre que le langage naturel – il est rare que son vocabulaire comporte plus de quelques dizaines de termes – mais il va plus loin dans l’exploration des relations entre concepts. Par ailleurs son formalisme garde peu de traces des intentions qui ont suscité la construction de la théorie, ce qui déroute souvent l’intuition du non expert. 

Un programme informatique est encore plus éloigné de cette intuition parce qu’aux contraintes purement logiques, que l’on comprend aisément après un apprentissage, il ajoute les conventions résultant des contraintes de l’automate et dont la compréhension demande une expertise peu courante.

Ainsi, le langage naturel facilite la communication entre les êtres humains grâce aux allusions et suggestions qui lui permettent, fût-ce au prix d’une imprécision, de transmettre plus d’information que n’en contiennent ses termes pris au pied de la lettre. Le langage théorique par contre est fait pour penser l’action dont il désigne les objets avec précision ; mais étant peu suggestif il se prête plus à la collaboration dans l’action qu’à la communication avec ceux qui sont loin de l’action. Le langage de programmation est, lui, adapté pour commander l’automate qui va assister l’action humaine. Il n’est pas conçu pour être lu ni compris par un être humain, mais pour être pratiquement efficace[3].

Danger des faux amis

Les disciplines intellectuelles mettent beaucoup de temps à mûrir, à construire leur vocabulaire et leurs méthodes. L’informatique, avec à peine plus de cinquante ans, est une discipline très jeune. Les spécialistes passionnés qui l’ont construite ont dû faire flèche de tout bois : peu leur importait le choix des mots car, comme le disait Hilbert, une fois que l’on sait de quoi l’on parle peu importe si l’on dit « chaise » et « table » au lieu de « droite » et « point »[4]. Par ailleurs ce langage spécial procurait à cette corporation naissante une barrière à l’entrée et un signe de reconnaissance, ce qui est apprécié par ceux qui souhaitent protéger une corporation plutôt que de l’ouvrir à la coopération intellectuelle avec d’autres.

Il en est résulté la pollution du vocabulaire de l’informatique par une foule de faux amis parmi lesquels figure le mot « langage » lui-même[5].

Ainsi le mot « logique » désigne en informatique non pas les règles formelles dont le respect garantit l’exactitude d’un raisonnement, mais les règles syntaxiques auxquelles doit se conformer tout langage de programmation. Le mot « sémantique », qui désigne en linguistique le sens d’un texte pour le distinguer de sa forme, désigne en informatique l’interprétation d’un langage sous forme de structures mathématiques (typage des données etc.)

La normalisation élague les synonymes, élimine les homonymes et clarifie les concepts. Mais parfois elle grave de faux amis dans le marbre. Celui qui s'efforce d'améliorer le vocabulaire se fait alors reprocher de s'écarter du langage « standard » ; mais que faire si ce langage est dans l'entreprise source de contresens répétés ? Pour quelques mots bien bâtis, comme « informatique » ou « logiciel », combien de monstres a confortés la normalisation ? Quelle qualité linguistique peuvent d'ailleurs avoir des compromis établis par des comités où s'affrontent les intérêts économiques des industriels ? N'est-il pas trop courant que l'on prétende imposer, sous prétexte de « rigueur », le particularisme d'un jargon professionnel ?

L’un des faux amis les plus révélateurs est le mot « donnée », d’utilisation si courante. La « donnée » est la matière première de l’informatique, qu’elle soit saisie par un opérateur, extraite d’un fichier ou calculée. Ce sont les données qui remplissent les mémoires, que les réseaux transportent et que traitent les processeurs.

Mais les connotations qui entourent le mot « donnée » suggèrent qu’elles sont données par la nature, qu’elles reflètent la réalité même et qu’il n’y a rien à chercher au-delà. Or la donnée, avant d’être saisie dans un fichier, résulte d’un choix. Le fichier client contient les données sur les clients de l’entreprise. Il a fallu choisir, parmi les aspects du client, ceux qui méritent d’être notés ; puis il a fallu définir les attributs qui transcriraient ces aspects ; enfin, il a fallu observer ces attributs. La donnée résulte d’une observation (ou mesure), elle-même conditionnée par une définition découlant d’un choix. Si elle est donnée par l'entreprise à l'informatique, elle n'a pas été donnée par la nature à l'entreprise.

Ayant choisi ce que l’on voulait observer, on doit se demander si ce choix a été le bon. Alors se pose la question de la pertinence : la définition doit répondre aux besoins du raisonnement et de l’action, ou – pour revenir à notre exemple – on ne doit observer sur le client ni plus ni moins que les données nécessaires pour gérer la relation avec lui.

*  *

On est ici tout près de Saussure : alors que le « signe » est un doublet formé d’un concept et d’un son, la « donnée » est un doublet formé d’une définition et d’une mesure. La sémantique de la donnée réside dans sa définition ; sa physique réside dans la mesure que fournit l'observation et que l’informatique enregistre. La sémantique de la donnée est tout entière du côté du professionnel qui va se faire assister par l’informatique, car lui seul peut définir ses priorités et indiquer les observations qui sont nécessaires. La qualité de cette sémantique conditionne celle de l'informatique ; c'est dans la maîtrise de cette qualité, dans la construction du langage de l'entreprise, que réside le problème fondamental pour l'informatisation.

Il saute aux yeux en effet que si la sémantique du métier est mal bâtie, si l’on y code n’importe comment, l’informatisation de l’entreprise sera ratée quelle que soit la qualité formelle des programmes informatiques. Or dans beaucoup d’entreprises les identifiants sont de mauvaise qualité, les référentiels mal conçus, les données de référence mal gérées : la plupart des défauts des systèmes d'information ont leur origine non dans l'informatique elle-même, mais dans le manque de rigueur sémantique des maîtrises d'ouvrage.

Ces défauts-là risquent d’échapper à l’attention des informaticiens. Ayant réservé le mot « sémantique » aux composantes abstraite, opérationnelle, dénotationnelle et axiomatique de leur « sémantique formelle », il ne leur reste plus pour désigner la sémantique du métier que l’expression « sémantique informelle », entachée de connotations quelque peu péjoratives comme « floue », « mal définie », « peu rigoureuse » etc. Cela détourne l’entreprise de l’effort de rigueur nécessaire pour construire son référentiel, comme des méthodes qu’il faut utiliser pour cela.

Cette cloison entre l’informatique et la sémantique de l'entreprise interdit en pratique de penser l’automatisation, d’articuler convenablement l’automate aux processus de production. Ainsi on ne saura pas négocier ni même définir la perte en information (au sens de Shannon) qui est nécessaire pour obtenir un gain en signification, alors que cette démarche constitue le cœur même de la publication des statistiques. Cela rendra pratiquement impossible la conception de tableaux de bord judicieusement sélectifs.

A l’extrême les données sont considérées comme un minerai dont seule compte la volumétrie mesurée en nombre d'octets. Toutes sont traitées pêle-mêle, de la même façon, qu’il s’agisse d’identifiants ou d’attributs, de données saisies, de données intermédiaires ou de résultats – alors que pour la sémantique de l’entreprise les identifiants doivent être parfaits et les données saisies doivent être vérifiées. Si les informaticiens ont explicité pour les échanges de données des critères de qualité comme les propriétés ACID (atomicité, cohérence, isolation, durabilité), rares sont les entreprises qui ont mis en place une administration des données garantissant la qualité de leur sémantique.

La négligence envers la sémantique de l’entreprise est d’autant plus dommageable que l’assistance par l’automate s’est étendue à tous les processus de production et s’articule désormais de façon intime avec le travail des êtres humains. Le succès de l’informatique la confronte à un défi intellectuel : maîtriser la sémantique de l’entreprise, définir judicieusement l’articulation entre l’automate et l’être humain, obtenir des stratèges une validation authentique des spécifications et modèles du système d'information. Cela suppose une professionnalisation de la maîtrise d'ouvrage, et un dialogue entre professionnels de l’informatique et professionnels de la maîtrise d’ouvrage.

*  *

L’informatique, grande aventure intellectuelle de notre époque, a attiré quelques-uns des esprits les plus fins et les mieux équilibrés. Ceux-là ne sont nullement gênés par un vocabulaire mal conçu : ils savent ce que les mots désignent et ne sont pas dupes des connotations. Ils sont par ailleurs assez ouverts, curieux et généreux pour s’intéresser à l’entreprise et définir intelligemment sa sémantique. Il existe aussi parmi les maîtrises d’ouvrage, plus rarement il est vrai, des personnes qui savent ce que l’on peut attendre de l’automate et comprennent ses contraintes.

Ces diverses personnes savent éviter les pièges et n’ont donc pas besoin de garde-fou. Mais quand on pense à l’organisation de l’entreprise, à son langage, il faut considérer non pas seulement ces personnes à l'intelligence déliée, mais l’individu moyen dont la compréhension est embrouillée par les faux amis ; et les dirigeants, qui ne sont pas des experts mais doivent savoir prendre des décisions justes. Il faut considérer enfin les personnes intelligentes elles-mêmes, à qui on doit épargner le temps et l’effort nécessaires, aussi intelligentes soient-elles, pour se repérer dans un univers confus.

On doit aussi – car dans l’entreprise on ne vit pas parmi les anges du Paradis ! – ôter aux pervers les armes que leur procure la confusion du vocabulaire et des idées, ainsi que les espaces trop propices qu’elle offre à leurs jeux de pouvoir.


[1] Ferdinand de Saussure (1857-1913), Cours de Linguistique générale, Payot 1916

[2] Jean de La Fontaine (1621-1695), « Le Héron », Fables, Livre VII Fable 4.

[3] Certains auteurs considèrent la lisibilité comme la première qualité d’un programme. Certes un programme bien écrit sera plus facile à corriger si besoin est, mais le critère principal de qualité est l’efficacité pratique du programme.
 

[4] « Man muß stets statt „Punkt“, „Gerade“, „Ebene“ auch „Tisch“, „Stuhl“, „Bierseidel“ sagen können » (« Il faut toujours pouvoir dire "table", "chaise" et "bock de bière" à la place de "point", "droite" et "plan" », David Hilbert, 1862-1943).

[5] Voici une brève liste de faux amis : « ordinateur », « langage », « donnée », « numérique », « information », « objet », « virtuel », « intelligence artificielle », « système d’information ». « Informatique » est un mot bien construit, mais mal utilisé.