T es un dialecto del lenguaje de programación Scheme desarrollado a principios de la década de 1980 por Jonathan A. Rees, Kent M. Pitman y Norman I. Adams de la Universidad de Yale como un experimento en diseño e implementación de lenguajes. [ 1 ]
Razón fundamental
El objetivo de este proyecto es poner a prueba la tesis desarrollada por Guy L. Steele Jr. y Gerald Jay Sussman en su serie de artículos sobre Scheme: que Scheme puede utilizarse como base para un lenguaje de programación práctico con una excepcional capacidad expresiva, y que las implementaciones de Scheme podrían ofrecer un rendimiento superior al de otros sistemas Lisp, e incluso competir con implementaciones de lenguajes de programación como C y BLISS , que suelen considerarse intrínsecamente más eficientes que Lisp en arquitecturas de máquinas convencionales. Gran parte de esto se logra mediante un compilador optimizador llamado Orbit.
T contiene algunas características de las que carece Scheme moderno. Por ejemplo, T es orientado a objetos y tiene entornos de primera clase, llamados locales , que pueden modificarse de forma no local y usarse como un sistema de módulos. T tiene varias formas especiales adicionales para la evaluación perezosa y el control de flujo , y un equivalente a ` setf` de Common Lisp . T, al igual que Scheme, admite la llamada con continuación actual (call/cc), pero también tiene una forma más limitada llamada . Según el manual de T, una implementación hipotética de podría ser:catchcons
( define-predicate pair? ) ( define-settable-operation ( car pair )) ( define-settable-operation ( cdr pair )) ( define ( cons the-car the-cdr ) ( object nil (( pair? self ) t ) (( car self ) the-car ) (( cdr self ) the-cdr ) ((( setter car ) self new-car ) ( set the-car new-car )) ((( setter cdr ) self new-cdr ) ( set the-cdr new-cdr ))))Este ejemplo muestra que los objetos en T están íntimamente relacionados con los cierres y el paso de mensajes. Una primitiva llamada joinune dos objetos, lo que permite algo parecido a la herencia .
Puertos
T se adaptó a muchas plataformas de hardware y sistemas operativos , incluyendo: [ 2 ]
Véase también
Referencias
- ↑ Slade, Stephen (1987). El lenguaje de programación T: un dialecto de LISP . Englewood Cliffs, Nueva Jersey: Prentice-Hall. ISBN 978-0-13-881905-7OCLC 16094677
- ↑ Campbell, Taylor `Riastradh' (7 de abril de 2006). "T Revival Project" . Mumble.net . Internet Archive Wayback Machine. Archivado del original el 3 de enero de 2007. Recuperado el 18 de noviembre de 2018 .
Enlaces externos
- Sitio web oficial
- Historia de T , por Olin Shivers
- Manual T (PDF) de ReadScheme, a través de Internet Archive.
- Familia de lenguajes de programación Lisp
- Scheme (lenguaje de programación)
- Lenguajes de programación creados en 1982