PLUSHIE et tous ses amis

Programmation en Langage Universel Séquentiel Heuristique pour une Intelligence Évolutive

Comparaison de PLUSHIE avec les autres langages et modèles informatiques

PLUSHIE fait partie de la grande famille des langages informatiques et partage des points communs avec ce qui existe déjà. Il n'est pas né de nulle part.

Il n’a pas été conçu comme un concurrent direct des langages classiques. Il explore un espace différent, celui des systèmes computationnels :


Cette page tente de situer PLUSHIE par rapport aux grands univers de la programmation.

Vue d’ensemble
Aspect Langages classiques PLUSHIE
Nombre d’instructions primitives Élevé Minimal
Syntaxe Complexe / hiérarchique Langage courant
Types de données Multiples Structure homogène sans typage
Manipule Des nombres binaires ou hexadecimaux Des caractères, des mots, des adresses mémoire
Auto-modification Rare / découragée Centrale
Séparation code / données Forte Inexistante
Objectif principal Production logicielle Exploration computationnelle
Prévisibilité Recherchée Partiellement émergente
⊚ PLUSHIE et l’assembleur

L’assembleur est proche du matériel. Il expose explicitement :

  • les registres,
  • la mémoire,
  • les adresses,
  • les instructions processeur.

PLUSHIE partage avec l’assembleur :

  • une proximité conceptuelle avec les structures mémoire,
  • une vision explicite des liens,
  • une faible abstraction initiale.

Mais contrairement à l’assembleur, PLUSHIE ne cherche pas à représenter une machine réelle et ne multiplie pas les instructions. Il explore plutôt un univers computationnel autonome, homogène et potentiellement émergent.

⊚ PLUSHIE et les langages modernes (Python, JavaScript, C#, Java…)

Les langages modernes privilégient généralement :

  • la lisibilité,
  • la sécurité,
  • la productivité,
  • la stabilité,
  • les bibliothèques,
  • les outils industriels,

PLUSHIE suit presque la direction opposée :

  • les structures sont minimales,
  • la frontière entre programme et données est floue,
  • la stabilité n’est pas garantie,
  • le comportement peut évoluer dynamiquement,
  • les mécanismes émergents sont volontairement explorés.
PLUSHIE n’est actuellement pas conçu comme un langage de production généraliste.
⊚ PLUSHIE et Lisp

Lisp est probablement l’un des langages historiquement les plus proches de l’esprit de PLUSHIE.

Points communs :

  • importance des listes chaînées,
  • code manipulable comme donnée,
  • homogénéité structurelle,
  • forte réflexivité.

Différences importantes :

  • PLUSHIE pousse plus loin le minimalisme,
  • PLUSHIE n'a pas de séparateur prédéfini (pas de parenthèses),
  • PLUSHIE n'a pas une structure syntaxique rigide,
  • la structure mémoire y est plus explicite,
  • l’auto-modification y est plus centrale,
  • la notion d’émergence y est davantage explorée.
⊚ PLUSHIE et Forth

Comme Forth, PLUSHIE favorise :

  • des primitives minimales,
  • la composition,
  • l’extension progressive du langage,
  • une forte proximité avec les mécanismes internes,
  • ... et il peut manipuler des piles.

Cependant, PLUSHIE reste plus homogène structurellement et davantage orienté vers l’auto-transformation du système lui-même.

⊚ PLUSHIE et les machines à instructions uniques comme SUBLEQ

Comme elles, PLUSHIE ne possède qu'une instruction.

(en vrai elles en ont deux, comme PLUSHIE)

Mais PLUSHIE

  • est plus lisible,
  • se fonde sur les mots plus que sur les bits,
  • étend son langage et apprend,
  • n'a pas de syntaxe figée.
⊚ PLUSHIE et les langages ésotériques comme brainfuck

Comme eux, PLUSHIE cherche un minimalisme extrême et est une approche expérimentale. Comme eux, PLUSHIE peut utiliser des symboles incompréhensibles si l'utilisateur le souhaite.

Mais PLUSHIE :

  • est bien plus lisible, parce que l'utilisateur n'est pas maso,
  • il étend son langage et apprend,
  • et il n'a pas de syntaxe figée.
⊚ PLUSHIE et la programmation fonctionnelle

Les langages fonctionnels privilégient généralement :

  • l’absence d’effets de bord,
  • l’immutabilité,
  • la pureté,
  • la démonstration formelle.

PLUSHIE prend presque le chemin inverse :

  • la stabilité n’est pas l’objectif principal,
  • les structures peuvent muter,
  • l’évolution dynamique est encouragée.
⊚ PLUSHIE et les systèmes d'apprentissage symboliques

Comme eux, PLUSHIE apprend ses symboles,

mais :

  • ils sont rarements couplés à une machine de calcul aussi minimale,
  • leurs phases d'apprentissage et d'exécution sont séparées
  • et les symboles de PLUSHIE sont des expressions usuelles.
⊚ PLUSHIE et l’Intelligence Artificielle

PLUSHIE n'est pas un système d’intelligence artificielle.

Cependant, certaines propriétés communes apparaissent :

  • adaptation dynamique,
  • évolution interne,
  • réécriture,
  • comportements émergents,
  • méta-programmation,
  • structures réflexives.

Ces propriétés peuvent évoquer certains systèmes adaptatifs, mais PLUSHIE reste avant tout un modèle computationnel expérimental.

⊚ PLUSHIE et la vie artificielle

Certains comportements observés dans PLUSHIE peuvent rappeler :

  • des systèmes auto-organisés,
  • des dynamiques cellulaires,
  • des phénomènes émergents,
  • des structures évolutives.

L’objectif n’est cependant pas de simuler la biologie, mais d’explorer les conséquences computationnelles d’un minimalisme radical.

⊚ PLUSHIE et les automates cellulaires

  • PLUSHIE manipule une structure adressable et ré-écrivable, et non pas une grille homogène.
  • PLUSHIE vise l'universalité, pas seulement une dynamique globale.
Une philosophie différente

La plupart des langages modernes cherchent à réduire :

  • l’ambiguïté,
  • l’instabilité,
  • la mutation,
  • l’imprévisibilité.

PLUSHIE explore au contraire ce qui peut émerger lorsque certaines de ces contraintes sont volontairement relâchées.

Voir une formulation plus philosophique

Là où les langages classiques cherchent souvent à contrôler, figer et sécuriser le comportement computationnel, PLUSHIE explore la possibilité de systèmes capables de se transformer eux-mêmes, de réécrire leurs propres structures, et de faire émerger des comportements inattendus à partir d’un noyau extrêmement simple.

Conclusion

PLUSHIE réunit plusieurs approches :

  • Minimalisme extrême,
  • Réécriture structurelle,
  • Réflexivité maximale,
  • Apprentissage intégré,
  • Lisibilité humaine.
C'est en cela qu'il est unique : PLUSHIE explore une approche minimaliste où le langage s’apprend et devient exécutable à mesure qu’il est lu.

PLUSHIE est :

  • une expérimentation,
  • un terrain de recherche,
  • un modèle computationnel atypique,
  • une exploration du minimalisme et de l’émergence.

Son intérêt réside peut-être moins dans les réponses qu’il apporte que dans les questions qu’il soulève.

Aller plus loin