Dartmouth BASIC, Historia del desarrollo, Interfaz de usuario, Palabras clave

Dartmouth BASIC es la versión original del lenguaje de programación BASIC. Se llama así porque fue diseñado e implementado en el Dartmouth College. El lenguaje fue diseñado por John G. Kemeny y Thomas E. Kurtz, como parte del Sistema de Tiempo Compartido Dartmouth y fue uno de los primeros lenguajes de programación destinados a ser utilizados interactivamente.

Varias versiones fueron producidas en Dartmouth con los años, todos implementados como compilar e ir compiladores, a diferencia de muchas de las versiones del lenguaje implementado en otros lugares, que eran intérpretes. La primera compilador se produjo antes de que el sistema de tiempo compartido estaba listo. Conocido como CardBASIC, fue pensado para que el sistema de procesamiento por lotes basado en lector de tarjetas estándar. Como todas las versiones siguientes, que se llevó a cabo por un equipo de programadores universitarios que trabajan bajo la dirección de Kemeny y Kurtz. La primera versión interactiva se puso a disposición de los usuarios en general en junio de 1964, y la segunda en octubre de 1964, y el tercero en 1966, y el cuarto en 1969, y el quinto en 1970, el sexto en 1971, y el séptimo en 1979.

Historia del desarrollo

El trabajo en el compilador y el sistema operativo se llevó a cabo al mismo tiempo, por lo que los primeros programas BASIC se ejecuta en modo batch como parte del proceso de desarrollo durante los primeros años 1964 - Sin embargo, en 01 de mayo 1964 a las 4 am ET, John Kemeny y John McGeachie corrió los primeros programas en BASIC a ejecutar con éxito de los terminales del sistema de DTSS. No está del todo claro cuáles fueron los primeros programas. Sin embargo, los programas bien consistían en una sola línea:

 PRINT 2 2

o fueron puestas en práctica de la Criba de Eratóstenes, de acuerdo a una entrevista de 1974 en la que Kemeny y McGeachie participaron.

La segunda versión de BASIC sólo hizo cambios mínimos, y agregó que el operador coma para la instrucción PRINT y subíndices cero a arrays.

Para la tercera versión, se introdujo la instrucción INPUT, junto con las declaraciones MAT potentes para la manipulación de la matriz y la instrucción RESTORE para su uso con READ/DATA. El desarrollo continuó con la introducción de la manipulación de texto y las variables, también conocido como las variables de cadena, de la versión 4 y verdadero manejo de archivos en la versión 5 - Version 6 vio la introducción de procedimientos por separado compilables con parámetros, esta es la versión de la que más tarde dialectos de BASIC descender. En 1976, Steve Garland añadió características de programación estructurada para crear Dartmouth SBasic, un precompilador que produjo la versión 6 de salida. En 1979 Kemeny y Kurtz lanzaron un compilador BASIC ANSI como la versión séptima y última de BASIC de Dartmouth antes de salir de la universidad para concentrarse en el desarrollo de ANSI BASIC en forma de verdadera BASIC.

Se utilizaron las primeras versiones de BASIC y probados por otros estudiantes de Dartmouth que trabajan en los laboratorios universitarios de psicología a principios de 1964. Los departamentos comparten varias máquinas de tarjetas perforadas de IBM que se utilizan para ejecutar programas de análisis estadístico de proceso por lotes.

Los estudiantes que trabajan en materia de subvenciones NSF en ambos departamentos vivían en la misma casa rural New Hampshire durante el verano de 1964. A menudo se reunieron para compartir ideas. Una contribución notable de estas sesiones nocturnas era la instrucción GOTO. Las primeras versiones impresas de los manuales de los usuarios se mimeografiado y tenía una tapa de color rosa.

Dr. Kemeny, un inmigrante de Hungría y presidente del departamento de Matemáticas en el tiempo, con el tiempo pasó a servir con gran distinción como presidente de la universidad. Sr. McGeachie, estudiante de licenciatura en el momento, se llamaba "GEACH" por sus amigos y colegas.

