Beginner's All-purpose Symbolic Instruction Code.
A simple language originally designed for ease of programming
by students and beginners. Many dialects exist, and BASIC is
popular on microcomputers with sound and graphics support.
Most micro versions are
interactive and
interpreted.
BASIC has become the leading cause of brain-damage in
proto-hackers. This is another case (like
Pascal) of the
cascading lossage that happens when a language deliberately
designed as an educational toy gets taken too seriously. A
novice can write short BASIC programs (on the order of 10-20
lines) very easily; writing anything longer is painful and
encourages bad habits that will make it harder to use more
powerful languages. This wouldn't be so bad if historical
accidents hadn't made BASIC so common on low-end micros. As
it is, it ruins thousands of potential wizards a year.
Originally, all references to code, both
GOTO and GOSUB
(subroutine call) referred to the destination by its line
number. This allowed for very simple editing in the days
before text editors were considered essential. Just typing
the line number deleted the line and to edit a line you just
typed the new line with the same number. Programs were
typically numbered in steps of ten to allow for insertions.
Later versions, such as
BASIC V, allow
GOTO-less
structured programming with named procedures and
functions, IF-THEN-ELSE-ENDIF constructs and
WHILE loops
etc.
Early BASICs had no graphic operations except with graphic
characters. In the 1970s BASIC interpreters became standard
features in mainframes and minicomputers. Some versions
included
matrix operations as language primitives.
A
public domain interpreter for a mixture of
DEC's
MU-Basic and
Microsoft Basic is
here.
A
yacc parser and
interpreter were in the
comp.sources.unix archives volume 2.
See also
ANSI Minimal BASIC,
bournebasic,
bwBASIC,
ubasic,
Visual Basic.