XBLite
   HOME

TheInfoList



OR:

XBLite is a free
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
BASIC Basic or BASIC may refer to: Science and technology * BASIC, a computer programming language * Basic (chemistry), having the properties of a base * Basic access authentication, in HTTP Entertainment * Basic (film), ''Basic'' (film), a 2003 film ...
programming language
compiler In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
and development system. It was started in 2001 by David Szafranski in order to provide a
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
exclusive version of the
XBasic XBasic is a variant of the BASIC programming language that was developed in the late 1980s for the Motorola 88000 CPU and Unix by Max Reason. In the early 1990s it was ported to Windows and Linux, and since 1999 it has been available as open sou ...
dialect. XBLite is released under the
GNU GPL The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first ...
licensing scheme, Standard libraries are released under the
GNU LGPL The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
licensing scheme. The XBLite syntax is very similar to that of XBasic and somewhat similar to
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
's
QuickBASIC Microsoft QuickBASIC (also QB) is an Integrated Development Environment (or IDE) and compiler for the BASIC programming language that was developed by Microsoft. QuickBASIC runs mainly on DOS, though there was also a short-lived version for the c ...
in that it is a
procedural language Procedural programming is a programming paradigm, classified as imperative programming, that involves implementing the behavior of a computer program as procedures (a.k.a. functions, subroutines) that call each other. The resulting program is a ...
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 History

XBLite is a project that was started back in 2001. The main idea was to create a language that was based on the
XBasic XBasic is a variant of the BASIC programming language that was developed in the late 1980s for the Motorola 88000 CPU and Unix by Max Reason. In the early 1990s it was ported to Windows and Linux, and since 1999 it has been available as open sou ...
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 Development Specific Events

* A project called xpeeper is currently being developed by the XBLite team. This aims to give
Peephole optimization Peephole optimization is an Optimizing_compiler, optimization technique performed on a small set of compiler-generated instructions, known as a peephole or window, that involves replacing the instructions with a logically equivalent set that has b ...
technology to the XBLite project. The project has been distributed with XBLite since XBLite version 2.3.0. As well, XBLite is itself written in XBLite, making it a self hosting compiler (it can compile itself). Since version 2.1.0, XBLite incorporates the M4 preprocessor tool. * XSEd, the code editor available with XBLite was developed in XBLite. It is based on the
Scintilla Scintilla (the Italian and Latin word for spark) may refer to: * Scintilla AG, a Swiss electrical engineering company, a 100 percent subsidiary of Robert Bosch GmbH since 2005 * Scintilla (comics), a fictional character in the Marvel Universe * S ...
project, a widely used editing component. XSEd is a full featured editor that allows users to work with XBLite source code modules and allows them to compile the code right from the editor. * Open-source project, viXen was originally created by John "prujohn" Evans, who released version 0.50a on July 22, 2006. It is a
WYSIWYG In computing, WYSIWYG ( ), an acronym for what you see is what you get, refers to software that allows content to be edited in a form that resembles its appearance when printed or displayed as a finished product, such as a printed document, web ...
screen designer and an XBLite generator: viXen allows users to prototype a Windows GUI application before coding in XBLite the actual functions inside the generated skeleton. Currently, Guy Lonné develops and maintains the viXen project at SourceForge. * XBLite working with the native Windows
API An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
, Callum Lowcay started the WinX project. It is a GUI library (WinX.dll) written in XBLite that "wraps" many of the most useful WinAPI calls. WinX simplifies coding Windows GUI applications in XBLite by providing an interface to the Windows widgets. WinX's applications can be first prototyped using viXen by just selecting the generation switch "Use WinX" prior the generation of the source code.


Components

XBLite comes with a complete set of components. * Compiler (can make executable files, libraries and dynamic linked libraries (DLL) files) *
Scintilla Scintilla (the Italian and Latin word for spark) may refer to: * Scintilla AG, a Swiss electrical engineering company, a 100 percent subsidiary of Robert Bosch GmbH since 2005 * Scintilla (comics), a fictional character in the Marvel Universe * S ...
Code Editor A source-code editor is a text editor program designed specifically for editing source code of computer programs. It may be a standalone application or it may be built into an integrated development environment (IDE). Features Source-code editor ...
XSEd * Resource Compiler *
Peephole optimizer A peephole, peekhole, spyhole, doorhole, magic eye, magic mirror or door viewer is a small, round opening through a door from which a viewer on the inside of a dwelling may "peek" to see directly outside the door. The lenses are made and arr ...
xpeeper *
Graphical user interface builder A graphical user interface builder (or GUI builder), also known as GUI designer or sometimes RAD IDE, is a software development tool that simplifies the creation of GUIs by allowing the designer to arrange graphical control elements (often cal ...
viXen (Beta stage but very usable) * GUI library WinX


Sample Code

Here is a classic example as it might be coded in XBLite. *
Hello world program Hello is a salutation or greeting in the English language. It is first attested in writing from 1826. Early uses ''Hello'', with that spelling, was used in publications in the U.S. as early as the 18 October 1826 edition of the '' Norwich Cou ...
in XBLite, console mode PROGRAM "hello" CONSOLE DECLARE FUNCTION Entry () FUNCTION Entry () a$ = INLINE$ ("Hello World!\n\n\n Press Enter to quit ") END FUNCTION END PROGRAM *
Hello world program Hello is a salutation or greeting in the English language. It is first attested in writing from 1826. Early uses ''Hello'', with that spelling, was used in publications in the U.S. as early as the 18 October 1826 edition of the '' Norwich Cou ...
in XBLite, Windows GUI mode 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


References


PCOPY! Covering All The BASICs
*
PCOPY! Issue #70
, June 3, 2008, The DEF Of XBLite, Guy Lonné. *
PCOPY! Issue #60
January 8, 2008, An Xblite Primer, Guy Lonné. *
PCOPY! Issue #60
January 8, 2008, The ABC OF XBLite, Guy Lonné.
GMTech Magazine
*
Issue 5
Issue 5, May 2007, page 22 A Review Of XBLite
BASIC Programming
*
XBasic XBasic is a variant of the BASIC programming language that was developed in the late 1980s for the Motorola 88000 CPU and Unix by Max Reason. In the early 1990s it was ported to Windows and Linux, and since 1999 it has been available as open sou ...
The Wikipedia on XBasic


External links

*
The XBLite Forum

XBLite User Group On Google



Visual XBLite Environment (viXen) project at SourceForge
* {{DEFAULTSORT:Xblite Articles with example BASIC code BASIC compilers Software using the GNU General Public License BASIC programming language family