Lancer un script

ton618 chemin/vers/script.ton

Options :

OptionEffet
--debugDémarre en mode débogage pas-à-pas
--break=<ligne>Ajoute un point d'arrêt à une ligne donnée (répétable)
-h, --helpAffiche l'aide
-v, --versionAffiche 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-tonDé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 :

CommandeEffet
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

Modifier cette page sur GitHub