Облик
Эта статья нуждается в дополнительных цитатах для проверки . ( март 2009 г. ) |
Парадигмы | Мультипарадигмальность : императивная , структурированная , модульная , объектно-ориентированная , прототипная , параллельная. |
---|---|
Семья | Вирт Оберон |
Разработано | Кришна Индия Марк Х. Браун Лука Карделли |
Впервые появился | 1993 год |
Дисциплина набора текста | Сильный , динамичный |
Объем | Лексический чистый |
Язык реализации | Модуль-3 |
Платформа | ИА-32 |
Веб-сайт | www |
Основные реализации | |
Облик, Визуальный Облик | |
Под влиянием | |
Модуль-3 , Селф , Оберон |
Obliq — это интерпретируемый объектно -ориентированный язык программирования, предназначенный для упрощения распределенных и локально многопоточных и облегчения программирования вычислений, обеспечивая при этом безопасность программ и систему неявных типов . Интерпретатор написан на Modula-3 Modula-3 и предоставляет Obliq полный доступ к возможностям сетевых объектов . типов . Для Obliq был разработан алгоритм вывода типа для конкатенации записей, подтипирования и рекурсивных Далее было доказано, что оно NP-полно. [1] и его наименьшая сложность — Ο ( n 3 ) или если при другом моделировании до определенных условий вплоть до 0 ( n 2 ) [2] и его самая известная реализация работает в Ο ( n 5 ) . [3] [ противоречивый ] Синтаксис Obliq очень похож на Modula-3, самое большое отличие состоит в том, что Obliq не нуждается в явных типизированных переменных (т. е. переменная может содержать любой тип данных , разрешенный средством проверки типов, а если не принимает его, то есть заданное выражение). отобразится ошибка выполнения), хотя явные объявления типов разрешены и игнорируются интерпретатором. Основные типы данных в языке включают логические значения , целые числа , действительные числа , символы , строки и массивы . Obliq поддерживает обычный набор структур последовательного управления (условные формы, формы итерации и обработки исключений), а также специальные формы управления для параллелизма (мьютексы и защищенные операторы). Кроме того, объекты Obliq можно клонировать и безопасно копировать удаленно с любой машины в распределенном сетевом объекте, и это можно делать безопасно и прозрачно . [4]
Obliq Большая стандартная библиотека обеспечивает мощную поддержку математических операций, ввода/вывода (I/O), постоянства , управления потоками, графики и анимации. Распределенные вычисления основаны на объектах: объекты хранят состояние, локальное для одного процесса . Область видимости объектов и других переменных чисто лексическая . Объекты могут вызывать методы других объектов, даже если эти объекты находятся на другом компьютере в сети. Объекты Obliq представляют собой просто коллекции именованных полей (аналогично слотам в Self и Smalltalk ) и поддерживают наследование путем делегирования (например, Self).
Обычное использование Obliq включает сетевое программирование, 3D-анимацию и распределенные вычисления, например, в локальной сети (LAN), например Ethernet . Obliq бесплатно включен в дистрибутив Modula-3 Digital Equipment Corporation (DEC), но существуют и другие бесплатные версии, включая предварительно скомпилированные двоичные файлы для нескольких операционных систем .
Проекты с использованием Obliq
[ редактировать ]- Совместные активные учебники (CAT) [5] разработан с использованием апплетов Obliq [6] и Зевс [7] Алгоритм анимации System (написан на Modula-3 ).
- Аплеты Obliq (Облеты) [6] специальный веб-браузер (написанный на Modula-3 ) встроенные приложения веб-страницы Obliq. [8]
Ссылки
[ редактировать ]- ^ Палсберг, Йенс; Чжао, Тянь (22 сентября 2003 г.). «Вывод типа для объединения записей и подтипирования» (PDF) . Проверено 19 мая 2024 г.
- ^ Хенглейн, Фриц (1999). «Прорываясь сквозь н 3 барьер: более быстрый вывод типа объекта». Теория и практика объектных систем . 5 (1): 57–72. doi : 10.1002/(SICI)1096-9942(199901/03)5:1<57::AID-TAPO5> 3.0.CO;2-U .
- ^ Палсберг, Йенс; Чжао, Тянь (2002). «Эффективный вывод типов для конкатенации записей и подтипирования». Логика в информатике, симпозиум . Лос-Аламитос, Калифорния, США: Компьютерное общество IEEE. п. 125. дои : 10.1109/LICS.2002.1029822 . ISBN 0-7695-1483-9 .
- ^ Бриэ, Себастьян; Нестманн, Уве (2002). «Мобильные объекты» должны «передвигаться безопасно». ФМУДС '02 . стр. 129–146. CiteSeerX 10.1.1.23.4787 .
- ^ Браун, Марк Х.; Найорк, Марк А. (май 1996 г.). «Совместные активные учебники: веб-система анимации алгоритмов для электронного класса; отчет об исследовании 142» . Центр системных исследований DEC (SRC) . Корпорация цифрового оборудования (DEC). Архивировано из оригинала 11 апреля 2006 г.
- ^ Jump up to: а б Браун, Марк Х.; Найорк, Марк А. (1997). «Распределенные апплеты» . CHI '97 расширенные рефераты на тему «Человеческий фактор в вычислительных системах: взгляд в будущее» . Атланта, Джорджия: ACM. стр. 204–205. дои : 10.1145/1120212.1120344 . ISBN 0-89791-926-2 . Проверено 15 мая 2010 г.
- ^ Зевс: система алгоритмической анимации и многопросмотрового редактирования Марк Х. Браун. (SRC) Digital Equipment Corporation (DEC) (февраль 1992 г.) Центра системных исследований Отчет об исследовании 075
- ^ Распределенные апплеты (MPG) . www.ibiblio.org . Проверено 19 мая 2024 г.
Внешние ссылки
[ редактировать ]- Официальный сайт
- Облик в Керли
- Луки Карделли ( Страница быстрого запуска Obliq архивировано 17 октября 2008 г.)