Для установки нажмите кнопочку Установить расширение. И это всё.

Исходный код расширения WIKI 2 регулярно проверяется специалистами Mozilla Foundation, Google и Apple. Вы также можете это сделать в любой момент.

4,5
Келли Слэйтон
Мои поздравления с отличным проектом... что за великолепная идея!
Александр Григорьевский
Я использую WIKI 2 каждый день
и почти забыл как выглядит оригинальная Википедия.
Статистика
На русском, статей
Улучшено за 24 ч.
Добавлено за 24 ч.
Альтернативы
Недавние
Show all languages
Что мы делаем. Каждая страница проходит через несколько сотен совершенствующих техник. Совершенно та же Википедия. Только лучше.
.
Лео
Ньютон
Яркие
Мягкие

Компонентный Паскаль

Из Википедии — свободной энциклопедии

Component Pascal
Класс языка императивный, структурный, модульный,компонентный, объектный
Появился в 2001[1]
Автор Oberon Microsystems
Система типов сильная, статическая
Испытал влияние Цепочка наследования: ПаскальМодулаМодула-2ОберонОберон-2
Сайт oberon.ch

Компонентный Паскаль (англ. Component Pascal) — язык программирования c парадигмой компонентно-ориентированного программирования. Входит в семейство языков Оберон и создан на основе языка Оберон-2 компанией Oberon microsystems, Inc и, соответственно, является наследником языка Паскаль[2].

Синтаксис языка

Основные уточнения Компонентного Паскаля по сравнению с Обероном-2:

  1. Главная особенность по сравнению с Обероном-2 – дать проектировщику интерфейсов модулей, определяющих абстрактные типы проблемной области, расширенный контроль в плане безопасности[3]. В синтаксис языка добавлены атрибуты для типов (ABSTRACT, EXTENSIBLE, LIMITED)[1] и методов (ABSTRACT, EMPTY, EXTENSIBLE)[1]. Это позволяет статически контролировать согласованность иерархий наследования и восстановить принцип тотальной статической типизации, а так же разрешать или запрещать модулям-клиентам расширять предлагаемые им типы.
  2. Изменена система встроенных типов Оберона: набор основных типов Компонентного Паскаля является надмножеством[4] для основных типов языка Java. Основные «рабочие» типы INTEGER, REAL и CHAR соответствуют 32-, 64- и 16-(Unicode)-битовым переменным, что позволяет уменьшить разнообразие основных типов; использование других типов (LONGINT, SHORTREAL, SHORTCHAR и т. д.) ограничивается специальными приложениями.
  3. Встроены средства для работы с цепочками литер (неявный тип String) и добавлен стандартный модуль Strings в системе программирования BlackBox для работы со строками. Цепочки литер представляются массивами литер (ARRAY OF CHAR или ARRAY OF SHORTCHAR), причем значением считается последовательность литер до первого вхождения специальной литеры-ограничителя 0X. Цепочки литер можно сравнивать (подразумевается лексикографическое сравнение) и складывать (конкатенация). Конструкция a := b$ позволяет скопировать в массив литер a цепочку, хранящуюся в массиве литер b (включая литеру-ограничитель 0X), даже если присваивание a := b запрещено (например, из-за разной длины массивов a и b).

Полное описание синтаксиса языка в расширенной форме Бэкуса-Наура приведено на страницах Сообщения о языке Компонентный Паскаль[1]. Оно содержит 34 грамматических выражения, что лишь на одно больше чем для Oberon-2.

Реализации компиляторов для Компонентного Паскаля

BlackBox Component Builder

Среда разработки BlackBox Component Builder (Блэкбокс) разработана в компании Oberon microsystems Inc. (Швейцария) и в стабильной версии доступна для ОС Microsoft Windows, в альфа-версии — для ОС на основе GNU/Linux (Debian, Ubuntu), а также FreeBSD и OpenBSD. Блэкбокс выпускается под лицензией BSD-2-Clause. Среда разработки включает в себя: текстовый редактор исходного кода, компилятор, среду поддержки выполнения (загрузчик модулей, сборщик мусора), профилировщик, сборщик exe, dll, elf и so, а также набор готовых компонентов для быстрой разработки приложений (создания диалоговых окон, интерактивной графики, составных документов, а также интерфейс для обращения к WinApi, WinOle, COM; подсистему для работы с базами данных, протоколами передачи данных TCP/IP, V24). Версия для Microsoft Windows хорошо подходит для разработки в рамках технологии OLE. Компилятор и каркас «шлифуются» с 1993 года, и в настоящий момент[когда?] поддерживается и развивается сообществом пользователей (BlackBox Framework Center, OberonCore, командой кросс-платформенной сборки). В дистрибутив встроена документация и набор примеров. Выпущено несколько учебников, посвященных работе с Блэкбоксом. Блэкбокс полностью поддерживает юникод, в том числе (в последних версиях) юникодные идентификаторы для модулей, процедур, констант, типов и переменных.

