XBLite

XBLite est un compilateur open source d'un langage de programmation proche du BASIC. C'est une spécialisation pour Microsoft Windows du langage de programmation multi-plateforme XBasic, créée en 2001 par David Szafranski. XBLite et son environnement de développement sont publiés sous licence GNU GPL, ses bibliothèques sous licence GNU LGPL. Sa syntaxe est quasiment celle de XBasic, mais on peut y voir des similitudes avec celle de QuickBASIC de Microsoft en ce sens qu'XBLite est aussi un langage procédural avec sous-routines et fonctions. XBLite possède un type numérique de 64 bits, permet de définir de nouveaux types de donnée et autorise un découpage en modules pour créer une application ou un jeu.

Historique 

XBLite est un projet qui a débuté en 2001. L'idée principale était de créer un langage basé sur le projet XBasic mais qui devait être un langage et un environnement de programmation uniquement pour Microsoft Windows. La première version officielle (version 1.0.0) a été annoncée en , et des versions ultérieures ont suivi au cours des 6 dernières années de développement. Chaque nouvelle version apportait son lot de corrections de bogues et de nouvelles fonctionnalités (soit sur le langage lui-même, soit sur les différents outils accompagnant le projet XBLite).

Aujourd'hui, les versions actuelles sont version 2.4.0 pour le compilateur et version 1.30 pour XSEd (l'éditeur de code). Un des projets les plus récentes est un concepteur visuel d'IHM appelé viXen. Projet Open Source, viXen a été créé par John "prujohn" Evans, qui a publié sa version 0.50A le . Actuellement, Guy Lonné développe et maintient ce projet sur SourceForge.

Fonctionnement 

Le compilateur XBLite traduit des sources en syntaxe xblite en langage machine Intel 86. Le programme assembleur généré est alors traité par un éditeur de liens classique pour construire l'exécutable final ou la DLL. XBLite est donc un « petit frère » de XBasic spécialisé pour son utilisation spécifique sous Windows.

Exemple de programme 

Voici le programme canonique Hello World écrit en XBLite :

 En version de type console
 IMPORT  "xst"       ' bibliothèque standard : nécessaire à la plupart des programmes
 DECLARE FUNCTION Entry ()
 
 FUNCTION Entry ()
  PRINT "Hello world!"
  a$ = INLINE$ ("Pressez Entrée pour finir >")
 END FUNCTION
 END PROGRAM                ' fin du programme

 En version de type IHM Windows
 ' interfaces des DLL système avec xblite
 IMPORT "gdi32"             ' importer la DLL système gdi32.dll
 IMPORT "user32"            ' importer la DLL système user32.dll
 DECLARE FUNCTION Entry ()  ' declarer la fonction Entry()
 
 FUNCTION Entry ()          ' début de fonction
  ' afficher une boite de message
  MessageBoxA (0, &"Hello world!", &"Version IHM Windows", $$MB_OK)
 END FUNCTION               ' fin de fonction
 END PROGRAM                ' fin du programme

Références 

 PCOPY! Covering All The BASICs
 PCOPY! Issue #70, June 3rd 2008, The DEF Of XBLite, Guy Lonné.
 PCOPY! Issue #60, January 8th 2008, An Xblite Primer, Guy Lonné.
 PCOPY! Issue #60, January 8th 2008, The ABC OF XBLite, Guy Lonné.
 GMTech Magazine
 Issue 5 Issue 5, May 2007, page 22 A Review Of XBLite
 BASIC Programming
 XBasic The wikipedia on XBasic

Liens externes 

 Page officielle de XBLite
 Le Forum XBLite
 XBLite User Group à Google
 Guy Lonné : XBLite Book Of Knowledge (B.O.K.)
 Visual XBLite Environment (viXen), projet dans SourceForge
 The XBasic Project

Langage informatique