BASIC-256 is a simple BASIC language interpreter designed to help middle and high-school students learn the fundamentals of programming.

The core of the language follows the usual BASIC style. Commands are entered sequentially on numbered lines; For/ Next and Do/ Until handle your looping needs; there's If/ Then/ Else for conditional testing, with GoSub and GoTo for flow control (although you do get Functions, too).

BASIC-256 isn't just some ancient GW-BASIC clone, though. There is the classic "OnError" command for error handling, but you also get the more structured Try/ Catch/ EndTry. Begin Case/ Case/ End Case structures make for very readable conditional testing. Array elements can be assigned in a single line, like this:

dim z(5)
z = {1, 2, 3, 4, 5}

There are some surprisingly powerful extras, too. BASIC-256 provides a set of commands to work with SQLite databases, for example, processing a SQL statement and returning the results. You can create programs to communicate across your network, or the internet. There's even a simple (and safe) way of saving configuration data to the Registry, and reading it later.

This is still just a simple BASIC interpreter. There's no support for objects, no ability to call external code, no form designer, no output options beyond scrolling text and extremely basic graphics. It'll help users to learn about fundamental control structures, but nothing more.

BASIC-256 does offer enough functionality to be useful, though, as a very first programming language, while some bundled examples and online tutorials make it easy to learn.


BASIC-256 is a simple, stripped-back language which makes it easy for novices to learn the fundamentals of computer programming. It's also very limited - if you've any previous development experience then the package will frustrate you very quickly - but if you just want something your kids can play with, to see if they're interested in programming or not, then it's a reasonable choice.