LLMpediaThe first transparent, open encyclopedia generated by LLMs

BASIC

Generated by GPT-5-mini
Note: This article was automatically generated by a large language model (LLM) from purely parametric knowledge (no retrieval). It may contain inaccuracies or hallucinations. This encyclopedia is part of a research project currently under review.
Article Genealogy
Parent: Paul Allen Hop 4
Expansion Funnel Raw 63 → Dedup 0 → NER 0 → Enqueued 0
1. Extracted63
2. After dedup0 (None)
3. After NER0 ()
4. Enqueued0 ()
BASIC
NameBASIC
ParadigmImperative, procedural, interactive
Designed byJohn Kemeny, Thomas Kurtz
First appeared1964
TypingDynamic (typically)
ImplementationsDartmouth BASIC, Microsoft BASIC, AppleSoft BASIC, BBC BASIC, GW-BASIC, Commodore BASIC
Influenced byFORTRAN, ALGOL, LISP
InfluencedMicrosoft Visual Basic, QBasic, FreeBASIC, X10, BBC BASIC for Windows

BASIC is a family of high-level programming languages created to provide easy access to computing for students, hobbyists, and non-specialists on time-sharing systems and personal computers. It emphasizes straightforward syntax, immediate feedback via interactive interpreters, and rapid development for simple tasks, education, and prototyping. Over decades, BASIC branched into many dialects and implementations across academic, commercial, and home computing platforms, shaping early software ecosystems and user experiences.

History

BASIC originated at Dartmouth College in 1964, developed by John Kemeny and Thomas Kurtz to democratize access to Timesharing systems and replace batch-oriented environments used by languages such as FORTRAN and COBOL. Early Dartmouth releases introduced interactive interpreters on DTSS machines, influencing language teaching at institutions like MIT and Stanford University. In the 1970s and 1980s, companies such as Microsoft and Commodore International adapted BASIC for microcomputers, producing implementations like Microsoft BASIC and Commodore BASIC that became standard on platforms including the Altair 8800, Apple II, and Commodore 64. Government and institutional decisions, such as curricular adoption at schools in the United Kingdom and United States Department of Education-funded initiatives, further spread BASIC. The language's ubiquity on home systems contributed to the growth of software markets and user communities centered on hobbyist magazines like Byte and Compute!. Later efforts, including the development of Microsoft Visual Basic and open-source projects like FreeBASIC, moved the family toward event-driven and object-oriented models while preserving rapid application development roots.

Language Design and Features

BASIC's design emphasizes simple statements, line-oriented editing in early interpreters, and an interactive read-eval-print loop inspired by systems such as LISP and JOSS. Core constructs include numeric and string variables, array handling, conditional branching using statements analogous to GOTO and structured forms like IF...THEN...ELSE, and iterative control structures such as FOR...NEXT loops. Early dialects favored one-based arrays and implicit typing via variable name conventions; later dialects introduced explicit declarations, strong typing, procedures and functions, and modularization influenced by languages like ALGOL. Many implementations provided standard I/O operations for devices and files, graphics commands for bitmap and vector output on platforms like the BBC Micro and Apple II, and system hooks to access hardware such as sound chips in Commodore 64 and expansion interfaces in ZX Spectrum. Runtime features typically include dynamic memory allocation, garbage collection in some modern variants, and integrated debuggers in environments like Microsoft Visual Basic. Event-driven and GUI features in successors integrated with operating systems such as Microsoft Windows and toolkits like COM.

Implementations and Dialects

Notable academic and commercial implementations began with Dartmouth BASIC and proliferated into dozens of dialects. Microsoft BASIC powered many early microcomputers and was licensed to manufacturers including MITS for the Altair 8800 and Apple Computer for the Apple II via Integer BASIC and later AppleSoft BASIC. Home computer ecosystems often centered on bespoke dialects: Commodore BASIC (derived from Microsoft BASIC), Cassette BASIC on early Sinclair ZX machines, BBC BASIC developed by Acorn Computers for the BBC Micro educational project, and GW-BASIC distributed with early Microsoft DOS. Advanced systems produced compiled or semi-compiled variants such as Tandy TRS-80 BASIC compilers, while integrated development environments like QBasic and QuickBASIC added structured programming features. Modern continuations include FreeBASIC, Xojo (formerly REALbasic), and Mono-Basic implementations that interoperate with frameworks like .NET and Mono. Embedded and retrocomputing communities maintain interpreters and cross-compilers targeting vintage hardware and emulators such as VICE and MAME.

Usage and Impact

BASIC shaped early computer literacy, lowering barriers for learners at institutions like Dartmouth College and influencing curriculum adoption at BBC initiatives and national educational programs in the United Kingdom. Its presence on platforms such as the Apple II, TRS-80, and Commodore 64 helped spawn software industries, independent developers, and magazines like Softalk and Creative Computing that distributed listings and programs. Business and scientific users applied optimized dialects for rapid prototyping and internal tools at firms including Microsoft and IBM before transitions to languages like C and Pascal for performance-critical tasks. The shift to visual programming produced products such as Microsoft Visual Basic, which influenced enterprise application development and RAD methodologies across Microsoft Windows environments. BASIC's cultural legacy includes fostering hobbyist communities, amateur game development scenes, and influential programmers who began with BASIC before contributing to projects at companies like Apple Computer, Microsoft, and Google.

Example Programs

10 PRINT "HELLO, WORLD!" 20 END

10 REM Fibonacci sequence 20 LET A = 0 30 LET B = 1 40 PRINT A 50 LET T = A + B 60 LET A = B 70 LET B = T 80 IF A < 100 THEN GOTO 40 90 END

10 INPUT "Name: "; N$ 20 PRINT "Welcome, "; N$ 30 END

10 FOR I = 1 TO 10 20 PRINT I; 30 NEXT I 40 END

Category:Programming languages