admin / 31.10.2018

Рапира (язык программирования) — Традиция

Содержание

Языки программирования с русским синтаксисом

Вы здесь » Языки программирования с русским синтаксисом

Форум

Языки программирования с русским синтаксисом

Частично русифицируемые языки программирования

Редакторы кода, Среды разработки (IDE), СКВ (SVN)

Проектирование ПО. Графический язык Дракон, UML.

Статистика форума

  • Всего тем: 95
  • Всего сообщений: 1413
  • Зарегистрированных пользователей: 55
  • Последним зарегистрировался: Тим
  • Активны (Гостей: 4, Пользователей: 0; Рекорд: 103, установлен 09-08-2017)

Вы здесь » Языки программирования с русским синтаксисом

У этого термина существуют и другие значения, см. Рапира (значения).

РАПИРА — Расширенный Адаптированный Поплан-Интерпретатор, Редактор, Архив — процедурныйязык программирования. Разработан в начале 1980-х годов в СССР в качестве средства перехода от более простых языков (в частности, учебного языка Робик) к языкам высокого уровня. Синтаксис построен на основе русской лексики.

Есть ли рускоязычная среда програмирования?

Язык использовался в школах для изучения информатики. Преподавание на Рапире велось в «Заочной школе программирования» в журнале «Квант» с начала 1980 года.

Как видно из расшифровки названия языка, язык РАПИРА изначально был реализован как набор макрорасширений на базе языка ПОПЛАН — интерпретатора языка POP-2 (англ.)русск. для БЭСМ-6. Некоторые синтаксические конструкции были перенесены из языка Сетл.

Язык Рапира был реализован для БЭСМ-6, а затем для первой советской ПЭВМ «Агат» в начале 1980-х годов силами нескольких студентов и выпускников Новосибирского государственного университета под началом Г. А. Звенигородского, при участии школьников, в том числе на Всесоюзных летних школах юных программистов (ВЛШЮП, 1982 г.). По своим возможностям язык не уступал другим известным на то время учебным языкам.

Существовали также реализации языка Рапира для КУВТУКНЦ и Ямаха КУВТ, а также для ЕС ЭВМ (1982 г., руководитель разработки на алголе-68 — проф. А. Н. Терехов).

Взгляд на язык

Идентификаторы могут использовать буквы как латиницы так и кириллицы, цифры и символ подчёркивания. Язык является регистро-независимым.

Ключевые (зарезервированные) слова:

ВОЗВРАТ ИНАЧЕ ПРОЦ ВСЕ КНЦ ФУН ДО ОТ ШАГ ЕСЛИ ПОВТОР

Пример программы «Здравствуй, мир!»:

ПРОЦ СТАРТ(); ВЫВОД: «ЗДРАВСТВУЙ, МИР!»; КНЦ;

В первоначальной версии языка оператор присваивания обозначался сочетанием символов , и порядок операндов в нём был противоположен привычному для большинства языков: слева записывалось вычисляемое выражение, а справа — имя переменной, которой результат вычисления присваивался. Такая форма оператора присваивания была сочтена более логичной, поскольку она лучше соответствует семантике операции: сначала вычисляется выражение, и лишь затем результат записывается в переменную. Однако впоследствии присваивание заменили на «классическое» , заимствованное из Алгола и принятое во многих ЯВУ, в том числе и в РАЯ, и вычисляемое справа налево — сначала вычисляется выражение, записанное справа от знака присваивания, а затем оно присваивается переменной, имя которой записано слева от этого знака.

Язык Рапира унаследовал многие особенности языков Поплан и Сетл. Так, например, в языке Рапира используются необъявляемые бестиповые переменные (переменная считается объявленной при первом использовании, тип переменной определяется типом присвоенного выражения, инициализированной переменной можно присваивать значения типов, отличающихся от первоначально присвоенного), поддерживаются высокоуровневые составные типы данных — кортежи и множества (последние являются частным случаем кортежа). Кортеж в Рапире, фактически — гетерогенный динамический массив, для него на уровне языка поддерживаются операции объединения, сравнения, получения размера и извлечения части.

«Школьница»

