CPLua
La langue de Lua est un juste milieu entre le CPBasic et le C++. Ce langage de programmation est simple, flexible et rapide. Il permettent aux développeurs de créer des programmes complexes impossibles à écrire en CPBasic. CPLua est un add-in pour ClassPad qui incluent un interprèter Lua et à beaucoup de nouvelles fonctions et vous permet de programmer en Lua on-calc.
CPLua est un projet donc quelques bogues peuvent apparaître. La version la plus stable est actuellement la version 0.8 version. La dernière version est la version 0.10A disponible ici.
Sommaire
Histoire
CPLua a été commencé en 2005 par Julien, un programmeur français, parce qu'il y avait trop de personnes qui se plaignaient de la lenteur du CPBasic mais ne voulaient pas apprendre le C++.
- 01/09/2005 : la première version a été publiée ici.
- 07/09/2005 : version 0.4 : ajout de la possibilité sauver/ouvrir des script Lua
- 08-09/2005 : version 0.51 : correction de certains bugs et ajout d'un nouveau clavier
- 27/09/2005 : version 0.72 : ajout de la totalité du paquet de CAS
- 19/04/2006 : version 0.8 : version la plus rapide (en dessin) de CPLua. Téléchargez-la ici
- 07-27-2007 : version 0.9E : la dernière version faite par Orwell (ajout de la bibliothèque UI)
L'année dernière, deux programmeur, Cartix (moi) et Binary_Man, de Planete Casio, ont commencé à retravailler sur le projet, dans le but d'ajouter de nouvelles fonctions. Notre première version (CPLua 0.10A) est sortie le 28/01/2012, et est disponible ici
Mise en route
- Premièrement, télécharger la version de l'add-in que vous souhaitez :CPLua 0.8 ou CPLua 0.10A
- Envoyez ensuite le .cpa à votre classpad avec FA-CP1 ou Classpad Add-In Installer (des tutos seront bientôt disponible)
- Allez au menu principal sur votre Classpad et ouvrez l'application CPLua
- Créez un nouveau fichier et commencez à programmer
Librairie
- UI : Interface utilisateurs : Cette librairie vous permet d'utiliser l'interface utilisateur du Classpad (menu, barre d'outils,…) dans vos programmes
- CAS : Système d'Aglèbre informatique : Cette librairie vous permets d'employer toutes les fonctions mathématiques de l'application "Main" (diff, intg, solve, …)
- Draw : Cette librairie vous permet de dessiner sur l'écran (point, ligne, cercle,…) et pour employer des sprites/images
- IO : Entrée-sortie : Cette librairie vous permet de manipuler les fichiers de votre Classpad (ouvrir, enregistrer, lire,…)
- String : Cette librairie vous permet de manipuler les chaines de caractères
- Debug : Cette librairie vous permet de corriger votre programme
- Table : Cette librairie vous permet de manipuler des listes
- Math : Cette librairie vous permet d'effectuer des opérations sur des nombres (sin, log,…)
Pour connaître toutes les fonctions d'une librairie, "table.foreach (<name du library>, de la copie)"
Structures de Controle
BOUCLES
- Vous pouvez casser une boucle avec "break"
While
while <condition 1> do <code à exécuter tant que la condition 1 est respectée> end
Repeat
repeat <code à exécuter tant que la condition 1 est respectée> until <condition 1>
For
for <var>=<min>,<max>[,incrément] do <code à exécuter tant que var est différent de max > end
- Si l'incrément n'est pas spécifié, il vaudra automatiquement 1
IF
if <condition 1> then <code à exécuter si la condition 1 est respectée> elseif <condition 2> then <code à exécuter si la condition 1 est respectée et la condition 1 est respectée> else <code à exécuter si aucune des conditions n'est respéctée> end
Déclaration d'une fonction
function <nom de la fonction>(<liste des paramètres>) <code à exécuter si la fonction est appelée> return <valeur à retourner> end
- Si la valeur à retourner n'est pas spécifiée, la fonction ne renverra rien
- Si aucun paramètre n'est spécifié, la fonction fonctionnera sans paramètre
- On peut déclarer des variables locales dans les fonctions, utilisable uniquement par la fonction dans laquelle elles ont étés déclarées
Comentaires
--<commentaire> pour un commentaire d'une ligne --[[<commentaire>]]-- pour un commentaire de plusieurs lignes
Fonctions spécifiques à CPLua
CPLua a deux écran différents : la console (pour les entrées/sorties) et l'écran graphique (pour dessiner). Par défaut, un programme affiche la console. On peut passer de l'un à l'autre à l'aide de
- showconsole() pour afficher la console
- showgraph() pour afficher l'écran graphique
Il y a de nombreuse autres fonctions spécifiques telles que :
- keypad(0/1) : 0 pour masque le clavier et 1 pour l'afficher
- fullscreen(0/1) : 0 pour afficher la barre de menu 1 pour la masquer
Pour connaitre toutes les fonctions spécifiques et leur syntaxes, regarder ici