Nada

La génèse du langage de programmation

1) Introduction

En formalisant ce qu'est un interpréteur, ce qu'est un processus, les schémas de circulation et référencement de l'information, et la topologie des entrées/sorties, on construit un langage de base, que l'on perfectionne par étapes successives, en introduisant à chaque fois un nouveau concept.

2) Algèbre libre

Le premier concept est l'algèbre libre, qui permet de piloter un système à l'aide d'un langage algébrique, adapté à l'utilisateur grace aux différentes syntaxe ; préfixe, postfixe, infixe et délimité.

Par exemple considérons l'algèbre libre engendré par <a,b,f(.),g(.,.)>. On doit pouvoir ajouter pour chaque opérateur :

  1. Un poid pour paramétrer la taille ou la génération au hasargd de termes. (Par défaut le poid vaut 1)
  2. Une syntaxe alternative. (Par défaut c'est la syntaxe anglaise. Exemple g(x,y))
  3. Une implémentation sous forme d'une fonction. (Par défaut, c'est a fonction identité qui retourne le terme tel quel)

 

 

 

3) Algèbre multi-sorte

Le second concept est l'algèbre multi-sorte qui permet d'enrichire la syntaxe en incorporant plusieurs langage algébrique, et donc plusieurs types, un type par langage algébrique.

3) L'introduction des variables

Le troisième concept est celle de variable, consite à définir les variables

....

4) La notion de type

....

 

 

5) La notion de flux

Il existe de nombreuses possibilités pour enrichire le langage et en faire un langage de programmation évoluée. Mais l'une d'entre-elles prédomine largement quasi-toutes. Elle consiste à ne peut se rétreindre aux seuls valeurs d'évaluation, mais à considérer des flux de valeurs manipulables comme des simples variables.

Pour les distinguer des paramètres simple valeur, on notes les flux en majuscule. Et, ils ont deux modes possibles, synchrone ou asynchrone.

 

 

Répondre sur Communauté Reddit

 

Nada


Dominique Mabboux-Stromberg
(Septembre 2026)