GW-BASIC was a dialect of BASIC developed by Microsoft from BASICA, originally for Compaq.
It is compatible with Microsoft/IBM BASICA, but was disk based and did not require the resources of the ROM included on IBM's machines. It was bundled with MS-DOS operating systems on IBM PC compatibles by Microsoft. Like other early microcomputer versions of BASIC, GW-BASIC lacked many of the structures needed for structured programming such as local variables, and GW-BASIC programs executed relatively slowly, due to the fact that it was an interpreted programming language. It did have a large number of graphics commands.
Still, it had enough flexibility to allow one to write simple games, business programs and the like. Since it was available on any PC, it was also a cheap way for many would-be programmers to learn the fundamentals of computer programming. It also provided a way to develop impressive science fair projects for aspiring students willing to deal with the frustrations of programming in such a spartan system.