-------------
C'est une nouvelle librairie basic. Du moins, une adaptation de mon interpreteur
MyLiB ( en stand by pour longtemps je pense).
Cette librairie est basé sur 'TiBasExt', un soft de Kevin Kofler.
Ce soft permet d'utiliser un programme C pour lancer des programmes Ti-Basic .
Jusque là, rien de nouveau me direz-vous. Mais si je vous dis que le programme
basic peut appeler certaines fonctions du programme C qui la lancé. Alors là ça change tout.
Ce que j'apporte avec ExtLiB, c'est :
- De nouvelles fontions au Ti-Basic
- une meilleur gestion des arguments par un moteur puissant au coeur du software
- une utilisation en Mode Librairie de toutes les fonctions par la fonction 'Command('
La gestion des arguments d'ExtLiB est très proche de celui de la librairie Vertel.
Il faut toutefois noter les différences dans la gestion des Tag_spéciaux et des MATRIX.
La librairie supporte tous les types d'arguments Ti-Basic suivant : NUM,STR,LIST,MATRIX.
Les fonctions font exactement tout ce dont on peut attendre d'elles; rare sont les restrictions.
Pour télécharger : ExtLiB Disponible uniquement sur Ti-Gen ou Ti-Fr
17 Decembre 2005 à 19:05 GMT ;
il n'y pas de risque de récursion, j'ai tester on obtient l'erreur 'Variable in Use' .
Pour lancer un programme Ti-Basic utilisant les Extensions ajoutées, vous avez le choix de la syntaxe :
- main\extlib( "nom_prog_basic" )
- main\extlib( "nom_prog_basic1", "nom_prog_basic2", "nom_prog_basic3" )
- main\extlib( { "nom_prog_basic1", "nom_prog_basic2", "nom_prog_basic3" } )
- main\extlib( { "nom_prog_basic1", "nom_prog_basic2", "nom_prog_basic3" } )
tout ça pour dire que les accolades de listes sont ignorées, et que tous les programmes seront lancés succesivement
En clair, vous pouvez directement écrire en Ti-Basic ceci :
:make("a",50)
:write("a",{0,0,45},{2,48,49})
:memset("a",ord("m"),2, 45 )
ce code créer la variable a, la définit au format string, et la remplit du caractère 'm'
On peut arriver au même résultat en faisant aussi ceci:
:command("make","a",50,%,"write","a",{0,0,45},{2,48,49},%,"memset","a",2,ord("m"),2,45)
NB: '%' remplace le symbole infini sur TI
Ce mode permet d'appeler plusieurs fonctions sans passer par le basic.
De plus si plusieurs fonctions ont des arguments en communs, vous pouvez regrouper les dans une liste, histoire qu'elles utilisent les même arguments.
Plus tard, lorsque j'aurai énormément de temps pour coder la tokénéisation; on pourra faire ceci :
:command("tokenfile")
où "tokenfile" est le nom d'un fichier perso contenant les token des fonctions.