Oublier Java ! ou, pourquoi une vision « rassurante » d’organisation du XIXe siècle ne peut pas modéliser un monde où l’organisation est réduite à de seuls motifs, par Jean-Baptiste Auxiètre

Illustration par ChatGPT

« Le monde n’est pas fait de choses, mais de processus. »

— Alfred North Whitehead

Introduction : L’illusion classificatoire

Java est un excellent langage de programmation. Il est robuste, performant, et a prouvé son efficacité dans d’innombrables systèmes critiques — banques, hôpitaux, infrastructures. Ce n’est pas Java le problème. C’est ce que Java présuppose sur la nature du monde.

Car derrière chaque langage de programmation se cache une ontologie — une théorie implicite de ce qui existe et de comment les choses s’articulent entre elles. Et l’ontologie de Java, comme celle de la plupart des langages orientés objet, est profondément ancrée dans une vision du monde qui date du XVIIIesiècle : celle de la taxonomie linnéenne, des hiérarchies fixes, des essences stables.

Cette vision était « rassurante » : elle promettait un monde où chaque chose avait sa place, où les catégories étaient nettes, où l’ordre préexistait au désordre. Mais que faire quand le monde réel refuse de se conformer à ces boîtes bien rangées ?

I. L’héritage du XIXe siècle

La taxonomie comme promesse d’ordre

Au XVIIIe siècle, Carl von Linné entreprit de classifier l’ensemble du vivant. Son Systema Naturae (1735) proposait une hiérarchie stricte : règne → embranchement → classe → ordre → famille → genre → espèce. Chaque organisme avait sa place, déterminée par des caractères essentiels et immuables.

Cette approche triompha au XIXe siècle. Les naturalistes se lancèrent dans un immense projet de catalogage du monde. Les musées d’histoire naturelle se remplirent de spécimens étiquetés, rangés dans des tiroirs, chacun à sa place dans l’arbre du vivant. L’ordre était là, il suffisait de le découvrir.

Cette vision classificatoire débordait au-delà de la biologie. Elle imprégnait toute la pensée occidentale : les bibliothèques adoptèrent la classification décimale de Dewey (1876), les entreprises s’organisèrent en organigrammes pyramidaux, les sciences se compartimentèrent en disciplines étanches.

De Linné à Java : la filiation cachée

Quand les pionniers de l’informatique inventèrent les langages orientés objet dans les années 1960-1980, ils importèrent — consciemment ou non — cette vision classificatoire. Simula, puis Smalltalk, puis C++, puis Java, tous reposent sur le même schéma mental :

1. Les entités du monde sont des objets discrets, aux frontières nettes.

2. Chaque objet appartient à une classe qui définit son essence.

3. Les classes s’organisent en hiérarchies d’héritage, du général au particulier.

4. L’ordre est pensé a priori, avant même que les objets existent.

En Java, avant même qu’un chat puisse exister, il faut avoir déclaré class Chat extends Animal. La hiérarchie précède l’existence. C’est du platonisme pur : les Idées (les classes) préexistent aux choses (les objets).

II. Le cauchemar du lichen

Une entité qui défie les catégories

Le lichen est l’exemple parfait de ce que la vision classificatoire ne peut pas penser. Un lichen n’est pas un organisme — c’est une relation stabilisée entre un champignon et une algue (ou une cyanobactérie). Les deux vivent en symbiose si étroite qu’on les a longtemps pris pour un organisme unique.

Comment modéliser cela en Java ? Le problème apparaît immédiatement :

class Lichen extends Champignon { }  // Faux

class Lichen extends Algue { }       // Faux aussi

class Lichen extends Champignon, Algue { }  // INTERDIT

Java interdit l’héritage multiple (pour de bonnes raisons techniques). On pourrait tenter la composition :

class Lichen {

    private Champignon champignon;

    private Algue algue;

}

Mais c’est un mensonge ontologique. Cette modélisation dit : « le lichen possède un champignon et une algue ». Or le lichen est leur relation. Il n’existe pas indépendamment de ses composants, et ses composants n’ont plus vraiment d’existence séparée non plus.

Quand la relation EST la substance

Le lichen révèle une faille fondamentale dans l’ontologie orientée objet. Java (et l’OOP en général) présuppose que :

— Les entités ont des frontières nettes

— L’identité est intrinsèque à l’objet