Язык Рапира являлся частью системы программ «Школьница», разработанных для поддержки учебного процесса на базе ПЭВМ Агат. В систему «Школьница» входили программы: [1]

  • Интерпретатор языка Робик
  • Интерпретатор языка Рапира
  • Редактор текстов программ
  • Графическая система «Шпага»
  • Набор общеупотребимых математических функций
  • Отладчик программ в машинном коде
  • Набор примеров учебных программ по различным школьным дисциплинам

Литература и публикации

  • Г. А. Звенигородский. Основные операторы учебно-производственного языка Рапира. — Квант, 1980, № 1, с.52-55.
  • Г. А. Звенигородский. Описание и вызов процедур на Рапире. — Квант, 1980, № 2, с.53-55.
  • Г. А. Звенигородский. Функции, графики, локальные имена и тексты на Рапире. — Квант, 1980, № 3, с.48-51.
  • Г. А. Звенигородский. Множества и кортежи на Рапире. — Квант, 1980, № 3, с.51-56.

Ссылки

Экскурс в историю разработок языков программирования и компиляторов в СССР

Оригинальные разработки

            К великому сожалению, отечественный след в истории кибернетики значительно скромнее, чем бы он мог быть. Особенно это касается языков программирования. Единственный отечественный язык программирования, получивший общемировую известность, это язык Рефал. Однако распространённость этого языка весьма и весьма мала. Итак,

Программирующая Программа

            Первым в мире транслятором языка высокого уровня является ПП (Программирующая Программа), он же ПП-1, успешно испытанный в 1954 г. Транслятор ПП-2 (1955 г., 4-й в мире транслятор) уже был оптимизирующим и содержал собственный загрузчик и отладчик, библиотеку стандартных процедур.

Язык программирования Рефал

            Первая версия РЕФАЛа была создана в 1966 году Валентином Турчиным в качестве метаязыка для описания семантики других языков. Впоследствии, в результате появления достаточно эффективных реализаций на ЭВМ, он стал находить практическое использование в качестве языка программирования. В настоящее время основными диалектами языка являются РЕФАЛ-2 (1970-е), РЕФАЛ-5 (1985) и РЕФАЛ+ (1990), отличающиеся друг от друга деталями синтаксиса и набором дополнительных средств, расширяющих первоначальный вариант. Ссылки:

Язык программирования Алмо

            Язык системного программирования (машинно-ориентированный язык), задумывался как язык-посредник при трансляции с различных языков. Идея состояла в том, что для каждой аппаратной платформы достаточно было написать транслятор Алмо — и ты уже можешь работать с множеством языков программирования, которые имели трансляцию в Алмо. Были созданы реализации языка для основных отечественных машин того времени (М-20, БЭСМ-6, Минск 2, Урал 11) и трансляторы с Алгола-60 и ФОРТРАНа в Алмо, причем все трансляторы также были написаны на Алмо и “раскручены” на всех этих машинах.

Система программирования Сигма

            Г. Г. Степанов:

            …название языка — Сигма — неожиданно очень удачно стало соответствовать сути разработанного языка, которую можно описать как «Символьный Генератор и Макроассемблер».
            Всего в истории языка Сигма было три его реализации: на М-20, на БЭСМ-б и на самом языке Сигма. Первая, конечно самая памятная, т.к. это была мол первая работа в области системного программирования (да и вообще первая работа). Вторая была выполнена на лучшей, по моему мнению, отечественной машине БЭСМ-6. Третья опиралась на вторую, была раскручена сама через себя и могла генерировать программы как для БЭСМ-6, так и для СМ-4 и ЕС ЭВМ.

Универсальный машинно-ориентированный язык программирования Эпсилон

            А. Ф. Рар:

            Заявленной целью разработчиков языка было предоставить удобный рабочий инструмент системным программистам…
            Мы стремились достичь разумного компромисса между такими требованиями, как простота и удобство языковых средств, простота трансляции и возможность получения эффективной программы…
            Отладка эта состояла в классической раскрутке ( bootstrapping ): Эпсилон-текст транслятора я пропускал через написанный вручную Эпсилон-транслятор, а получившийся новый транслятор проверял на нормальных Эпсилон-программах. Раскрутка эта дала заодно ответ на … вопрос: «[насколько] программы, полученные путем Эпсилон-трансляции, проигрывают по сравнению с программами, написанными вручную?» Оказалось … всего в 1,35 раза.

