Traduction de 24 applets Java en JavaScript par Terry Tao avec un agent LLM — Découverte de bugs dans le code original

✍️ OpenClawRadar📅 Publié: July 12, 2026🔗 Source
Ad

Terence Tao a publié un compte rendu détaillé de l'utilisation d'un agent de codage basé sur LLM pour porter ses 24 anciennes applets Java 1.0 (de 1999) en JavaScript moderne, ainsi que pour construire deux nouvelles visualisations interactives à partir de zéro. L'expérience démontre à la fois la puissance et les limites actuelles du code généré par LLM pour des tâches de programmation non triviales.

Portage de 24 applets Java en JavaScript

Les applets de Tao, écrites à l'origine pour des cours d'analyse complexe et d'algèbre linéaire, étaient devenues non fonctionnelles car les navigateurs ont abandonné le support de Java 1.0. En utilisant un agent LLM non divulgué (probablement Claude ou GPT-4), il lui a demandé de porter toutes les applets en JavaScript. L'agent a achevé la migration en "quelques heures". Les applets résultantes sont désormais fonctionnelles avec des améliorations graphiques — par exemple, l'applet de l'ensemble de Besicovitch a été colorisée par rapport à sa version monochrome d'origine.

La qualité du code était étonnamment élevée. Tao rapporte :

Je n'ai pu trouver qu'un seul bug mineur (la gestion d'un événement de glisser dans l'une des applets d'analyse complexe avait un comportement indésirable lors du glisser en dehors de la boîte principale), et en fait l'agent a identifié deux bugs dans le code original dont je n'étais pas au courant.

Les deux bugs originaux ont été trouvés par l'agent sans invitation, faisant du portage un net wash en termes de nombre de bugs. Tao note que le risque de dégradation est faible car ces applets sont des aides visuelles, non des composants critiques de preuves mathématiques.

Ad

Nouvelle application : outil de dessin dans l'espace de Minkowski

Inspiré par le succès du portage, Tao a relancé un projet abandonné de 1999 : une visualisation "Inkscape, mais dans l'espace de Minkowski" pour la relativité restreinte. Après deux heures de "vibe coding" avec l'agent, il a produit une applet fonctionnelle correspondant à sa vision originale. La transcription de la conversation est disponible mais omet les rapports d'implémentation technique fastidieux.

Nouvelle application : visualisation de la conjecture de Gilbreath

Suite au billet de blog du même jour sur la conjecture de Gilbreath, Tao a demandé à l'agent de coder une visualisation interactive pour accompagner l'article. Après quelques heures supplémentaires, la visualisation est en ligne. Il prévoit d'ajouter de tels suppléments à ses futurs articles, acceptant le risque de bugs générés par LLM car les visualisations ne sont pas critiques.

Enseignements pratiques pour les développeurs

  • Les agents LLM peuvent porter du code legacy (Java 1.0) en JS moderne avec une bonne fidélité — seulement 1 nouveau bug sur 24 applis.
  • Les agents peuvent repérer des bugs latents dans le code original ; toujours examiner à la fois l'ancien et le nouveau.
  • Le "vibe coding" (invitations itératives avec débogage manuel minimal) fonctionne pour les applications de visualisation autonomes.
  • Le risque de dégradation est acceptable pour les suppléments non critiques ; les systèmes critiques nécessitent toujours une validation humaine.

Les détails complets, y compris les transcriptions et les liens vers les applets relancées, se trouvent dans la source ci-dessous.

📖 Lire la source complète : HN LLM Tools

Ad

👀 See Also

Markdown en tant que protocole pour les interfaces agentiques avec exécution en flux continu
Tools

Markdown en tant que protocole pour les interfaces agentiques avec exécution en flux continu

Un prototype utilise Markdown comme protocole unifié permettant aux agents d'IA de diffuser du texte, du code exécutable et des données dans une seule réponse. Il propose une exécution en flux où le code s'exécute instruction par instruction à mesure qu'il arrive et une primitive mount() pour créer des interfaces React avec un flux de données entre le client, le serveur et le LLM.

OpenClawRadar
OmniCoder-9B : Agent de codage à 9 milliards de paramètres affiné sur 425 000 trajectoires agentiques
Tools

OmniCoder-9B : Agent de codage à 9 milliards de paramètres affiné sur 425 000 trajectoires agentiques

Tesslate a publié OmniCoder-9B, un modèle d'agent de codage à 9 milliards de paramètres affiné sur l'architecture hybride de Qwen3.5-9B. Il a été entraîné sur plus de 425 000 trajectoires de codage agentique sélectionnées provenant de Claude Opus 4.6, GPT-5.4, GPT-5.3-Codex et Gemini 3.1 Pro.

OpenClawRadar
Crochet de notation de confiance open-source pour Claude Code surveille les sessions, bloque les chemins protégés
Tools

Crochet de notation de confiance open-source pour Claude Code surveille les sessions, bloque les chemins protégés

Un développeur a créé un crochet Python qui évalue chaque session Claude Code sur les dimensions de fiabilité, portée et coût, bloque l'accès aux chemins protégés comme les fichiers .env, et enchaîne les événements par hachage pour détecter les falsifications. L'outil en un seul fichier est disponible sur GitHub.

OpenClawRadar
Application de Débat Multi-Agents Construite avec Claude, ElevenLabs et Flux
Tools

Application de Débat Multi-Agents Construite avec Claude, ElevenLabs et Flux

Un développeur a créé une application de débat multi-agents alimentée par Claude. L'application permet aux utilisateurs de choisir deux personnages et un sujet, puis Claude génère des arguments pour chaque côté en restant dans le personnage. Un juge IA évalue le débat et désigne un gagnant.

OpenClawRadar