Gardens Point Component Pascal

Gardens Point Component Pascal[5][6][7] — ещё один компилятор для языка Компонентный Паскаль, выполненный в австралийском Квинслендском Технологическом Университете[8] (место работы сооснователя Oberon microsystems Клеменса Шиперского до его перехода в Microsoft Research). Имеющиеся ограничения: нет указателей на функции и нет доступа к не-локальным переменным во вложенных процедурах[9]. Компилятор gpcp Квинслендского Технологического Университета имеет версию как для среды .NET, так и для виртуальной Java-машины (JVM)[10]. Компилятор написан на Компонентном Паскале[9]. Здесь же, Компонентный Паскаль был интегрирован в Visual Studio[11] и в межплатформенную среду разработки Eclipse[11].

Примечания

  1. 1 2 3 4 Сообщение о языке Компонентный Паскаль. Дата обращения: 21 августа 2012. Архивировано из оригинала 16 августа 2012 года.
  2. Цепочка наследования: ПаскальМодулаМодула-2ОберонОберон-2 → Компонентный Паскаль
  3. Ткачёв Ф.В. Краткая история Паскаля Архивная копия от 12 марта 2013 на Wayback Machine // МИР ПК. Диск. 2005. С. 2–5.
  4. The Evolution of Oberon-2 to Component Pascal (Технический отчет Oberon Microsystems) (2001), раздел "Specified Domains of Types". Дата обращения: 25 августа 2012. Архивировано 12 марта 2013 года.
  5. Gough K.J. Stacking them up: a comparison of virtual machines // Proceedings 6th Australasian Computer Systems Architecture Conference. ACSAC 2001. IEEE Comput. Soc. P. 55-61.
  6. Gough K.J. Parameter passing for the Java virtual machine // Proceedings 23rd Australasian Computer Science Conference. ACSC 2000 (Cat. No.PR00518). IEEE Comput. Soc. P. 81-87.
  7. Gough J. Virtual Machines, Managed Code and Component Technology // 2005 Australian Software Engineering Conference. Ieee. P. 5-12.
  8. Component Pascal on .NET. Дата обращения: 1 февраля 2011. Архивировано из оригинала 18 февраля 2011 года.
  9. 1 2 John Gough, Queensland University of Technology.The .NET Runtime as a Compiler Target. Дата обращения: 2 февраля 2011. Архивировано из оригинала 16 февраля 2011 года.
  10. Download Gardens Point Component Pascal. Дата обращения: 2 февраля 2011. Архивировано из оригинала 20 августа 2006 года.
  11. 1 2 Component Pascal for IDEs. Дата обращения: 1 февраля 2011. Архивировано из оригинала 18 февраля 2011 года.

Литература

  • Компания Oberon microsystems. «Сообщение о языке Компонентный Паскаль», перевод Ф. В. Ткачева
  • Никлаус Вирт. Алгоритмы и структуры данных. Новая версия для Оберона. — ДМК Пресс, 2010. — 272 с. — 1000 экз., примеры к книге (для BlackBox Component Builder), английский оригинал
  • Никлаус Вирт. Построение компиляторов. — ДМК Пресс, 2010. — 192 с. — 1000 экз., примеры и дополнительные материалы к книге плюс обновлённый английский оригинал на сайте OberonCore
  • Виталий Потопахин. Современное программирование с нуля!. — ДМК Пресс, 2011. — 240 с. — 1000 экз. — ISBN 978-5-94074-665-2.
  • Виталий Потопахин. Современный самоучитель по алгоритмам. — ДМК Пресс, 2012. — 320 с. — 500 экз. — ISBN 978-5-94074-804-5. (старое издание Виталий Потопахин. Искусство алгоритмизации. — ДМК Пресс, 2011. — 320 с. — 1000 экз. — ISBN 978-5-94074-621-8.)

Ссылки

Эта страница в последний раз была отредактирована 24 февраля 2024 в 23:32.
Как только страница обновилась в Википедии она обновляется в Вики 2.
Обычно почти сразу, изредка в течении часа.
Основа этой страницы находится в Википедии. Текст доступен по лицензии CC BY-SA 3.0 Unported License. Нетекстовые медиаданные доступны под собственными лицензиями. Wikipedia® — зарегистрированный товарный знак организации Wikimedia Foundation, Inc. WIKI 2 является независимой компанией и не аффилирована с Фондом Викимедиа (Wikimedia Foundation).