De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

Investigación, aprendizaje o enseñanza programados ( PILOT ) es un lenguaje de programación simple de alto nivel desarrollado en la década de 1960. [1] Como su hermano menor LOGO , fue una incursión temprana en la tecnología de instrucción asistida por computadora .

PILOT es un lenguaje imperativo similar en estructura a BASIC y FORTRAN en su diseño y estructura básicos. Sus palabras clave son caracteres individuales, Tpara "escribir" para imprimir texto, o Apara "aceptar", para ingresar valores del usuario.

Su historia [ editar ]

PILOT fue desarrollado por John Amsden Starkweather , profesor de psicología en el centro médico de la Universidad de California en San Francisco . En 1962, desarrolló un lenguaje simple para automatizar las pruebas de aprendizaje llamado Computest. A partir de 1968, desarrolló un proyecto de seguimiento llamado PILOT, para varios ordenadores de la época como el SDS 940 . [2]

Sintaxis del idioma [ editar ]

Una línea de código PILOT contiene (de izquierda a derecha) los siguientes elementos de sintaxis :

  • una etiqueta opcional
  • una carta de mando
  • una Y opcional (para sí) o N (para no)
  • una expresión condicional opcional entre paréntesis
  • dos puntos (":")
  • un operando o varios operandos delimitados por comas.

Una etiqueta también puede estar sola en una línea, no seguida de otro código. La sintaxis de una etiqueta es un asterisco seguido de un identificador (cadena alfanumérica con carácter alfabético inicial).

Letras de comando [ editar ]

Los siguientes comandos se utilizan en "core PILOT". Las líneas que comienzan con "R:" indican un comentario (o un comentario) que explica el código que sigue.

A
Acepte la entrada en "aceptar búfer ". Ejemplos:
 R: La siguiente línea de entrada reemplaza el contenido actual del búfer de aceptación A: R: La siguiente línea de entrada reemplaza el búfer de aceptación y la variable de cadena 'FREE' A: $ GRATIS R: Siguientes 3 líneas de entrada asignadas a las variables de cadena 'X', 'Y' y 'Z' A: $ X, $ Y, $ Z R: Entrada numérica asignada a la variable numérica "Q" A: #Q
C
Calcule y asigne un valor numérico. La mayoría de las implementaciones de PILOT solo tienen aritmética de números enteros y no tienen matrices . Ejemplo:
R: Asigne la media aritmética de #X y #Y a #AM C: #AM = (# X + # Y) / 2
D
Dimensione una matriz, en algunas implementaciones.
mi
Finalizar (volver de) la subrutina o (si está fuera de una subrutina) cancelar el programa. Se utiliza siempre sin operando.
J
Ir a una etiqueta. Ejemplo:
 J: * REINICIAR
METRO
Haga coincidir el búfer de aceptación con variables de cadena o literales de cadena . Ejemplo:
 R: Buscar aceptar búfer para "VERDAD", el valor de MÉXICO y "JUVENTUD", en ese orden M: VERDAD, $ MÉXICO, JUVENTUD

La primera cadena coincidente (si existe) que es una subcadena del búfer de aceptación se asigna a la variable especial $ MATCH. Los caracteres de búfer a la izquierda de la primera coincidencia se asignan a $ LEFT, y los caracteres de la derecha se asignan a $ RIGHT.

La bandera de coincidencia se establece en 'sí' o 'no', dependiendo de si se realiza una coincidencia. Cualquier declaración que tenga una Y después de la letra de comando se procesa solo si se establece el indicador de coincidencia. Las declaraciones con N se procesan solo si la bandera no está establecida.

norte
Equivalente a TN: (escriba si la última coincidencia no tuvo éxito)
R
El operando de R: es un comentario y, por lo tanto, no tiene ningún efecto.
T
Operando 'Tipo' como salida. Ejemplos:
 R: la siguiente línea imprime una cadena literal T: Gracias por tu apoyo. R: la siguiente línea combina una cadena literal con una expresión variable T: Gracias, $ NAME.
U
Utilice (llame) una subrutina. Una subrutina comienza con una etiqueta y termina con E: Ejemplo:
 R: Llamar a la subrutina comenzando en la etiqueta * INICIALIZAR U: * INICIALIZAR
