T (programovací jazyk) - T (programming language)
Paradigma | Multi-paradigma: objektově orientovaný, rozkazovací způsob, funkční, meta |
---|---|
Rodina | Lisp |
Navrhl | Jonathan A. Rees Norman I. Adams |
Vývojáři | Jonathan A. Rees Norman I. Adams |
Poprvé se objevil | 1982 |
Konečné vydání | 3.0 / 1. srpna 1984 |
Psací disciplína | dynamický, silný |
Plošina | Cross-platform |
OS | Cross-platform |
webová stránka | mumlat |
Ovlivněno | |
Systém | |
Ovlivněno | |
EuLisp, Joule |
The programovací jazyk T je dialekt jazyka Systém vyvinutý na začátku 80. let Jonathanem A. Reesem, Kent M. Pitman a Norman I. Adams z univerzita Yale jako experiment v jazykovém designu a implementaci.[1]
Odůvodnění
Účelem T je otestovat diplomovou práci Guy L. Steele, Jr. a Gerald Jay Sussman ve své sérii článků o Scheme: že Scheme může být použit jako základ pro praktický programovací jazyk s výjimečnou expresivní schopností a že implementace Scheme by mohly fungovat lépe než jiné systémy Lisp a konkurenceschopně s implementacemi programovacích jazyků, jako je C a BLAHO, které jsou obvykle považovány za neodmyslitelně efektivnější než Lisp na konvenčních architekturách strojů. Hodně z toho se děje prostřednictvím optimalizace kompilátoru pojmenovaný Orbit.
T obsahuje některé funkce, které modernímu schématu chybí. Například T je objektově orientovaný a má prvotřídní prostředí zvané národní prostředí, které lze lokálně upravit a použít jako modulový systém. T má několik dalších speciálních formulářů pro líné hodnocení a řízení toku a ekvivalent k Společný Lisp je setf. T, stejně jako Schéma, podporuje pokračování hovoru s proudem (call / cc), ale má také omezenější volanou formu úlovek
. Z manuálu T hypotetická implementace nevýhody
mohlo by být:
(definovat-predikát pár?) (operace definovatelného nastavení (auto pár)) (operace definovatelného nastavení (cdr pár)) (definovat (nevýhody auto the-cdr) (objekt nula ((pár? já) t) ((auto já) auto) ((cdr já) the-cdr) (((seřizovač auto) já nové auto) (soubor auto nové auto)) (((seřizovač cdr) já new-cdr) (soubor the-cdr new-cdr))))
Tento příklad ukazuje, že objekty v T úzce souvisí s uzávěrkami a předáváním zpráv. Volal primitiv připojit se
spojuje dva objekty dohromady a umožňuje něco podobného dědictví.
1955 | 1960 | 1965 | 1970 | 1975 | 1980 | 1985 | 1990 | 1995 | 2000 | 2005 | 2010 | 2015 | 2020 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
LISP 1, 1,5, LISP 2(opuštěný) | ||||||||||||||
Maclisp | ||||||||||||||
Interlisp | ||||||||||||||
Lisp stroj Lisp | ||||||||||||||
Systém | R5RS | R6RS | R7RS malý | |||||||||||
NULA | ||||||||||||||
Franz Lisp | ||||||||||||||
Společný Lisp | ||||||||||||||
Le Lisp | ||||||||||||||
T | ||||||||||||||
Chez Scheme | ||||||||||||||
Emacs Lisp | ||||||||||||||
AutoLISP | ||||||||||||||
PicoLisp | ||||||||||||||
EuLisp | ||||||||||||||
ISLISP | ||||||||||||||
OpenLisp | ||||||||||||||
Schéma PLT | Raketa | |||||||||||||
GNU Guile | ||||||||||||||
Vizuální LISP | ||||||||||||||
Clojure | ||||||||||||||
Oblouk | ||||||||||||||
LFE | ||||||||||||||
Hy |
Přístavy
T bylo přeneseno na mnoho hardwaru platformy a operační systémy, počítaje v to:[2]
- MIPS: 3100 DEC (pmax), SGI IRIS
- Motorola 68000 (m68k): Apollo Domain / OS, HP / UX, Mac / AUX, Další, SunOS 3
- NS320xx (n32k): Přídavek Multimax
- SPARC: SunOS 4 a vyšší, Solaris, Unix na Připojovací stroj 5
- VAX: Ultrix
Viz také
Reference
- ^ Slade, Stephen (1987). Programovací jazyk T: dialekt LISP. Englewood Cliffs, NJ: Prentice-Hall. ISBN 978-0-13-881905-7. OCLC 16094677.CS1 maint: ref = harv (odkaz)
- ^ Campbell, Taylor `Riastradh '(7. dubna 2006). "T Revival Project". Mumble.net. Internetový archiv Wayback Machine. Archivováno z původního dne 2007-01-03. Citováno 2018-11-18.
externí odkazy
- Oficiální webové stránky
- Dějiny T., od Olin Shivers
- T manuální (PDF) z ReadScheme prostřednictvím internetového archivu