Система программирования Бета

Центральным звеном проекта БЕТА был Внутренний язык, который должен был стать единым языком-посредником в БЕТА-системе «наибольшим общим делителем» входных языков и «наименьшим общим кратным» выходных машин. Кроме этой своей роли промежуточного языка, позволяющего уменьшить число путей в схеме m -языковой n -машинной трансляции с m * n до m + n , внутренний язык должен был также явиться средой оптимизирующих преобразований, т.е. он еще должен был быть достаточно богат, чтобы на нем было возможно представить результаты оптимизации; например, экономию совпадающих подвыражений в операторе a [ i , j , k ] := b [ i , j , k ] + c [ i , j , k ].

В итоге система БЕТА была реализована для языков Симула-67, Паскаль, Модула-2, Ада (подмножество) и выходных машин БЭСМ6 и СМ-4. Был реализован скромный набор оптимизаций — несмотря на обширные замыслы, более скромный, чем в системе Альфа. В общем, сравнительно с Альфа-системой, проект БЕТА следует признать неудачным.

Язык программирования Аналитик

            Язык программирования разработанный в 1968г. в Институте кибернетики АН УССР под руководством академика В.М. Глушкова. Отличительной чертой языка являются абстрактные типы данных, вычисления в произвольных алгебрах, аналитические преобразования. Был реализован на машинах МИР-2. Позднее была разработана версия Аналитик-74, реализованная на машинах МИР-3.

            В настоящее время на родине этого языка предпринимается попытка его возродить: появилась версия языка Аналитик-2007.

Автокод МВК «Эльбрус» Эль-76

            Этот язык, первоначально названный «автокод Эльбрус», затем был переименован в «Эль-76». Несмотря на то, что Эль-76 является языком достаточно высокого уровня, есть основание называть его «автокодом». Дело в том, что «Эльбрус» просто не имел языка более низкого уровня, т.е. «ассемблера». Т.е. язык минимального уровня «Эльбрус» — это Эль-76, остальные языки уже строились над ним. Это — замечательная иллюстрация высокого научного и инженерного уровня отечественных ИТ в то время. У этого языка почва из-под ног ушла позже остальных разработок, т.к. «Эльбрус» ещё некоторое время применялся в «оборонке».

ЯРМО (Язык Реализации, Машинно-Ориентированный)

            Машинно-ориентированный язык программирования, построенный для ЭВМ БЭСМ-6 и отражающий все тогдашние веяния в информатике. Язык программирования ЯРМО разработан в 1973 году в Новосибирском филиале ИТМиВТ. Впоследствии было разработано несколько версий языка. На нём в 1977 году была создана операционная система «Феликс» для СВС — первая в стране ОС на языке высокого уровня.

Другие разработки

            Конечно, история создания языков программирования в нашей стране не исчерпывается перечисленным. Если полистать подшивки журнала «Программирование», то можно найти много интересных разработок. Все эти языки на сегодняшний день можно считать «мёртвыми». Эти языки уходили вместе с техникой, в которой они «жили». Сперва умерла линия отечественной вычислительной техники, уступая место ЕС ЭВМ — клонам IBM/360/370. Затем настала очередь самих ЕС ЭВМ. С наступлением эры PC практически все оригинальные отечественные разработки закончили свою жизнь. В то время как «старые» зарубежные Fortran, Lisp, Cobol, C, Forth, Pascal до сих пор в ходу. Исключением из этого правила являются язык Рефал, который ещё можно найти в первой сотне рейтинга языков программирования, да Аналитик (есть компилятор для этого языка под Wintel; но это, скорее, теоретическая возможность пользоваться этим языком, а не практическая ценность).

Разработка компиляторов языков, разработанных за рубежом

            Отечественные учёные и инженеры принимали участие в работе международных комитетов по языкам, например Algol-68.

Языки программирования с ключевыми словами не на английском

