BASIC




<language> Beginner's All-purpose Symbolic Instruction Code. A simple language oroginally designed for ease of programming by students and beginners.

BASIC exists in many dialects, and 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 (a) very painful, and (b) encourages bad habits that will make it harder to use more powerful languages well.

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 (ftp://oak.oakland.edu/pub/Unix-c/languages/basic/basic.tar-z). A yacc parser and interpreter were in the comp.sources.unix archives volume 2.

See also ANSI Minimal BASIC, bournebasic, bwBASIC, ubasic, Visual Basic.

[Jargon File]



< Previous Terms Terms Containing BASIC Next Terms >
baseline
base memory
basename
Base Technology
bash
2B1D
2B+D
ABC
abstract interpretation
Abstract Syntax Notation 1
Basic Assembly Language
BASIC AUTOCODER
Basic COBOL
Basic Encoding Rules
Basic Fortran