Косой - Obliq

Косой
ПарадигмыМультипарадигма: императив, структурированный, модульный, объектно-ориентированный, на основе прототипа, параллельно
СемьяВирт Оберон
РазработаноКришна Бхарат
Марк Х. Браун
Лука Карделли
Впервые появился1993; 27 лет назад (1993)
Печатная дисциплинаСильный, динамичный
ОбъемЛексический чистый
Язык реализацииМодула-3
ПлатформаIA-32
Интернет сайтwww.cc.gatech.edu/ gvu/люди/Кандидат наук/Кришна/ VO/ VOHome.html
Основной реализации
Obliq, визуальный Obliq
Под влиянием
Модула-3, Себя, Оберон

Косой является интерпретированный, объектно-ориентированный язык программирования разработан, чтобы сделать распределен, и локально многопоточный, вычисления проще и проще в программировании, обеспечивая безопасность программ и неявный тип система. Интерпретатор написан на Модула-3, и предоставляет Obliq полный доступ к Modula-3 сеть объекты способности. А вывод типа Алгоритм объединения записей, подтипов и рекурсивных типов был разработан для Obliq. Кроме того, было доказано, что НП-полный[1]и его наименьшая сложность быть Ο(п3) или если при другом моделировании до определенных условий вплоть до Ο(п2)[2] и его самая известная реализация работает в Ο(п5).[3][противоречивый ]Синтаксис Obliq очень похож на Modula-3, самая большая разница в том, что Obliq не нуждается в явно типизированном переменные (т.е. переменная может содержать любые тип данных разрешено средством проверки типов, а если не принимает, то есть будет отображаться ошибка выполнения данного выражения), хотя явные объявления типов разрешены и игнорируются интерпретатором. Основные типы данных на языке включают булевы, целые числа, реалы, символы, струны, и массивы. Obliq поддерживает обычный набор последовательных управляющие структуры (условные формы, формы итерации и обработки исключений) и специальные формы управления параллелизмом (мьютексы и защищенные операторы). Кроме того, объекты Obliq можно клонировать и безопасно копировать удаленно на любой машине в распределенном сетевом объекте, и это можно делать безопасно и безопасно. прозрачно.[4]

Obliq's большой стандартная библиотека обеспечивает надежную поддержку математических операций, ввод, вывод (Ввод / вывод), упорство, управление потоками, графика и анимация. Распределенные вычисления основаны на объектах: объекты содержат состояние, локальное для одного. процесс. Объем объектов и других переменных является чисто лексический. Объекты могут вызывать методы других объектов, даже если эти объекты находятся на другом компьютере в сети. Объекты Obliq - это просто коллекции именованных полей (аналогично слотам в Себя и Болтовня ), и поддержка наследование делегированием (например, Self).

Обычно Obliq использует программирование по сети, 3D-анимацию и распределенные вычисления, как это происходит в локальная сеть (LAN), например Ethernet. Obliq бесплатно входит в Корпорация цифрового оборудования (DEC) Распространение Modula-3, но есть и другие бесплатные версии, включая предварительно скомпилированный двоичные файлы для нескольких операционные системы.

Проекты с использованием Obliq

  • В Совместные активные учебники (КОТ)[5] разработан с использованием апплетов Obliq[6] и Зевс[7] Система анимации алгоритма (написано на Модула-3 ).
  • Наклонные апплеты (Oblets)[6] специальный веб-браузер (написанный на Модула-3 ) Obliq веб-страницы встроенных приложений.[8]

Рекомендации

  1. ^ http://www.cs.ucla.edu/~palsberg/paper/ic04.pdf
  2. ^ Хенглейн, Фриц (1999). "Преодолевая п3 барьер: более быстрый вывод типа объекта ». Теория и практика объектных систем. 5 (1): 57–72. Дои:10.1002 / (SICI) 1096-9942 (199901/03) 5: 1 <57 :: AID-TAPO5> 3.0.CO; 2-U.
  3. ^ Палсберг, Йенс; Чжао, Тянь (2002). «Эффективный вывод типов для конкатенации записей и выделения подтипов». Логика в информатике, Симпозиум по. Лос-Аламитос, Калифорния, США: Компьютерное общество IEEE. п. 125. Дои:10.1109 / LICS.2002.1029822.
  4. ^ Бриа, Себастьян; Нестманн, Уве (2002). «Мобильные объекты» должны «безопасно перемещаться». FMOODS '02. С. 129–146. CiteSeerX  10.1.1.23.4787.
  5. ^ Brown, Marc H .; Наджорк, Марк А. (май 1996 г.). «Совместные активные учебники: веб-система анимации алгоритмов для электронного класса; исследовательский отчет 142». Центр системных исследований DEC (SRC). Корпорация цифрового оборудования (DEC).
  6. ^ а б Brown, Marc H .; Наджорк, Марк А. (1997). «Распределенные апплеты». CHI '97 расширенные рефераты по человеческому фактору в вычислительных системах: взгляд в будущее. Атланта, Джорджия: ACM. С. 204–205. Дои:10.1145/1120212.1120344. ISBN  0-89791-926-2. Получено 2010-05-15.
  7. ^ Zeus: система алгоритмической анимации и многоэкранного редактирования Марк Х. Браун. Корпорация цифрового оборудования (DEC) Центр системных исследований (SRC) Отчет об исследовании 075 (февраль 1992 г.)
  8. ^ http://www.ibiblio.org/openvideo/video/chi/chi97_02_m1.mpg

внешняя ссылка