Плюс (язык программирования) - Plus (programming language)
Парадигма | императив, структурированный |
---|---|
Разработчик | Алан Баллард и Пол Уэйли в UBC |
Впервые появился | 1976 |
Печатная дисциплина | статический, сильный, безопасный |
Операционные системы | Терминальная система Мичигана (МТС), OS / VS1 |
Основной реализации | |
IBM System / 370, DEC PDP-11, и Motorola 68000 | |
Под влиянием | |
ГУП, Паскаль |
Плюс является "Паскалоподобным" языком реализации системы из Университет Британской Колумбии (UBC), Канада, на базе ГУП[1] системный язык, разработанный в Университет Торонто, c. 1971 г.[2]
Существует еще один язык программирования PLUS, разработанный в Sperry Univac в Розвилле, штат Миннесота,[3] но Univac PLUS не является предметом данной статьи.
Описание
Plus был разработан в Университет Британской Колумбии (UBC) Вычислительный центр Алана Балларда и Пола Уэйли для использования с и для разработки Терминальная система Мичигана (MTS), но код, сгенерированный компилятором, не зависит от операционной системы и поэтому не ограничивается использованием или разработкой MTS.
Компилятор UBC Plus написан в основном на Plus, работает под управлением Терминальная система Мичигана (МТС) на IBM S / 370 или совместимое оборудование или под IBM OS / VS1[4], и генерирует код для IBM S / 370, то DEC PDP-11, или Motorola 68000 архитектуры.
Plus в значительной степени основан на системном языке SUE[1] разработан в Университете Торонто, c. 1971. Язык SUE был получен, в частности, в его средствах структуры данных из Паскаль.[5]
Plus внешне сильно отличается от SUE или Pascal; однако семантика основного языка действительно очень похожа. Пользователи, знакомые с Язык программирования C также распознает большую часть своей структуры и семантики в PLUS.
Цели компилятора и языка Plus включают:[6]
- Разрешать и поощрять разумные структуры программ
- Обеспечьте проблемно-ориентированные структуры данных
- Разрешить и поощрять читаемый и понятный исходный код
- Возможность параметризации с использованием символьных констант
- Активно помогать в обнаружении и изоляции ошибок, если возможно, во время компиляции и, при необходимости, во время выполнения
- Сгенерируйте эффективный код
- Предоставлять средства, необходимые для системного программирования
- Обеспечивает достаточно эффективную компиляцию, включая раздельную компиляцию разных частей программы
- Необязательно создавать символьную информацию (SYM), позволяющую отлаживать программы с использованием системы символьной отладки, такой как SDS под MTS
Компилятор создает обширные списки источников, включая перекрестные ссылки. Кроме того, он автоматически форматирует источник, используя строгие правила, и имеет простой язык разметки для комментариев.
Руководство, UBC PLUS: язык программирования Plus,[6] доступен. Описание исходных и объектных библиотек, доступных для использования с Plus, Определения исходной библиотеки PLUS, также имеется.[7]
Пример "Привет, мир"
"Привет, мир "пример программы выводит строку" Hello, world! "на терминал или экран.
% Title: = "Hello world";% Include (Pluslist);% Subtitle: = "Definitions";% Lower_Case: = True; / * Определения, которые нужны каждому * /% Include (Boolean, Numeric_Types, More_Numeric_Types, String_Types, More_String_Types) ; / * Изящное подмножество определений процедур * /% Include (Main); / * Определения подпрограмм сообщений * /% Include (Message_Initialize, Message, Message_Terminate);% Subtitle: = "Локальные определения процедур";% Eject (); определение Основная переменная Mcb - указатель на Stream_Type; Mcb: = Message_Initialize (); Сообщение (Mcb, «Привет, мир!»); Сообщение_Terminate (Mcb); Mcb: = Null; конец Main;
Смотрите также
Рекомендации
- ^ а б Системный язык для проекта ГУП, Б. Л. Кларк и Дж. Дж. Хорнинг из исследовательской группы компьютерных систем и факультета компьютерных наук, Университет Торонто, Труды симпозиума SIGPLAN по языкам для реализации системы, 1971, стр. 79-88
- ^ "Язык программирования Plus Systems", Алан Баллард и Пол Уэйли, Материалы Конгресса 84 канадского общества обработки информации (CIPS), июнь 1984 г.
- ^ Язык программирования PLUS, Фрэнк В. Стодола, Сперри Юнивак, Розвилл, Миннесота, Уведомления ACM SIGPLAN, Том 15, выпуск 1 (январь 1980 г.), стр. 146-155
- ^ Использование эмуляции системных вызовов MTS Питером Людеманном.
- ^ МТС Том 2: Описание общедоступных файлов, Вычислительный центр Мичиганского университета, Анн-Арбор, Мичиган, 1990, стр. 355-356.
- ^ а б Язык программирования PLUS, Аллан Баллард и Пол Уэйли, стр. 2-5, пересмотр 1987 г., Вычислительный центр, Университет Британской Колумбии.
- ^ Определения исходной библиотеки PLUS, Алан Баллард, 1983, Вычислительный центр Университета Британской Колумбии, 139 стр.