|This article needs additional citations for verification. (August 2011)|
|Appeared in||1975 (cf. Altair BASIC)|
|Stable release||cf. Visual Basic .NET (2012)|
Microsoft BASIC was the foundation product of the Microsoft company. It first appeared in 1975 as Altair BASIC, which was the first BASIC by Microsoft and the first high level programming language available for the Altair 8800 microcomputer.
Altair BASIC and early microcomputers
The Altair BASIC interpreter was developed by Microsoft founders Paul Allen and Bill Gates with help from Monte Davidoff, using a self made Intel 8080 software simulator running on a PDP-10 minicomputer. The dialect of BASIC was similar to Digital Equipment Corporation interpreters, especially in string operations, which varied between BASIC implementations. BASIC used dynamically allocated strings which stored their size. Early BASIC only supported single letter and digit names, but Microsoft BASIC supported long variable names. Only two characters were significant though; AD, ADDRESS1, and ADDRESS2 would all point to the same value. The runtime symbol table used a linear search so that a program which used many distinct variables would run much slower than a program which used a single array for all its variables.
It was delivered on paper tape and in its original version took 4 KB of memory. The extended 8 KB version was then generalized into BASIC-80 (8080/85, Z80), and ported into BASIC-68 (6800), BASIC-69 (6809), and MOS Technology 6502-BASIC (unfortunately spilling over to 9 KB, in an era when 8 KB ROM chips were standard), as well as the 16-bit BASIC-86 (8086/88). It was ideal for ROM-based computers since it did not require an editor (each line requires a number), nor a disk drive to store object code or linked executable. It was less sophisticated than software for industrial desktop computers, which had dedicated keys to load, store, and keys for editing within a line and debugging, but personal computer pricing, in contrast, started at $1,565, not $7,000.
Licenses to home computer makers
After the initial success of Altair BASIC, Microsoft BASIC became the basis for a lucrative software licensing business, being ported to the majority of the numerous home and personal computers of the 1970s and especially the 1980s, and extended along the way. Contrary to the original Altair BASIC, most home computer BASICs were resident in ROM, and thus were available on the machines at power-on in the form of the characteristic "
READY." prompt. Hence, Microsoft's and other variants of BASIC constituted a significant and visible part of the user interface of many home computers' rudimentary operating systems.
Microsoft BASIC (BASICA, GW-BASIC, QuickBasic, QBasic) is no longer found on distributions of Microsoft Windows or DOS; however, it can be downloaded from various internet sites, and archives of DOS versions or old DOS disks which will still run on Pentium class Windows XP machines. The latest incarnation of Microsoft BASIC is Visual Basic .NET which incorporates some features from C++ and C# and can be used to develop web forms, Windows forms, console applications and server-based applications. Most .NET code samples are presented in VB.NET as well as C#, and VB.NET continues to be favored by former Visual Basic programmers.
In October 2008, Microsoft released Small Basic. The language itself has only 14 keywords. Small Basic Version 1.0 (12 June 2011) was released with an updated Microsoft MSDN website that included a full teacher curriculum, a Getting Started Guide, and several e-books. Small Basic exists to help students as young as age eight learn the foundations of computer programming and then graduate to Visual Basic via the downloadable software, Visual Studio Express, where they can continue to build on the foundation by learning Visual C#, VB.NET, and Visual C++.
Variants and derivatives of Microsoft BASIC
- Altair BASIC (MITS Altair and other S-100 computers)
- Amiga BASIC (Commodore Amiga family)
- Applesoft BASIC (Apple II family)
- Atari Microsoft BASIC I and II (Atari 8-bit family)
- BASICA ("BASIC Advanced") (PC DOS, on IBM PC)
- Color BASIC (TRS-80 Color Computer)
- Commodore BASIC (Commodore 8-bit family, incl C64)
- Oric Extended Basic (Oric 8-bit family)
- Extended Color BASIC (TRS-80 Color Computer and Dragon 32/64)
- IBM Cassette BASIC (Original IBM PC, built into ROM)
- Galaksija BASIC (Galaksija home computer)
- GW-BASIC (BASICA for MS-DOS, on PC compatibles)
- Microsoft Level III BASIC (Tandy/Radio-Shack TRS-80)
- MBASIC (CP/M, on 8080/85 and Z80 based computers)
- MS BASIC for Macintosh (Mac OS on Apple Macintosh)
- MSX BASIC (MSX standard home computers)
- N88-BASIC (NEC PC8801/9801)
- N82-BASIC (NEC PC8201/8201A)
- QBasic (PC DOS/MS-DOS on IBM PC and compatibles)
- QuickBASIC (PC MS-DOS on IBM PC and compatibles)
- Small Basic (PC DOS/MS-DOS/MS Windows on IBM PC and compatibles)
- TRS-80 Level II BASIC (Tandy/Radio-Shack TRS-80)
- Visual Basic (PC DOS/MS-DOS/MS Windows on IBM PC and compatibles)
- WordBasic (pre-VBA) (MS Windows)
- HP2640 HP2647 Programmable Terminal with AGL graphics extensions
- FreeBASIC - a free clone of the QuickBasic system.
- Gambas - free BASIC implementation inspired by Visual Basic.
- Martin S. Fridson, How to be a billionaire: proven strategies from the titans of wealth,John Wiley and Sons, 1999 ISBN 0-471-33202-X pages 116-120
- Small Basic Blog: Hello World
- What are the 14 keywords of Small Basic?
- Small Basic 1.0 is here!
- Small Basic Curriculum
- Small Basic Getting Started Guide
- Small Basic E-Books
- Small Basic - Elementary and Middle School Student Testimonials
- Graduating from Small Basic
- Microsoft BASIC 6502 Timeline, Bill Gates’ Personal Easter Eggs in 8 Bit BASIC, see external links