Skip to content
Home

BASIC (programming language)

BASIC, short for Beginner's All-purpose Symbolic Instruction Code, is an imperative programming language created at Dartmouth in 1964 for teaching and general-purpose programming.

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.

General

The language was designed based on eight principles:

  • Easy to learn for beginners
  • Universally applicable
  • Extensibility of the language for experts
  • Interactivity
  • Clear error messages
  • Short response times
  • Hardware independence
  • Operating system independence

History

BASIC was developed in 1964 by John G. Kemeny, Thomas E. Kurtz, and Mary Kenneth Keller at Dartmouth College to help electrical engineering students get started with programming as opposed to Algol and Fortran. On May 1, 1964, at four o'clock local New Hampshire time, the first two BASIC programs ran simultaneously on a General Electric GE-225 computer in the basement of Dartmouth College. BASIC was then further developed for many years by more and more computer science students at that college; in addition, beginning in the late 1960s, Kemeny and Kurtz propagated it to several area schools that wanted to add computer courses to their curriculum for the first time. BASIC, in keeping with the wishes of its "fathers," was free to the schools, unlike almost all other programming languages in use at the time, most of which cost several thousand dollars. Many of the large computer manufacturers of the time (such as DEC) soon offered BASIC interpreters for their new minicomputers because of the easy learnability of the language and its royalty-free usability; many medium-sized companies, which were purchasing computers in larger numbers for the first time at the time, thus came into contact with BASIC.

Some of the pupils, students and programmers working in the middle class who were familiar with BASIC in this way were somewhat later active in the short-lived hobbyist computer scene of the mid-1970s, which preceded the commercial microcomputers, and made BASIC known there; hardly any other high-level language widespread at the time was as well suited as (a trimmed-down) BASIC for the extremely limited memory space of these first microcomputers. BASIC reached its peak in the late 1970s and early 1980s with the first home computers that emerged from the hobbyist computers, almost all of which had a BASIC interpreter as their user interface and programming environment. Prominent examples are Sinclair computers of the ZX series with Sinclair-Basic (ZX80, ZX81 and ZX Spectrum), the Acorn BBC Micro, the Tandy TRS-80, the Texas Instruments TI-99/4A, the Schneider/Amstrad CPC, the Apple II, the Atari 8-bit home computers or the most sold home computer of all times, the Commodore 64. But also the forerunners of the personal computers, as for example from Philips, could work with CP/M-BASIC interpreting or compiled. By far the most of these BASICs came from Microsoft. BASIC was Microsoft's first and in the early years most important product, several years before with MS-DOS the first operating system of this company came on the market.

Practically all owners of home computers at that time had at least a basic knowledge of BASIC, since most computers started the BASIC interpreter when they were switched on, which allowed further programs to be loaded using BASIC commands. Even when graphical user interfaces were introduced in the mid-1980s with the Macintosh, Amiga and Atari ST, BASIC interpreters continued to be supplied with these. Furthermore, there were additional purchasable versions of BASIC dialects. By means of compilers some BASIC dialects could be translated directly into clearly faster machine programs and/or be translated under bypassing of the interpreter directly into call lists of the underlying interpreter functions. MS-DOS, which became widespread in 1981, also contained a BASIC interpreter - initially BASICA or GW-BASIC, later QBasic - which played a role in the teaching of computer science at many schools in Germany. At this time, however, a change set in because other high-level languages such as C became available for home computers or the resources of the respective system were only inadequately supported by the BASIC interpreter supplied, forcing the programmer to become familiar with assembler.

Due to its implementation as an interpreter language, the early BASIC dialects were also significantly slower than most other, usually compiler-based high-level languages. This made it particularly unattractive for time-critical applications or led to the use of machine language subroutines, which were often written to main memory from BASIC using POKE instructions. Such programs were, of course, not portable. For this reason, and because of its fragmentation into countless dialects, BASIC is considered almost non-portable.

Some BASIC dialects, e.g. AmigaBASIC, were extended by labels, which serve as jump addresses instead of line numbers. Other BASIC-dialects then handled functions and procedures. The jump instruction GOTO thus became dispensable and is even considered frowned upon today. The much criticized so-called spaghetti code (unclear source code which is difficult to understand, especially because of surprising jumps) could be avoided in favor of a structured and function-oriented programming.

Over time, standard applications such as word processors, spreadsheets and databases became established. This meant that it was no longer necessary for many computer users to develop such programs themselves, which is why the use of programming languages generally declined.

For some areas, Pascal or C temporarily prevailed in teaching as the first programming language taught.

With the introduction of object-oriented language elements, another attempt was made to bring Visual Basic on par with other object-oriented programming languages such as C++.

Tags

Related articles

Author

AlegsaOnline.com BASIC (programming language)

URL: https://en.alegsaonline.com/art/9225

Share

Sources