Y
Equivalente a TY: (escriba si la última coincidencia fue exitosa)
Paréntesis
Si hay una expresión entre paréntesis en una declaración, es una expresión condicional y la declaración se procesa solo si la prueba tiene un valor de "verdadero". Ejemplo:
 R: Escriba el mensaje si x> y + z T (#X> # Y + # Z): Condición cumplida

Derivados [ editar ]

Las extensiones al núcleo PILOT incluyen matrices y números de punto flotante en Apple PILOT, y la implementación de gráficos de tortugas inspirados en LOGO en Atari PILOT. [3]

Entre 1979 y 1983, Alec Wood, profesor de Wirral Grammar School for Boys, Merseyside, Reino Unido, dirigió el Grupo de usuarios PILOT del Reino Unido. Se produjeron varias versiones de código de máquina de un mini PILOT para las microcomputadoras de la época y una escuela en Escocia desarrolló un tutorial interactivo de lengua extranjera en el que los alumnos guiaban las huellas por una ciudad haciendo y respondiendo preguntas en alemán, francés, etc. 1979 de Computer Age cubrió una implementación temprana llamada Tiny Pilot y proporcionó una lista completa de códigos de máquina.

Las versiones de PILOT superpuestas sobre los intérpretes BÁSICOS de las primeras microcomputadoras no eran desconocidas a fines de la década de 1970 y principios de la de 1980, y la revista Byte publicó en un momento un derivado completo no Turing de PILOT conocido como Waduzitdo por Larry Kheriarty como una forma de demostrar qué computadora era capaz de hacer. [4] [5]

Vanilla PILOT de 1983 para el Commodore 64 agregó gráficos de tortugas, [6] al igual que Super Turtle PILOT, que se publicó como una lista a máquina en la edición de octubre de 1987 de COMPUTE! revista. [7]

En 1991, el Instituto de Ingenieros Eléctricos y Electrónicos (IEEE) publicó un estándar para Pilot como IEEE Std 1154-1991. Desde entonces ha sido retirado. [8] Eric Raymond implementó una implementación de referencia basada en esto , y se mantuvo, a regañadientes, durante los siguientes 15 años. [9]

En 1990, eSTeem PILOT para computadoras Atari ST fue desarrollado y programado por Tom Nielsen, EdD. Basado en los estándares IEEE para PILOT, incluye características específicas de Atari como el control de dispositivos Laserdisc y CDROM. [10]

Una implementación para aficionados de 2018, psPILOT, basada en parte en el estándar IEEE, se implementó utilizando el lenguaje de scripting PowerShell de Microsoft. [11]

Referencias [ editar ]

  1. ^ Rob Linwood. "Centro de recursos PILOT" . Proyecto Sourceforge . Consultado el 13 de octubre de 2011 .
  2. ^ Xiuzhi Zhou (1998). "Registro de los documentos de John A. Starkweather, 1965-1985" . Biblioteca de la Universidad de California, San Francisco . Consultado el 13 de octubre de 2011 .
  3. ^ Jim Conlan, Tracy Deliman (1983). Atari PILOT para principiantes . Reston Publishing. ISBN 9780835903028.
  4. ^ Brian Connors (6 de abril de 2001). "Waduzitdo 2001" . Consultado el 13 de octubre de 2011 .
  5. ^ Larry Kheriarty (septiembre de 1978). "WADUZITDO: Cómo escribir un idioma en 256 palabras o menos". Byte .
  6. ^ "Vanilla PILOT, PILOT que viene con gráficos de tortuga" . Infoworld . 12 de septiembre de 1983. págs. 67–69 . Consultado el 13 de octubre de 2011 .
  7. ^ Atarimagazines.com - ¡COMPUTE! Número 89, octubre de 1987, p74
  8. ^ Estándar IEEE 1154-1991 para la investigación, el aprendizaje o la enseñanza programados (PILOT) . Comité de Normas IEEE. 1991. doi : 10.1109 / IEEESTD.1991.108548 . ISBN 0-7381-1184-8.
  9. ^ "Veinte años después" .
  10. ^ "Comunicado de prensa: eSTeem PILOT" .
  11. ^ "psPilot" .

Lectura adicional [ editar ]

  • John Starkweather (1985). Guía del usuario de Pilot . Prentice Hall. ISBN 978-0-13-937755-6.