Microsoft marketed QuickBASIC as the introductory level for their BASIC Professional Development System.
It is loosely based on GW-BASIC but adds user-defined types, improved programming structures, better graphics and disk support and a compiler in addition to the interpreter.
QuickBASIC runs mainly on DOS, though there was a short-lived version for Mac OS. Microsoft QuickBASIC (also QB not to be confused with “QBasic”) is an Integrated Development Environment (or IDE) and compiler for the BASIC programming language that was developed by Microsoft. QBasic has limited support for user-defined data types (structures), and several primitive types used to contain strings of text or numeric data. Line numbers, a concept often associated with BASIC, are supported for compatibility, but are not considered good form, having been replaced by descriptive line labels. Like QuickBASIC, but unlike earlier versions of Microsoft BASIC, QBasic is a structured programming language, supporting constructs such as subroutines and while loops.
For its time, QBasic provided a state-of-the-art IDE, including a debugger with features such as on-the-fly expression evaluation and code modification. It can run under nearly all versions of DOS and Windows, or through DOSBox/DOSEMU, on Linux and FreeBSD. Code entered into the IDE is compiled to an intermediate form, and this intermediate form is immediately interpreted on demand within the IDE. QBasic is an IDE and interpreter for a variant of the BASIC programming language which is based on QuickBASIC.