Но большинство языков было разработано и без их участия, начиная от Fortran и кончая Ada.

            Производимые в СССР ЕС ЭВМ уже имели в комплекте компиляторы PL/I, Fortran, Cobol от IBM — либо «цельнотянутые», либо минимально доработанные. Ту же участь постигло ПО, которое шло с СМ ЭВМ, клоном компьютеров DEC.

            Однако разработка трансляторов для отечественной вычислительной техники всё же велась. Во-первых, не вся техника была «содрана»: это и упомянутые «Эльбрусы», вычислительная техника для военного применения (например, ЭВМ серии «5Э»), «Мир-2» и другие. Для них нужны были трансляторы языков высокого уровня. Ведь это для ЕС ЭВМ трансляторы шли «в комплекте», прямиком из IBM, а для перечисленной техники их не существовало. Во-вторых, IBM не делала трансляторов языков типа Algol-68 и Ada для IBM/360/370, следовательно, их не существовало и для ЕС ЭВМ. Наверно, самая значительная отечественная разработка в этой области — Algol-68 Ленинградского университета. Вот перечень трансляторов «сделано в СССР» (наверняка неполный):

  • Ada
  • Algol-60
  • Algol-68
  • C
  • CLU
  • Forth
  • Fortran (для Эльбрусов сделали 2 компилятора)
  • Lisp
  • Modula-2
  • Pascal
  • PL/I
  • SETL
  • Simula-67
  • Snobol-4

Что ещё почитать на эту тему

Последняя правка: 2016-06-01    16:52

Оцените Оценки посетителей
Нравится    ███████████████████████████████ 17 (73.9%)
Неплохо    ██████ 3 (13.0%)
Так себе    ██████ 3 (13.0%)
Не нравится    ▌ 0

Отзывы

2014/03/18 18:02, Noname

Для включения в список ссылок: Язык Форт в СССР и России

2014/03/18 18:11, Noname

ДССП (DSSP) диалоговая система структурного программирования (МГУ), и ещё.

Написать отзыв

Написать автору можно на электронную почту mail(аt)compiler.su

Есть много ЯП, которые уже отжили свое, но их все равно продолжают изучать. В этой статье мы расскажем про 5 языков, которые уже точно не стоит изучать, хотя многие до сих пор делают это.

Отдельные языки программирования постепенно выходят из категории лучших и теряют актуальность, они передают эстафету первенства более современным и функциональным вариантам. Язык полностью не отмирает, но теряет большую часть своих пользователей. Порой отследить тенденции на рынке бывает нелегко, так как для этого нужно иметь статистические данные, получение которых может быть затруднительной задачей.

Хорошим примером может стать Cobol, он теряет популярность, так как с большой долей вероятности можно сказать, что за 2017 год не было запущено ни одного крупного проекта. Это не значит, что программисты на Cobol вообще не нужны, они всё ещё будут поддерживать работоспособности отдельных систем, но во всём мире их количество сводится к 200-500 людей.

Если вы не являетесь хорошим специалистом в угасающей сфере, то держаться за неё нет никакого смысла, а спустя 10 лет о Cobol вовсе забудут, как и о программистах, работающих с ним. При решении углублённо изучать угасающие языки, высок риск провести карьеру на непрестижной, низкооплачиваемой вакансии в глуши. 

Perl

Влиятельный рейтинг отмечает отток аудитории от Perl на протяжении не первого года. Тенденция спада скорее всего будет продлеваться. Ещё 30 лет назад многие программисты оставляли другие языки, чтобы пользоваться простым синтаксисом и мощным кодом Perl. Влюблённость хакеров в язык была проявлена в выражении «». Достаточно было 5 минут манипуляций для проникновения в код машины и форматирования файлов. 

Причина гибели Perl заключается в неправильном выборе направления развития. Вместо ожидаемого увеличения функциональности, силы были переброшены на создание «сахара» для имеющихся команд.

Ситуация ещё более усугубилась после выхода , который имеет крайне простые скрипты, даже дети способны разобраться в его структуре. Внимание с Perl было резко переключено на набирающий популярность Python. Новый язык постепенно дополнялся библиотеками и эффективными инструментами, теперь единственной причиной выбора Perl является ностальгия.

Objective-C

