Acorn were already extending their earlier Atom BASIC to include structured programming constructs.
In 1964 they created Dartmouth BASIC[14] (short for Beginner’s All-Purpose Symbolic Instruction Code) to be a computer language anyone could use.
[15] During the 1970s, the BBC Continuing Education Department was considering how advancements in computer related technology would impact British society.
Their Microelectronics Report[16] in 1979 to the Manpower Services Commission describes formally their concerns about increasing polarisation and alienation in the workplace that 43 years earlier Charles Chaplin had shown to comic effect in Modern Times.
The BBC required a microcomputer usable for demonstrations in their programming that could be purchased by the general public to enable the viewer to themselves experiment.
It already had features from the ALGOL 60 group of computer languages that Wilson added to enable some structured programming methodology to be used.
BASIC II was used on the Acorn Electron and BBC Micros shipped after 1982, including the Model B.
The main place that BASIC III can be found is as the HI-BASIC version for the external second processor.
BASIC IV, also known as CMOS BASIC, available on the BBC Master machines, was changed to use the new instructions available in the 65SC12 processor, reducing the size of the code and therefore allowing the inclusion of LIST IF, EXT# as a statement, EDIT, TIME$, ON PROC, | in VDU statements and faster floating point.
[25] Another version of BBC BASIC, called BAS128, was supplied on tape and disc with the BBC Master and Master Compact; it loaded into main RAM and used the 64 KB of Sideways RAM for user programs.
This provided support for much larger programs at the cost of being a lot slower than the normal ROM-based version.
As such, there is no simple way to determine which version of BASIC is actually running other than by enquiring the operating system identity and thus making an assumption.
A similar situation exists on RISC OS where there may be the normal BASIC or BASIC64 (which offers higher precision maths).
With the move to the 32-bit ARM CPU and the removal of the 16 KB limit on the BASIC code size many new features were added.
[citation needed] ABC was able to implement almost all of the language, with the obvious exception of the EVAL function, which inevitably required run-time programmatic interpretation.
The compiler was written in BBC BASIC V. Many applications initially written to run under the interpreter benefitted from the performance boost that this gave, putting BBC BASIC V on a par with other languages for serious application development.
BBC BASIC for SDL was also developed by Richard T. Russell, and is largely compatible with the previous BBC BASIC for Windows, sharing with that dialect many new and advanced features including data structures, PRIVATE variables, an EXIT statement, long strings, event interrupts, an address-of operator, byte variables, a line continuation character, indirect procedure and function calls and improved numeric accuracy.
[31] BBC BASIC for SDL 2.0 supports Windows, MacOS, Linux, Raspberry Pi OS, Android, iOS and mobile devices supporting the SDL library,[21] as well as a version which allows the running of BBC BASIC programs as applets in a web-page via the Web Assembly framework.
BBC BASIC for SDL 2.0 incorporates an assembler which depends on the CPU in the platform: x86 (32-bit or 64-bit) for Windows, MacOS or Linux; ARM (32-bit or 64-bit) for Raspberry Pi.
[34] An emulator of the BBC Micro for the Commodore Amiga was produced by Ariadne Software for CBM (UK).
Due to the way the optimised BASIC and the 6502 emulation interacted, almost no commercial games would run but well-behaved code and educational software generally worked.
A version of BBC BASIC V (Z80) has also been made for the TI-83/84+ Texas Instruments calculator families by Benjamin Ryves.
BBC BASIC is the programming language used in the Agon Light, an open-sourced 8-bit Z80-based single board computer and microcontroller designed by Bernardo Kastrup and released in 2022.