Interfaz de usuario

DTSS implementar un entorno de desarrollo integrado de principios: una interfaz de línea de comandos interactiva. No hubo necesidad de cerrar la sesión. Si los usuarios no respondieron, se registran después de un breve retraso.

Cualquier línea tecleado por el usuario, y comienza con un número de línea, se añadió al programa, reemplazando cualquier línea previamente almacenado con el mismo número, cualquier otra cosa se supone que es un comando DTSS y ejecutado inmediatamente. Líneas que consistía únicamente en un número de línea no se almacenan, pero se quitaron cualquier línea previamente almacenado con el mismo número. Este método de edición era necesaria debido al uso de teletipos que las unidades de terminal para el sistema de tiempo compartido Dartmouth.

Lista de comandos

  • HOLA - identifícate para DTSS
  • BYE - cerrar la sesión en DTSS
  • Modo BASIC inicio - BASIC
  • NUEVO - nombre y empezar a escribir un programa
  • VIEJO - recuperar un programa llamado anteriormente de almacenamiento permanente
  • LISTA - muestra el programa actual
  • Guardar - Guarda el programa actual en el almacenamiento permanente
  • Unsave - borrar el programa actual de almacenamiento permanente
  • CATALOGO - mostrar los nombres de los programas en el almacenamiento permanente
  • SCRATCH - borrar el programa en curso sin borrar su nombre
  • RENAME - cambiar el nombre del programa actual sin borrarla
  • RUN - ejecutar los programas actuales
  • STOP - interrumpir el programa actualmente en ejecución
  • Vie - Modo Friden de teletipos con linefeeds mecánicos
  • NFR - Modo Friden salida
  • EXP - explicar EXP EXP para la lista de comandos que se pueden explicar por el sistema

Los comandos a menudo se cree que parte del lenguaje BASIC por los usuarios, pero, de hecho, eran parte del sistema de tiempo compartido y también se utilizaron en la preparación de programas de ALGOL o FORTRAN a través de los terminales de DTSS.

Palabras clave

La primera versión interactiva implementó las siguientes tipos de instrucciones, teniendo algunos de sus operadores y palabras clave de FORTRAN II y algunos de ALGOL 60.

Lista de los enunciados básicos

  • DEF - definir funciones de una sola línea
  • DIM - definir el tamaño de las matrices
  • END - definir el final del programa
  • STOP - detener un programa antes de que finalice textual
  • A/A/STEP - definir bucles
  • NEXT - marcar el final de los bucles
  • GOSUB - control de transferencia de subrutinas simples
  • RETURN - control de retorno de subrutinas simples
  • GOTO - Control de la transferencia a otra declaración
  • IF/THEN - la toma de decisiones
  • ALQUILER/= - Asignar resultados de la fórmula a una variable
  • PRINT - resultados de salida
  • DATOS - almacén de datos estáticos en el programa
  • LEA - datos de entrada almacenados en sentencias DATA
  • REM - comentario

También implementó variables numéricas de punto flotante y la aritmética. Los nombres de variables se limitan a la A a la Z, A0 a A9, B0 a B9, ..., Z0 a Z9, dando un máximo de 286 posibles variables distintas. Nombres de matriz se limitaban a un solo Z. Las matrices no necesitan ser definidos, pero en la ausencia de una instrucción DIM que por defecto en 10 elementos, subíndice de 1 a 10.

Lista de los operadores

Lista de funciones

  • ABS Valor absoluto
  • ATN valor Arcotangente
  • COS Coseno valor
  • EXP Calcular el exponente
  • Valor entero INT
  • LOG valor logarítmico Natural
  • Valor de RND Random
  • Valor Sine SIN
  • SQR valor Raíz Cuadrada
  • Valor Tangente TAN