T (язык программирования)

редактировать
T
Парадигма Мультипарадигма : объектно-ориентированный, императивный, функциональный, мета
СемействоLisp
Разработано Джонатаном А. Рисом. Норман И. Адамс
Разработчики Джонатан А. Рис. Норман И. Адамс
Впервые появилось1982; 38 лет назад (1982 г.)
Окончательная версия 3.0 / 1 августа 1984 г.; 36 лет назад (1984-08-01)
Печатная дисциплина динамический, сильный
Платформа Кросс-платформенный
OS Кросс-платформенный
Веб-сайтmumble.net / ~ jar / tproject
Под влиянием
Схема
Под влиянием
EuLisp, Джоуль

Программирование language T- это диалект языка Scheme, разработанный в начале 1980-х Джонатаном А. Рисом, Кентом М. Питманом и Норманом И. Адамсом. Йельского университета в качестве эксперимента по разработке и реализации языка.

Содержание
  • 1 Обоснование
  • 2 порта
  • 3 См. также
  • 4 Ссылки
  • 5 Внешние ссылки
Обоснование

Целью T является проверка тезиса, разработанного Гаем Л. Стилом-младшим и Джеральдом Джей Сассманом в их серии статей о Схеме: Scheme может использоваться в качестве основы для практического языка программирования исключительной выразительной мощности, и что реализации Scheme могут работать лучше, чем другие системы Lisp, и могут конкурировать с реализациями. языков программирования, таких как C и BLISS, которые обычно считаются более эффективными, чем Lisp на традиционных архитектурах машин. Большая часть этого происходит с помощью оптимизирующего компилятора с именем Orbit.

T содержит некоторые функции, которых не хватает современной схеме. Например, T является объектно-ориентированным и имеет первоклассные среды, называемые локали, которые можно изменять нелокально и использовать в качестве модульной системы. У T есть несколько дополнительных специальных форм для отложенного вычисления и управления потоком, а также эквивалент Common Lisp setf. T, как и Scheme, поддерживает call-with-current-continue (call / cc), но также имеет более ограниченную форму, называемую catch. Из руководства T гипотетическая реализация cons может быть такой:

(пара определения-предиката?) (Define-settable-operation (car pair)) (define-settable -операция (пара cdr)) (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))))

Этот пример показывает, что объекты в T тесно связаны с закрытием и передачей сообщений. Примитив с именем joinобъединяет два объекта, обеспечивая нечто похожее на наследование.

Порты

T был перенесен на многие аппаратные платформы и операционные системы, в том числе:

См. также
  • значок Портал компьютерного программирования
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-09 06:44:43
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте