|
|
Panorama des outils de développement ''exotiques'' sur Palm OS |
|
|
Panorama des outils de développement ''exotiques'' sur Palm OS - Posté le 08/10/02
|
Après les panoramas des langages Pascal et BASIC, continuons notre balayage des outils de développement sur Palm OS avec des outils que je qualifierais "d'exotiques" voire franchement "dépaysants", c'est-à-dire utilisant des langages de programmation originaux (voire uniques!) et/ou peu répandus.
Quels peuvent bien être les programmeurs visés par ces langages ? Et bien, de façon surprenante et c'est le résultat de ma propre découverte amusée de ces langages, je pense que tout le monde y trouvera son compte, du débutant au programmeur chevronné qui ne jure que par tel ou tel langage majeur (C, Pascal, BASIC, Java...) en passant par l'amateur curieux de nouveauté.
QU'EST CE QU'UN LANGAGE "EXOTIQUE" ?
Peu de choses rassemblent les outils qui seront présentés ici :- certains sont embarqués sur le Palm (langages dits "onboard"), d'autres sont des environnements de développement sur PC
- certains ont un langage propre, d'autres utilisent un langage peu répandu ou original
- certains sont interprétés, d'autres compilés
- certains sont très chers, d'autres gratuits
- etc...
Bref, et comme il faut bien faire une tentative de définition, nous retiendrons la définition suivante pour cet article: "sera qualifié d'exotique un langage qui ne soit ni le C, ni le Pascal, ni le BASIC, ni le Java". Cette définition a l'immense désavantage d'être une définition NEGATIVE, donc elle risque de m'attirer les foudres de tous les partisants de ces langages. Aussi, surtout ne vous offusquez pas amis lecteurs, l'exotisme est pour moi une carte postale d'une splendide plage tropicale au sable blanc avec un beau lagon d'eau translucide et un ciel bleu azur, donc qui fait rêver !
Par ailleurs, notons que ces langages sont fort nombreux et cette diversité est preuve de la grande richesse de la plateforme Palm et de ses amateurs. Il ne saurait donc être question de lister tous ces langages ici et si l'humeur vous en prend et que vous lisez un tant soit peu l'Anglais allez faire un tour sur PalmPilot Software Development - Alternatives to C, site que j'ai cité dans mes deux précédents articles sur le Pascal et le BASIC tant il est bien fourni.
UN PANEL DE LANGAGES "EXOTIQUES"
Et comme il faut bien se limiter et en choisir quelques uns pour mieux les décrire, voici ceux sur lesquels mon attention fut tout particulièrement attirée (ce choix est donc complètement subjectif, même si j'ai essayé de mon mieux de couvrir un panel assez large de langages) :- CASL
- PDA Toolbox
- PLua
- Quartus Forth
- TinyLogo
Nombreux sont donc ceux que je n'ai pas retenu pour cet article, dont Pocket Smalltalk, Dragon Forth, Lyme, LispMe, Palm Tcl , Pippy, ppforth, Python to Palm Pilot Port, Satelite Forms et quelques autres encore. D'ailleurs, je profite de l'occasion pour faire appel aux personnes qui développent avec ces langages afin qu'ils nous fassent partager, ici sur PeekPocket, leur expérience avec ces environnements de développement.
CASL, la puissance servie par un langage original
CASL, qui signifie Compact Application Solution Language, existe depuis 1996 ce qui en fait aujourd'hui un environnement de développement mature. Voici ses caractéristiques principales :- deux versions sont disponibles à la vente :
- CASL standard au coût de $84.95 qui génère un pseudo-code ensuite interprété par un runtime, à noter que les applications sont limitées à une taille de 64 Ko
- CASL Pro au coût exhorbitant de $284.95, qui génère un code source en C, ensuite compilé avec GCC qui est 2 à 3 fois plus rapide que le pseudo-code interprété par le runtime de la version standard
- développement sur PC dans un IDE complet, appelé CASLide qui permet une création d'interface utilisateur aisée par un système astucieux de drag & drop, une gestion facilitée des objets et évênements, une visualisation et un test sur PC du résultat avant bascule dans le Palm
- langage de script propre proche du Basic
- des assistants et facilités pour gérer les conduits, les communications IR ou série, la distribution des applicatifs...
CASL tire bien son épingle du jeu de l'équilibre difficile à trouver entre la puissance de développement puissante du C et le développement rapide d'un outil de RAD (Rapid Application Development). Et, cette force explique le coût de cet outil plutôt orienté professionnel.
PDA Toolbox, la programmation (presque) sans code
J'ai déjà décrit les fonctionnalités de PDA Toolbox dans un précédent article sous un titre un peu provocateur PDA Toolbox : un vrai outil de développement ?, article que je vous invite donc à lire. Nous ne décrirons ici que les principales caractéristiques de PDA Toolbox :- coût de $25.00
- développement sur PC dans un IDE complet sans écrire une seule ligne de code !
- génération d'un programme compilé (sans runtime) avec création complètement transparente pour le développeur des bases de données sous-jacentes aux fenêtres de saisie et de leurs liens inter tables
- la contrepartie de cette facilité est la pauvreté de "customisation" (ouh l'anglicisme !) par codage que souhaitera le développeur créatif
PDA Toolbox est donc un outil de développement RAD (Rapid Application Development) vraiment original, à la portée de tous, qui permet de réaliser rapidement des maquettes d'applis pour tester des concepts ou de faire des petites applis toutes simples avec base de données.
PLua, l'interpréteur Brésilien (donc vraiment exotique!) embarqué
PLua est un portage sur Palm du langage Lua inventé au TeCGraf (Computer Graphics Technology Group de PUC-Rio) au Brésil. Lua est alors un langage de script original, assez facile à appréhender. Voici les principales caractéristiques de PLua :- les versions beta successives (la 1.0b14 au moment où j'écris ces lignes) sont gratuites mais limitées dans le temps (passé la limite, il faut télécharger la nouvelle beta), mais il n'y a aucune indication sur le statut que prendra finalement PLua; les applications créées avant la date limite restent utilisables indéfiniment avec le runtime livré
- "semi-compilateur" embarqué; à noter que PLua génère un code intermédiaire (du P-Code ?) qui est ensuite exécuté par le runtime joint
- l'IDE livré permet de semi-compiler les codes sources pris dans un Memo ou un fichier DOC, préparant un PRC (avec icone et Creator ID) qui s'exécutera si le runtime est présent aussi sur la machine; il permet aussi d'exécuter directement des petites lignes de code en mode console intégré
- pas d'accès aux API Palm OS, mais PLua bénéficie d'une longue liste de fonctions rajoutées au Lua standard pour profiter à plein de Palm OS
PLua est assez rapide en exécution (grâce à son code "semi-compilé") ce qui en fait un petit outil de développement pratique et simple sur les machines tournant sous Palm OS.
Quartus Forth, le compilateur Forth musclé et embarqué
Le langage Forth est pour moi un langage de bas niveau... (programmeurs Forth, et j'en connais, ne vous sentez pas offensés par cette affirmation car je connais vos arguments pour essayer de me démontrer le contraire !) dont la logique style calculatrice HP en népérien inversé me dépasse largement ! Mais c'est justement ce bas niveau qui permet à Quartus Forth d'être depuis 1997 un compilateur embarqué sur Palm performant et rapide. Voici ses principales caractéristiques :- coût de $69.95 dans sa version complète (création de PRC autonomes) ou gratuit (nécessité d'un runtime pour fonctionner)
- développement embarqué sur Palm, intégration aisée des ressources via l'application complémentaire Quartus RsrcEdit (repris auprès de IndiVideo, le créateur historique de OnBoardC)
- accès aux API Palm
- gestion des codes source dans le MemoPad ou au format DOC
- interpréteur embarqué en mode console, permettant de tester le bon fonctionnement depuis Quartus Forth avant compilation
Une des réalisations les plus connues programmée avec Quartus Forth est l'outil de benchmark historique Benchmark 2.0, par le développeur de Quartus Forth lui-même.
TinyLogo, l'interpréteur embarqué pour s'amuser !
Le Logo fut développé au MIT par Seymour Papert selon la philosophie que c'est à l'élève de programmer l'ordinateur et pas l'inverse ! Logo est donc étudié pour être ludique et son mode graphique "Turtle" fut bien connu, dans les années 1980, par les élèves des petites classes américaines. Mais il ne faut pas se limiter à cette fonctionnalité car TinyLogo permet réellement de faire plus et voyons donc ses caractéristiques :- gratuit
- interpréteur embarqué
- chargement et sauvegarde des scripts dans des Memos
- TinyLogo a été écrit en PocketC, il a donc besoin du runtime de ce dernier pour fonctionner, et il est du coup assez lent à l'exécution... mais a t-on réellement besoin de puissance pour un tel langage ludique ?
- la documentation jointe à TinyLogo est remarquablement bien faite et claire, ce qui est à noter étant donné qu'il s'agit d'un produit freeware; les quelques 90 procédures internes sont vraiment faciles à appréhender et on se surprend bien vite, après avoir parcouru les programmes exemples (au demeurant fort simples à installer via la procédure automatisée) à écrire des petits scripts rigolo...
TinyLogo est bien dans l'esprit du langage Logo, petit langage interprété sans prétention, sympathique et vraiment amusant à utiliser.
CONCLUSION
Ma conclusion sera facile, car il ne peut être question ici de trouver ici des raisons cartésiennes pour vous aider à choisir l'un ou l'autre de ces langages. Car, au delà de quelques paramètres évidents (coût, sur PC ou embarqué sur Palm, compilateur ou interpréteur), tout est affaire de GOUT !
Il en est ainsi de l'exotisme, que ce soit les Caraïbes, les îles de l'Océan indien ou celles du Pacifique, vous trouverez toujours un paysage de carte postale avec des gens souriants, et pourtant peu de gens pourront vraiment vous dire pour quelles raisons réelles il rêve de telle ou telle destination pour des vacances de "farniente" (vaguement traduisible de l'Italien par "ne rien faire") au soleil.
aldweb
|
Date de création : 01/01/2003 @ 00:00
Dernière modification : 01/01/2003 @ 00:00
Catégorie :
Imprimer l'article
|
|
|
|
|
|
Spécial ! |
Version mobile de l'aldweb Site m.aldweb.com Ni Français, ni Anglais ?Essayez donc l'un de ces drapeaux :
|
|
Météo / Spam / www |
Météo Lyon
aldweb contre le SPAM
|
|
|