Lancer un script
ton618 chemin/vers/script.ton
Options :
| Option | Effet |
|---|---|
--debug | Démarre en mode débogage pas-à-pas |
--break=<ligne> | Ajoute un point d'arrêt à une ligne donnée (répétable) |
-h, --help | Affiche l'aide |
-v, --version | Affiche la version, la plateforme détectée (linux/termux/windows/macos) et l'architecture |
--update [version] | Retélécharge le binaire correspondant à cette plateforme depuis les GitHub Releases et remplace celui en cours d'exécution — la dernière release si version (un tag de release) est omis |
--uninstall-ton | Désinstalle ton618 : le binaire, son entrée PATH, et le dossier ./modules/ du répertoire courant (tous les modules précédemment récupérés avec install) |
Deux autres commandes, utilisées comme ton618 <commande> <module> plutôt que comme une option sur un script :
| Commande | Effet |
|---|---|
install <module> | Récupère <module> depuis le registre de modules TON618 et télécharge son code dans ./modules/ |
uninstall <module> | Supprime ./modules/<module>.ton (annule install) |
Tout ce qui suit le chemin du script et n'est pas une de ces options est transmis tel quel au script, lisible via sys_args() (voir ton.sys).
Exemple :
ton618 exemples/test.ton --break=10 --break=20
ton618 --update # met à jour vers la dernière release
ton618 --update beta-1.0.1 # épingle une release précise
ton618 install stringutils # récupère un module depuis le registre
ton618 uninstall stringutils # le supprime à nouveau
Le REPL interactif — lance ton618 sans argument (ou ton618 repl) pour obtenir une invite où chaque ligne s'exécute immédiatement et où la valeur d'une expression est affichée. Un (, [ ou { non fermé continue sur la ligne suivante, on peut donc taper une fonction entière. .vars liste ce que tu as défini, .exit (ou Ctrl-D) quitte.
$ ton618
TON618 beta-2.0.0 (linux/x86_64)
ton> ton.let nums = [3, 1, 2]
ton> nums.sorted().map(n => n * 10)
[10, 20, 30]
ton> f"{len(nums)} éléments"
"3 éléments"
Une ligne — ton618 -e 'print(2 ** 10)' exécute un extrait sans créer de fichier.
Rapports d'erreur — une erreur non rattrapée affiche le message, la ligne de code fautive, une suggestion « did you mean » pour un nom mal orthographié, et — si elle s'est produite dans des appels de fonction — une courte trace d'appels :
Error at line 2: Division by zero.
--> calc.ton:2
2 | return a / b
Traceback (most recent call last):
line 9: called compute()
line 5: called divide()
line 2: error raised here