— Les relations sont secondaires par rapport aux substances

Le lichen dit exactement le contraire : parfois, la relation EST la substance. Le motif émergent de la coopération est plus réel que les parties qui le composent.

Et le monde est plein de « lichens conceptuels » : une entreprise n’est pas la somme de ses employés, une conversation n’est pas la juxtaposition de deux monologues, un marché n’est pas un agrégat d’acheteurs et de vendeurs. Ce sont des patterns relationnels qui ont leur propre réalité — une réalité que Java ne sait pas exprimer.

III. L’ordre qui émerge vs l’ordre qui précède

Le typage statique comme présomption d’omniscience

Le compilateur Java vérifie avant l’exécution que tout est cohérent. C’est un atout pour la fiabilité des systèmes. Mais c’est aussi une présomption métaphysique : cela suppose que les catégories du monde sont connues et fixes.

Dans un univers où l’organisation n’est que locale et temporaire, cette vérification statique devient une contrainte artificielle. Elle exige qu’on sache à l’avance ce qu’on ne peut découvrir qu’en chemin.

L’interface comme contrat rigide

Une interface Java est un contrat absolu : soit tu l’implémentes entièrement, soit pas du tout. Il n’y a pas de demi-mesure, pas de « presque conforme », pas de « ça dépend du contexte ».

Mais les motifs naturels ont des frontières poreuses. L’ornithorynque est « un peu mammifère », « un peu ovipare ». Le virus est « presque vivant ». La conscience est « plus ou moins présente » selon les espèces. Java ne tolère pas ce flou catégoriel — or c’est précisément ce flou qui caractérise le réel.

La causalité inversée

Java exige qu’on déclare class Animal avant class Chat extends Animal. Le général précède le particulier. Mais dans le monde réel, le concept « animal » est une abstraction a posteriori — ce sont les chats, les chiens, les oiseaux qui existent d’abord, et « animal » est le motif qu’on extrait ensuite.

Java inverse la causalité ontologique. Il demande de penser le monde à l’envers — du concept abstrait vers l’instance concrète — alors que c’est le concret qui engendre l’abstrait.

IV. GENESIS : vers une programmation du devenir

Un moteur d’émergence, pas une machine à classer

Le projet GENESIS, développé au sein de Pribor.ai, prend le contre-pied exact de la philosophie Java. Au lieu de partir de classes prédéfinies et de hiérarchies fixes, GENESIS observe ce que le système révèle de lui-même : comment il se structure, se déstructure, se reconfigure au fil du temps.

L’intuition fondatrice est simple : lorsqu’un système gagne soudain en cohérence, plusieurs tendances internes convergent au même moment. Le rôle de GENESIS est de détecter cette convergence, d’en mesurer la stabilité, et de suivre sa trajectoire.

Du calcul syntaxique à la transformation reproductive

Dans la philosophie des machines de Turing (et donc dans la langage de programmation Java), le calcul est une réécriture syntaxique : on manipule des symboles selon des règles fixes. Dans GENESIS, le calcul est une transformation reproductive : des instances s’accouplent, synthétisent, valident leur descendance.

La différence est capitale. Une machine de Turing simule toutes les fonctions imaginables. Une machine GENESIS s’engendre elle-même dans toutes les fonctions imaginables. C’est la différence entre un automate qui exécute ce qu’on lui enjoint d’exécuter et un organisme qui apprend comment exister dans son environnement.

Le lichen enfin pensable

Dans GENESIS, le lichen trouverait sa place naturelle : il ne serait pas une « chose » appartenant à une classe, mais un attracteur stable dans l’espace des relations possibles entre champignons et algues. Sa réalité serait celle d’un motif émergent, détectable par sa cohérence et sa reproductibilité — pas par son appartenance à une catégorie prédéfinie.

C’est exactement ce que proposait Aristote avec sa distinction entre substance première (l’individu concret) et substance seconde (la catégorie abstraite). Mais Java a oublié Aristote pour ne garder que Platon : les Idées éternelles, les essences immuables.

V. Pourquoi Java reste utile (et ses limites)

Il ne s’agit pas de jeter Java aux oubliettes. Pour les systèmes bancaires, les architectures d’entreprise, les infrastructures critiques, la rigidité de Java est une vertu. Quand on veut que les choses restent en place, que les contrats soient respectés, que les catégories soient stables, Java excelle.

