|Designed by||David Szafranski|
2.4.1 / September 7, 2010
|License||GNU GPL, Standard libraries licensed under the GNU LGPL|
XBLite is a free Open Source BASIC programming language compiler and development system. It was started in 2001 by David Szafranski in order to provide a Windows exclusive version of the XBasic dialect. XBLite is released under the GNU GPL licensing scheme, Standard libraries are released under the GNU LGPL licensing scheme.
The XBLite syntax is very similar to that of XBasic and somewhat similar to Microsoft's QuickBASIC in that it is a procedural language capable of subs and functions. XBLite also has 64 bit integer data type, User Defined Types and the ability to have multiple modules in order to create GUI applications or games.
XBLite is a project that was started back in 2001. The main idea was to create a language that was based on the XBasic project that was to be exclusively a Microsoft Windows only programming language and environment. The first official release (version 1.0.0) was announced in October 2002, and subsequent versions were spread out amongst the last 6 years of development. Each release boasted both bug fixes and new features (to either the language itself and/or the different tools that are available with the XBLite project).
Today, version 2.4.0 is the current release of the compiler and version 1.30 of XSEd (The code editor). One of the latest projects is a visual GUI designer called viXen.
XBLite comes with a complete set of components.
Here is a classic example as it might be coded in XBLite.
PROGRAM "hello" CONSOLE DECLARE FUNCTION Entry () FUNCTION Entry () a$ = INLINE$ ("Hello World!\n\n\n Press Enter to quit ") END FUNCTION END PROGRAM
PROGRAM "sayhello" ' interfaces to system DLLs IMPORT "gdi32" ' importing interface to gdi32.dll IMPORT "user32" ' importing interface to user32.dll DECLARE FUNCTION Entry () ' declare function Entry() FUNCTION Entry () ' define (instantiate) function Entry() ' display a message box and wait until the user clicks the 'OK!' button MessageBoxA (0, &"Hello world!", &"Windows GUI Version", $$MB_OK) END FUNCTION END PROGRAM