Objective-C – это язык, который совмещает в себе сразу несколько синтаксисов и идей. В частности, C и Smalltalk. Он появился в 1980-х годах. Ещё до 2008 года использование языка ограничивалось отдельными лабораториями или тестовыми проектами. Язык неплохой, но малоизвестный, только немногие программисты были знакомы с ним. Он приобрёл популярность благодаря экспансии iPhone, в 2008 году появился знаменитый iPhone 3G. Резкий прирост популярности не заставил себя ждать.

К сожалению, востребованность не смогла перекрыть явные и существенные недочёты языка. Apple некоторое время была вынуждена мириться с изъянами, но при появлении необходимости выхода приложений в свободном доступе, компанию застали врасплох и пришлось переходить на другой язык.

Swift привела в действие приговор в отношении Objective-C. Популярность, востребованность и все остальные параметры настолько же резко заняли низкую позицию. Востребованность языка может продлиться ещё пару лет, но на основании решительных действий Apple для устранения языка можно отметить, в 2018 году занятие изучением Objective-C является бесполезным времяпровождением.

Язык ассемблера

Язык ассемблера «умер от старости», так как не выдержал естественное развитие программирования. Всего пару лет назад для создания высоконагруженных и производительных программ язык ассемблера был основой и без него не обходился никто, особенно в игровой индустрии. Сложность программирования и повышенная внимательность привела к большим затратам труда, ведь в системе нет никаких подсказок для дебага.

Сегодня разработчики достаточно востребованы и высокооплачиваемы, соответственно, скорость работы и надёжность кода – это экономия средств для заказчиков. Большинство компаний предпочитают производительность и снижение сроков на разработку. 

Высоконагруженные сервера никуда не делить, а наоборот стали ещё доступнее и экономичнее. Для выполнения задач по программированию высоконагруженных программ теперь используются другие современные языки высокого уровня. Они отличаются низкими затратами времени и могут обрабатывать огромные потоки информации. 

Делать прогнозы, что язык ассемблера полностью выйдет из обихода мы не отважимся, но в скором будущем на нём будут только профессионалы и отдельные гики.

Язык Си

Причина падения интереса к C обусловлена теми же причинами, его до сих пор принято изучать в лучших учебных учреждениях планеты, но надежды в отношении развития на C полагать можно только по одной причине. Сегодня ждут и делают акцент на наращивание потенциала в IoT. В любом случае приток программистов в C резко падает, всё больше акцент ставится на JavaScript, Java, Python и остальные.

При рассмотрении C и языка ассемблера не стоит полагать, что в ближайшем будущем языки полностью исчезнут из приложений. Можно предположить, что их будут использовать в качестве дополнительных модулей, которые будут обрабатывать данные в местах высоких нагрузок. Все основные задачи и большая часть функций будет возложена на другие высокоуровневые языки.

Проще всего определить, что происходит отток кадров и востребованности перечисленных языков на основании любой большой биржи труда. На рынке можно встретить лишь единичные предложения, где обязательно нужно знание C и ассемблера.

ActionScript

Оглядываясь назад сложно представить, что всего 5 лет назад при выборе между ActionScript и Python предпочтительным языком являлся первый вариант. Он имеет достаточно узкую сферу использования, исключительно в отношении веб-плееров, но обеспечивал увеличение производительности при сравнении с .

Ключевым недостатком стало имя — Flash Player.

Flash проигрыватель от компании Adobe часто провоцировал обнаружение уязвимостей.

Русские языки программирования

Хакеры постоянно открывали всё новые способы взлома конечных пользователей, захвата контроля над компьютером или распространения вирусов. 

Сегодня большая доля компаний в сфере IT практически полностью отказались от использования Flash, сделав его опцией, для альтернативы 5. Планируется, что в 2020 году поддержка ActionScript будет прекращена и компанией Adobe, тогда он окажется полностью бесполезен и просто «канет в Лете».


Мы рассмотрели тенденции развития, но они не имеют никакой роли, если изучением языка не планируется построение карьеры или получение высокого заработка. Для удовольствия можно изучать любой из языков, здесь тренды окажутся бессильными.

Больше интересных новостей

FILED UNDER : IT

Submit a Comment

Must be required * marked fields.

:*
:*