Cette page a été traduite automatiquement depuis l'anglais et peut contenir des erreurs. L'original anglais fait autorité. Lire l'original anglais: Exécuteur de code

ROOTCASTLE / LABO D'INGÉNIEUR

Exécuteur de code

JavaScript et Python dans le navigateur, avec l'aide de Sofia AI.

LOCAL EXECUTION · CODE STAYS IN YOUR BROWSER · Pyodide 314.0.7 (WebAssembly) · Time limit 10 s

Tab inserts indentation; press Esc, then Tab to leave the editor. Ctrl+Enter runs the program.

Output (stdout / stderr)

The program has not been run yet.

Understand the error with Sofia AI

The code and the end of the output are sent to Sofia AI for an explanation and a fix suggestion. The code is not run on the server.

À quoi ça sert

Pour tester une table CRC, une boucle PID, un nettoyage de données de capteur ou un petit calcul de spectre avant de passer au matériel. Les exemples partagent des sujets avec les autres outils LAB : comparez le CRC-16 Modbus avec l'inspecteur de protocole et la réponse PID avec le bac à sable. Lorsqu'un programme échoue, vous pouvez envoyer le code et la fin de sa sortie à Sofia AI pour une explication et une suggestion de correction.

Où le code s'exécute

Seul dans votre navigateur. JavaScript s'exécute dans un web worker séparé sans accès réseau ni stockage ; Python s'exécute sur Pyodide (CPython compilé en WebAssembly), téléchargé à une version épinglée depuis jsDelivr. Le serveur Rootcastle ne s'exécute jamais ni ne stocke le code. Votre brouillon est conservé uniquement dans le stockage local de ce navigateur. Sofia AI reçoit les 6 000 premiers caractères du code et les 2 000 derniers caractères de la sortie, et uniquement lorsque vous appuyez sur le bouton et donnez votre consentement.

Limitations

Chaque exécution est limitée à 10 secondes et 100 000 caractères de sortie ; le worker est terminé lorsqu'une limite est atteinte. L'entrée n'est pas interactive : input() et readline() lisent les lignes depuis la boîte stdin dans l'ordre. Python ne dispose que de la bibliothèque standard (les packages tels que numpy ne sont pas chargés). Le timing et les résultats à virgule flottante dans un navigateur ne montrent pas le comportement en temps réel d'un microcontrôleur ; vérifiez le code embarqué sur le matériel cible.

Références

Pyodide · Modbus over Serial Line Specification V1.02, §6.2.2 (CRC-16) · K. J. Åström, T. Hägglund, Contrôle PID avancé, ISA, 2006 · MDN: Web Workers API

Un espace de travail éducatif. Les suggestions de Sofia AI peuvent être erronées ; exécutez et vérifiez une modification avant de vous y fier.

← Rootcastle LAB

Commandes de recherche ou pages