
BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code)[1] is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College in 1963. They wanted to enable students in non-scientific fields to use computers. At the time, nearly all computers required writing custom software, which only scientists and mathematicians tended to learn.
For other uses, see BASIC (disambiguation).
In addition to the programming language, Kemeny and Kurtz developed the Dartmouth Time Sharing System (DTSS), which allowed multiple users to edit and run BASIC programs simultaneously on remote terminals. This general model became popular on minicomputer systems like the PDP-11 and Data General Nova in the late 1960s and early 1970s. Hewlett-Packard produced an entire computer line for this method of operation, introducing the HP2000 series in the late 1960s and continuing sales into the 1980s. Many early video games trace their history to one of these versions of BASIC.
The emergence of microcomputers in the mid-1970s led to the development of multiple BASIC dialects, including Microsoft BASIC in 1975. Due to the tiny main memory available on these machines, often 4 KB, a variety of Tiny BASIC dialects were also created. BASIC was available for almost any system of the era, and became the de facto programming language for home computer systems that emerged in the late 1970s. These PCs almost always had a BASIC interpreter installed by default, often in the machine's firmware or sometimes on a ROM cartridge.
BASIC declined in popularity in the 1990s, as more powerful microcomputers came to market and programming languages with advanced features (such as Pascal and C) became tenable on such computers. By then, most nontechnical personal computer users relied on pre-written applications rather than writing their own programs. In 1991, Microsoft released Visual Basic, combining an updated version of BASIC with a visual forms builder. This reignited use of the language and "VB" remains a major programming language[2][3] in the form of VB.NET, while a hobbyist scene for BASIC more broadly continues to exist.[4][5]
Spread on time-sharing services[edit]
The emergence of BASIC took place as part of a wider movement toward time-sharing systems. First conceptualized during the late 1950s, the idea became so dominant in the computer industry by the early 1960s that its proponents were speaking of a future in which users would "buy time on the computer much the same way that the average household buys power and water from utility companies".[13]
General Electric, having worked on the Dartmouth project, wrote their own underlying operating system and launched an online time-sharing system known as Mark I. It featured BASIC as one of its primary selling points. Other companies in the emerging field quickly followed suit; Tymshare introduced SUPER BASIC in 1968, CompuServe had a version on the DEC-10 at their launch in 1969, and by the early 1970s BASIC was largely universal on general-purpose mainframe computers. Even IBM eventually joined the club with the introduction of VS-BASIC in 1973.[14]
Although time-sharing services with BASIC were successful for a time, the widespread success predicted earlier was not to be. The emergence of minicomputers during the same period, and especially low-cost microcomputers in the mid-1970s, allowed anyone to purchase and run their own systems rather than buy online time which was typically billed at dollars per minute.[b][15]
Post-1990 versions and dialects[edit]
Many other BASIC dialects have also sprung up since 1990, including the open source QB64 and FreeBASIC, inspired by QBasic, and the Visual Basic-styled RapidQ, HBasic, Basic For Qt and Gambas.[72] Modern commercial incarnations include PureBasic, PowerBASIC, Xojo, Monkey X and True BASIC (the direct successor to Dartmouth BASIC from a company controlled by Kurtz).
Several web-based simple BASIC interpreters also now exist, including Quite Basic by Nikko Strom,[73] as well as Microsoft's Small Basic and Google's wwwBASIC.[74] A number of compilers also exist that convert BASIC into JavaScript,[75] such as JSBasic which re-implements Applesoft BASIC,[76] Spider BASIC,[77] and NS Basic.
Building from earlier efforts such as Mobile Basic and CellularBASIC,[78][79] many dialects are now available for smartphones and tablets. Through the Apple App Store for iOS options include Hand BASIC,[80] Learn BASIC,[81] Smart Basic based on Minimal BASIC,[82] Basic! by
miSoft,[83] and BASIC by Anastasia Kovba.[84] The Google Play store for Android meanwhile has the touchscreen focused Touch Basic,[85] B4A, the RFO BASIC![f] interpreter based on Dartmouth Basic,[86] and adaptations of SmallBasic, BBC Basic, Tiny Basic, X11-Basic,[87] and NS Basic.
On game consoles, an application for the Nintendo 3DS and Nintendo DSi called Petit Computer allows for programming in a slightly modified version of BASIC with DS button support. A version has also been released for Nintendo Switch, which has also been supplied a version of the Fuze Code System,[88] a BASIC variant[89] first implemented as a custom Raspberry Pi machine.[90] Previously BASIC was made available on consoles as Family BASIC (for the Nintendo Famicom) and PSX Chipmunk Basic (for the original PlayStation), while yabasic was ported to the PlayStation 2 and FreeBASIC to the original Xbox. Dragon BASIC was created for homebrew on the Game Boy Advance and Nintendo DS,[91] with NEXTBasic,[92] BasiEgaXorz[93] and SecondBASIC[94] being created for the Sega Genesis.
Calculators[edit]
Variants of BASIC are available on graphing and otherwise programmable calculators made by Texas Instruments (TI-BASIC), HP (HP BASIC), Casio (Casio BASIC), and others.
Windows command-line[edit]
QBasic, a version of Microsoft QuickBASIC without the linker to make EXE files, is present in the Windows NT and DOS-Windows 95 streams of operating systems and can be obtained for more recent releases like Windows 7 which do not have them. Prior to DOS 5, the Basic interpreter was GW-Basic. QuickBasic is part of a series of three languages issued by Microsoft for the home and office power user and small-scale professional development; QuickC and QuickPascal are the other two. For Windows 95 and 98, which do not have QBasic installed by default, they can be copied from the installation disc, which will have a set of directories for old and optional software; other missing commands like Exe2Bin and others are in these same directories.
Legacy[edit]
The ubiquity of BASIC interpreters on personal computers was such that textbooks once included simple "Try It In BASIC" exercises that encouraged students to experiment with mathematical and computational concepts on classroom or home computers. Popular computer magazines of the day typically included type-in programs.
Futurist and sci-fi writer David Brin mourned the loss of ubiquitous BASIC in a 2006 Salon article[95] as have others who first used computers during this era. In turn, the article prompted Microsoft to develop and release Small Basic;[96] it also inspired similar projects like Basic-256[97][98] and the web based Quite Basic.[99] Dartmouth held a 50th anniversary celebration for BASIC on 1 May 2014,[100] as did other organisations; at least one organisation of VBA programmers organised a 35th anniversary observance in 1999.[101] The pedagogical use of BASIC has been followed by other languages, such as Pascal, Java and particularly Python.[102]
Dartmouth College celebrated the 50th anniversary of the BASIC language with a day of events[103] on April 30, 2014. A short documentary film was produced for the event.[104]