XBasic

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in package.lua at line 80: module 'strict' not found.

XBasic
Family BASIC
Designed by Max Reason[1]
Developers Max Reason, Eddie Penninkhof[2]
First appeared late 1980s
Stable release 6.2.3 / 2002; 22 years ago (2002)
Preview release 6.3.22 / 2014; 10 years ago (2014)
Platform I386
OS Windows, Linux
License GNU LGPL
Filename extensions x
Website xbasic.sourceforge.net
Influenced by
BASIC, C (programming language)

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 source software with its runtime library under the LGPL license.

Max Reason discontinued his support, and development since has been overseen by Eddie Penninkhof. Together with a few other enthusiastic programmers, XBasic is slowly being further developed and improved.

Version 6.2.3 is the latest official release, released on 27 October 2002. However, under the guidance and leadership of CW a newer version has been produced, obtainable from the XBasic yahoo groups. (Latest at the time of writing would be 6.3.22) Although primarily coded to keep up with modern Linux distributions, the windows version has been suitably adjusted to keep up with the Linux version.

Characteristics

XBasic has signed and unsigned 8, 16 and 32-bit and signed 64-bit integers as well as 32 and 64-bit floating point values. The string datatype is only for 8 bit characters.

It is possible to generate an assembly language file. XBasic has a Windows only version called XBLite. Development is at SourceForge.

Components

  • Editor (writing computer code)
  • Compiler (creating code)
  • Debugger (checking for errors)
  • Libraries (ready made 'internal' code to call on)
  • GuiDesigner (creates the 'look and feel' of the program)

Example code

 ' Programs contain:
 ' 1. A PROLOG with type/function/constant declarations.
 ' 2. This Entry() function where execution begins.
 ' 3. Zero or more additional functions.
 '
 FUNCTION Entry ()
 
 PRINT "Hello World"
 
 PRINT 2+2
 PRINT 44/12
 PRINT 33*3
 
 END FUNCTION

References

External links