Mais cette même qualité le rend inadapté pour modéliser un monde où l’ordre est émergent, local et contingent. C’est un peu comme vouloir décrire un nuage avec un plan d’architecte : l’outil est excellent, mais inapproprié pour ce cas précis.

Le XXIe siècle exige une nouvelle génération de langages — pas pour remplacer Java, mais pour penser ce que Java ne peut pas penser : les processus, les relations, les émergences, les devenirs.

Conclusion : Au-delà du rassurant

La vision classificatoire du XIXe siècle était rassurante parce qu’elle promettait un monde ordonné, stable, connaissable. Elle a porté l’essor industriel, la rationalisation administrative, l’informatique de gestion.

Mais nous savons aujourd’hui que cette vision était partiellement un artefact — une projection de nos besoins d’ordre sur un monde qui ne s’y conforme qu’à contrecœur. Le réel est plein de lichens, d’hybrides, de transitions, de flous, d’émergences imprévues.

Oublier Java — ou du moins, suspendre ses présupposés — c’est accepter que l’ordre n’est pas donné mais construit, qu’il n’est pas global mais local, qu’il n’est pas éternel mais processuel.

C’est accepter, avec Whitehead, que le monde n’est pas fait de choses, mais de processus — et qu’il nous faut des langages capables de les penser.

GENESIS est une tentative dans cette direction. D’autres viendront. L’essentiel est de ne plus confondre la carte (nos catégories rassurantes) avec le territoire (le devenir du monde).

Références

Jorion, P. (2009). Comment la vérité et la réalité furent inventées. Paris : Gallimard.

Jorion, P. (2025). « GENESIS : Une machine de Turing vitalisée ». Blog de Paul Jorion.

Whitehead, A.N. (1929). Process and Reality. New York : Macmillan.

Simondon, G. (1958). Du mode d’existence des objets techniques. Paris : Aubier.

Partager :

