Overview

BASIC is a family of high-level, imperative programming languages originally created at Dartmouth College in the mid-1960s to make computing accessible to students and novices. The language was developed by John G. Kemeny and Thomas E. Kurtz, with early contributions from Mary Kenneth Keller, and was designed to be simple to learn and use. Early implementations provided an interactive environment where users could type commands and immediately see results, which helped popularize programming in classrooms and small laboratories. For historical context and institutional background, see Dartmouth College.

Characteristics and syntax

Early BASIC dialects were line-numbered and emphasized procedural, step-by-step programming. Programs often used simple statements and control structures such as GOTO for flow control, PRINT for output, and basic arithmetic and string operations. Typical characteristics include:

  • Readable, English-like keywords designed for beginners.
  • Interactive execution (interpreters or command shells) in many implementations.
  • Line numbers in older versions to identify statements and control jumps; later dialects dropped them in favor of structured constructs.
  • Wide variation between dialects: some are case-insensitive, others support advanced features like modules or objects.

Development and dialects

As computing platforms evolved from mainframes to minicomputers and personal microcomputers, many dialects of BASIC emerged. Companies and hobbyist communities adapted the language to different hardware, producing notable variants such as Microsoft-derived BASICs, home computer implementations like AppleSoft and Commodore BASIC, and later commercial products that added structured programming, libraries, and graphical toolkits. Modern descendants include dialects with object-oriented and event-driven features; for discussion of such modern capabilities, see object-oriented features.

Uses and importance

BASIC played a central role in computer education and the early personal-computing era by lowering the barrier to entry. It enabled students, hobbyists, and small businesses to write programs for data processing, teaching, games, and simple graphical applications. Over time, dialects such as Visual Basic brought rapid application development and graphical user interface design to a broader developer audience. The name itself—BASIC—is an acronym for "Beginner's All-purpose Symbolic Instruction Code," reflecting its original educational purpose.

Distinctions and legacy

Key distinctions among BASIC implementations include whether the language is interpreted or compiled, whether it enforces structured programming, and the availability of modern features such as modules, exceptions, or object orientation. Although many programmers moved to languages that emphasize strict software engineering practices, BASIC's legacy endures in its influence on teaching, the spread of interactive computing, and its role in the rise of personal computers. Today BASIC survives in numerous dialects and descendant environments used for education, scripting, legacy maintenance, and rapid prototyping.

For further reading and specific implementations, surveys of historical versions and modern dialects document how BASIC changed from a simple teaching tool into a diverse ecosystem of languages and environments.