Articulo de referencia

MDL (lenguaje de programación)

MDL ( Model Development Language , [ 1 ] o coloquialmente también conocido como More Datatypes than Lisp [ 2 ] : 3 o MIT Design Language ) es un lenguaje de programación , desce...

MDL ( Model Development Language , [ 1 ] o coloquialmente también conocido como More Datatypes than Lisp [ 2 ] : 3 o MIT Design Language ) es un lenguaje de programación , descendiente del lenguaje Lisp . Su propósito inicial era proporcionar soporte de lenguaje de programación de alto nivel para el Grupo de Modelado Dinámico del Proyecto MAC del Instituto Tecnológico de Massachusetts (MIT) . [ 3 ] Fue desarrollado en 1971 en un PDP-10 con ITS y posteriormente se ejecutó en TENEX , TOPS-20 , [ 4 ] [ 5 ] BSD , [ 2 ] : 6 y AEGIS . [ 6 ]

El equipo de desarrollo inicial estaba formado por Gerald Sussman y Carl Hewitt del Laboratorio de Inteligencia Artificial, y Chris Reeve, Bruce Daniels y David Cressey del Grupo de Modelado Dinámico. Posteriormente, Stu Galley, también del Grupo de Modelado Dinámico, redactó la documentación de MDL.

MDL se llamaba inicialmente Muddle . [ 4 ] : 2 Este estilo de humor autocrítico no fue ampliamente comprendido ni apreciado fuera del Proyecto MAC. Por lo tanto, el nombre se suavizó a MDL.

MDL ofrece varias mejoras al Lisp clásico. Admite diversos tipos de datos integrados, como listas, cadenas y matrices, así como tipos de datos definidos por el usuario. Ofrece evaluación de expresiones multihilo y corrutinas . Las variables pueden contener tanto un valor local dentro de un ámbito como un valor global, para transferir datos entre ámbitos. Sus funciones integradas avanzadas permiten la depuración interactiva de programas MDL, el desarrollo incremental y la reconstrucción de programas fuente a partir de programas objeto.

Aunque MDL está obsoleto, algunas de sus características se han incorporado en versiones posteriores de Lisp. Gerald Sussman desarrolló el lenguaje Scheme , en colaboración con Guy Steele , quien más tarde escribió las especificaciones de Common Lisp y Java . Carl Hewitt ya había publicado la idea del lenguaje Planner antes de que comenzara el proyecto MDL, pero su posterior reflexión sobre Planner reflejó las lecciones aprendidas durante la creación de MDL. Los conceptos de Planner influyeron en lenguajes como Prolog y Smalltalk . Smalltalk y Simula , a su vez, influyeron en el trabajo futuro de Hewitt sobre el modelo de actores .

Pero la mayor influencia de MDL fue en el género de software de ficción interactiva (FI). Un juego de FI llamado Zork , a veces llamado Dungeon, fue escrito originalmente en MDL. [ 7 ] Más tarde, Reeve, Daniels, Galley y otros miembros de Dynamic Modeling fundaron Infocom , una compañía que produjo muchas de las primeras obras comerciales de ficción interactiva.

En 1980, Marc Blank y Joel Berez adaptaron el lenguaje MDL para crear un subconjunto llamado ZIL ( Zork Implementation Language ), que Infocom utilizó ampliamente para crear sus galardonados juegos.

Ejemplo de código

Esta es una muestra de PDP-10 MDL: [ 8 ] [ 9 ] [ 10 ]

<DEFINE EXIT-TO ( EXITS RMS ) # DECL (( EXITS ) EXIT ( RMS ) <UVECTOR [ REST ROOM ] > ) <MAPF <> <FUNCTION ( E ) # DECL (( E ) <OR DIRECTION ROOM CEXIT NEXIT DOOR> ) <COND ( <TYPE? .E DIRECTION> ) ( <AND <TYPE? .E ROOM> <MEMQ .E .RMS>> <MAPLEAVE T> ) ( <AND <TYPE? .E CEXIT> <MEMQ <2 .E> .RMS>> <MAPLEAVE T> ) ( <AND <TYPE? .E DOOR> <OR <MEMQ <DROOM1 .E> .RMS> <MEMQ <DROOM2 .E> .RMS>>> <MAPLEAVE T> ) >> .EXITS>>

Véase también

Referencias

  1. Supnik, Bob (25 de octubre de 2006). "Entrevista a Bob Supnik de GET LAMP" (Entrevista). Entrevistado por Jason Scott. 15:00.
  2. 1 2 Licklider, JCR (enero de 1988). Programación gráfica y monitorización RADC-TR-88-7 (PDF) (Informe). Centro de Desarrollo Aéreo de Roma. Archivado (PDF) del original el 3 de mayo de 2019. Recuperado el 18 de mayo de 2019 .
  3. Dornbrook, Michael; Blank, Marc (1980). MDL Programming Primer MIT-LCS-TR-292 (PDF) . Instituto Tecnológico de Massachusetts, Laboratorio de Ciencias de la Computación . Recuperado el 18 de mayo de 2019 .
  4. 1 2 Galley, Stu W.; Pfister, Greg (1979). El lenguaje de programación MDL (PDF) . Instituto Tecnológico de Massachusetts, Laboratorio de Ciencias de la Computación . Recuperado el 18 de diciembre de 2018 .( Transcripción en Markdown/HTML )
  5. Lebling, P. David (mayo de 1980). El entorno de programación MDL (PDF) . Instituto Tecnológico de Massachusetts, Laboratorio de Ciencias de la Computación . Recuperado el 18 de diciembre de 2018 .
  6. Lim, Poh Chuan (1982). Un gestor de gráficos independiente del dispositivo para MDL (PDF) (Informe). Instituto Tecnológico de Massachusetts. pág. 69. Recuperado el 18 de mayo de 2019 . 
  7. Dyer, Richard (6 de mayo de 1984). "Maestros del juego" . The Boston Globe . Archivado del original el 7 de junio de 1997.
  8. "Zork-mdl.zip" .
  9. Supnik, Bob (2018-06-04). "Kits de software" . Computer Simulation and History (SimH) . Bitsavers.org . Recuperado el 2018-12-18 .
  10. Supnik, Bob (2007-09-02). "Kits de software" . Computer Simulation and History (SimH) . Forum PDP-11 . Recuperado el 18 de diciembre de 2018 .