El BASIC original, el Dartmouth BASIC, fue diseñado en 1964 por John George Kemeny, Thomas Eugene Kurtz y Mary Kenneth Keller en el Dartmouth College en New Hampshire, Estados Unidos, como un medio para facilitar la programación en ordenadores a estudiantes (y profesores) que no fueran de ciencias.Sin embargo, durante el transcurso de esa década, los precios bajaron al punto que incluso algunas pequeñas empresas ya podían costearlas.El lenguaje BASIC fue inventado en 1964 por John George Kemeny (1926-1992) y Thomas Eugene Kurtz (1928-) en el Dartmouth College, con la ayuda de otros como la programadora Mary Kenneth Keller.BASIC fue diseñado para permitir a los estudiantes escribir programas usando terminales de un computador en tiempo compartido.Contrario a la creencia popular, BASIC inicialmente no era un lenguaje interpretado sino compilado.Tal argumento, hasta no hace mucho, fue un tema recurrente en la industria de las computadoras.Sin embargo, fue con la introducción de la microcomputadora Altair 8800 en 1975 que BASIC se extendió ampliamente.En 1975 Microsoft (entonces formado por dos personas: Bill Gates y Paul Allen) lanzó el Altair BASIC.En 1979 Microsoft estaba negociando con varios vendedores de microcomputadores, incluyendo IBM, para licenciar un intérprete BASIC para sus ordenadores.Se incluyó una versión en las memorias ROM de los PC IBM para los equipos sin discos.Aparecieron varias extensiones de BASIC para computadores caseros, típicamente con capacidad para gráficos, sonido, y comandos DOS, así como facilidades para Programación estructurada.Hubo lenguajes que usaron la sintaxis de BASIC como base para otros sistemas totalmente diferentes, por ejemplo GRASS.Al mismo tiempo las computadoras progresaban de ser interés para aficionados a herramientas usadas principalmente para ejecutar aplicaciones escritas por otros, y la programación en sí se fue haciendo menos importante para una creciente mayoría de usuarios.Por otra parte, también existe la variante OpenOffice.org Basic menos poderosa pero similar a VBA de Microsoft.La sintaxis mínima de BASIC solo necesita los comandos LET, INPUT, PRINT, IF y GOTO.Un intérprete BASIC con estas características necesita que el código tenga números de línea.Variantes recientes como Visual Basic han introducido algunas características orientadas a objetos, y hasta herencia en la última versión.Estos procedimientos incluyen la mayoría de las herramientas que un programador necesita para aprender a programar y escribir aplicaciones sencillas, así como funciones para realizar cálculos matemáticos, manejar cadenas, entrada desde la consola, gráficos y manipulación de archivos.Viejos dialectos de BASIC no permitían a los programadores escribir sus propios procedimientos.Esto podía producir un código fuente muy confuso (la mayoría de las veces era así), comúnmente conocido como Código espagueti; el cual era sumamente difícil de mantener, mucho menos por programadores ajenos al desarrollo del software.Sin embargo la primitiva GOSUB se ha mantenido hasta las versiones actuales, por razones compatibilidad.El Dartmouth BASIC original también soportaba funciones al estilo de Algol, así como subrutinas desde sus primeros tiempos.Los primeros dialectos ya tenían un juego de funciones fundamentales (LEFT$, MID$, RIGHT$) para extraer y/o reemplazar subcadenas fácilmente.Como las cadenas son utilizadas en aplicaciones diarias, esta era una ventaja considerable sobre otros lenguajes al momento de su introducción.El Dartmouth BASIC original soportaba únicamente datos de tipo numérico y cadenas.
Captura del
microordenador
Commodore
PET-32
mostrando un
programa
en el
lenguaje de programación BASIC
, bajo el
emulador
VICE
en una distribución
GNU/Linux
. La primera línea, titula (rem) al programa para permitir su almacenamiento, la segunda, solicita una cadena de datos (input) que una vez obtenidos, almacenará en una instrucción que el lenguaje lleva incorporada, llamada variable alfanumérica ($). La tercera línea, establece una condición, (if) determina que si la cadena de texto almacenada no es igual (<>) al valor dado, proceda (then) a ejecutar la línea anterior, volviendo así a solicitar nuevos datos, pero en caso de ser igual, (=) continúe ejecutando la siguiente línea del programa. La cuarta línea, imprime el mensaje encomillado en pantalla (print), para terminar con la quinta línea que establece su fin (end).
Pantalla de inicio
Imagen del programa ¡Hola, Mundo! en inglés en un ordenador