16 réponses à “Oublier Java ! ou, pourquoi une vision « rassurante » d’organisation du XIXe siècle ne peut pas modéliser un monde où l’organisation est réduite à de seuls motifs, par Jean-Baptiste Auxiètre”

  1. Avatar de JMarc
    JMarc

    Nickel l’exemple du lichen !
    Merci Jean-Baptiste.

  2. Avatar de timiota
    timiota

    On pourra lire le « Tous Entrelacés » d’Eric Bapteste sur la difficulté de définir les entités dans le vivant (les « biontes »), qui date de 2018.
    Sinon, à part la restriction (de taille) qu’elle opére en mode linéaire, le cadre des matrices aléatoires est très « relations-centrés », tout ce qui se passe d’intéressant vient des (très majoritaires) termes non diagonaux, ceux qui « relient » des vecteurs différents. On peut imaginer que le vecteur de base « algue »(j) et le vecteur de base « champignon »(k) ont l’élément croisé (« A_{jk} ») non nul, pour dire qu’il existe une relation métabolique. Du fait qu’elle est multidimensionnelle, il faudrait scinder le métabolisme et prévoir une entrée de la matrice pour chaque « flux métabolique », qui ne manquent pas de se coupler, mais c’est vrai qu’on commencerait à s’y perdre en ontologie. Néanmoins certaines caractéristiques des matrices hermitiennes ont un petit goût d’émergence dans divers cas particuliers (les « points exceptionnels » par exemple, où les valeurs propres et vecteurs propres coalescent). Ca n’est sans doute pas contradictoire avec les gradients et l’information façon Peter Gabriel, pardon, façon GENESIS.

    1. Avatar de timiota
      timiota

      Pardon, des matrices non-hermitiennes justement (les hermitiennes sont chiantes comme la pluie, même si c’est officiellement la base de la mécanique quantique).

  3. Avatar de Pascal
    Pascal

    Bienvenue dans le monde non-dualisme du Tao (il paraît qu’on devrait dire Dao) !😂🙏
    Les chinois vont adorer.

    1. Avatar de MrNewOdd
      MrNewOdd

      on pourrait aussi y voir l’expression de l’impermanence bouddhique.

    2. Avatar de Paul Jorion

      Ça n’a rien d’accidentel. Si vous êtes féru d’archéologie du Blog de PJ, vous vous souviendrez que GENESIS est fondé sur mes « 5 principes fondamentaux » (paysage de préférence, système génératif, couplage, compression, validation trans-substrat) qui sont la « distillation » la plus économique de la triade Tao-ruse de la Raison-Saint-Esprit en les éléments qui la composent.

      cf. Je viens tester sur vous ma « méta-philosophie », le 28 juillet 2025

  4. Avatar de Ruiz
    Ruiz

    Java représente un certain aboutissement de la programmation structurée et orienté objet visant à assurer la portabilité immédiate des programmes sur des machines diversifiées de différents OS et constructeurs dans une micro-informatique envahissante, proposé au début de l’explosion du Web sur l’Internet.
    https://fr.wikipedia.org/wiki/Java_(langage)
    La compilation partielle vers le code-octet d’une machine virtuelle, losqu’elle est employée nuit à la vitesse, mais rapelle un peu le mécanisme utilisé par le language Forth, plus basique, basé sur la notation polonaise inverse et l’usage de pile, mais élégant, à la syntaxe simple et surtout aisément et librement extensible à la demande de façon indiscernable, devrait pouvoir trouver sa place dans la création d’un nouveau langage spécialisé.
    https://fr.wikipedia.org/wiki/Forth_(langage).

  5. Avatar de un lecteur
    un lecteur

    « Learning by doing », la méthode d’apprentissage (heuristique, pour faire chic) que les Britt affectionnent tout particulièrement, basée sur le processus (dialectique, boucle de contre-réaction) central aux vivants.
    C’est l’erreur (le négatif) de l’expérience qui en juge de paix permet le parcours du paysage de préférence dans lequel se trouvent des solutions.
    Programmeurs de tout bord, bidouillez avec ZeroMQ comme outil de transition vers GENESIS.

    1. Avatar de un lecteur
      un lecteur

      Quand le hardware s’adapte au software, https://www.nextsilicon.com/.

  6. Avatar de Diotime
    Diotime

    Une remarque , n’aurait il pas été possible d’inclure Génésis dans une JSR (Java Script Request ) ?
    Ce qui permettrait à Génésis d’apporter un peu de folie chaotique à la rigueur quasi monacale de Java ?

  7. Avatar de Nikolaz
    Nikolaz

    Je ne pense pas qu’utiliser un systématique classificatoire présume de notre compréhension du monde. Elle n’en est qu’une approche imparfaite. Le scientifique n’a normalement pas la naïveté d’y croire.
    Allez, un exemple supplémentaire, celui des langues. La classification actuelle envisage de grandes familles qui semblent cohérents nonobstant les multiples créoles : entre langues romanes et nigéro-congolaise ou même le plus connu d’entre eux, l’anglais.
    Il est probablement possible d’envisager d’autres représentations du monde, encore faut-il qu’elles soient abordables à nos modestes intelligences.

  8. Avatar de ThomBillabong
    ThomBillabong

    Au poil cette image du lichen dual.

    Vous commencez par quoi comme exemple ? Hâte !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.

Contact

Contactez Paul Jorion

Commentaires récents

  1. @ ilicitano Parmi les défis, votre assistant a listé : « Équité algorithmique ». Vous pouvez expliquer ? (ou lui, en bref…

  2. En Europe, une transformation profonde a également lieu, mais elle suit une trajectoire très différente de celle de la Chine.…

  3. Biomerieux est une entreprise avec laquelle j’ai travaillé il y a quelques mois. Ils produisent le Biofire qui est un…

  4. Paul, nous sommes évidemment ravis de vous savoir à nouveau ici, un autre à eu moins de chance que vous,…

Articles récents

Catégories

Archives

Tags

Allemagne Aristote BCE Bourse Brexit capitalisme ChatGPT Chine Coronavirus Covid-19 dette dette publique Donald Trump Emmanuel Macron Espagne Etats-Unis Europe extinction du genre humain FMI France Grands Modèles de Langage Grèce intelligence artificielle interdiction des paris sur les fluctuations de prix Italie Japon Joe Biden John Maynard Keynes Karl Marx LLM pandémie Portugal psychanalyse robotisation Royaume-Uni Russie réchauffement climatique Réfugiés Singularité spéculation Thomas Piketty Ukraine Vladimir Poutine zone euro « Le dernier qui s'en va éteint la lumière »

Meta