Г. А. Ззенигорсдск/ъй , Н. Г. Глаголева ,
П. А, Земцев , Е. В. Налимов , В. А. Цикоза
Программная система
«Школьница»
и ее реализация
на персональных ЭВМ
Систему «Школьница» можно эффективно исполь-
зовать в работе со школьниками любого возраста и со
студентами вузов и техникумов, а также в составе ав-
томатизированных рабочих мест специалистов различ-
ного профиля для решения прикладных задач е диа-
логовом режиме.
Одна из важнейших сфер внедрения вы-
числительной техники — образование, в том
числе — общеобразовательная школа. Обу-
чая работе с ЭВМ, школа будет готовить
учащихся к эффективному использованию
возможностей современной техники в общест-
венном производстве, науке, здравоохране-
нии, культуре и образовании. Кроме того,
благодаря ЭВМ можно широко применять
моделирующие программы, тренажеры, раз-
вивающие игры, а это повышает качество
преподавания многих предметов школьного
курса.
Малогабаритные и достаточно дешевые
персональные ЭВМ имеют очень широкую
сферу применения: от автоматизации произ-
водственных процессов и научных исследо-
ваний до обучения школьников, квалифици-
рованных рабочих, студентов и переподго-
товки кадров. В учебных заведениях различ-
ного профиля (включая школы) оборудуются
вычислительные кабинеты, в которых каждое
рабочее место учащегося оборудовано персо-
нальной ЭВМ (ПЭВМ). Для использования
ПЭВМ в учебных заведениях требуется спе-
циализированное программное обеспечение.
Пакеты прикладных программ и системы
программирования, предназначенные для уча-
щихся различного возраста и квалификации,
сегодня одна из наиболее развитых компонент
программного обеспечения ПЭВМ.
В Вычислительном центре СО АН СССР
при участии Новосибирского университета
разработана программная система «Школь-
ница» для оснащения персональных ЭВМ, в
частности эта система реализована в составе
системного программного обеспечения персо-
нальной ЭВМ «Агат».
Структура системы «Школьница»
«Школьница» — интегрированная програм-
мная среда учебно-производственного назна-
чения. Ее общая структура представлена на
рисунке в виде трехслойной диаграммы. Она
объединяет в себе свойства интегрированной
многоязыковой системы программирования с
управляемой структурой, комплекта пакетов
прикладных программ учебного назначения,
инструментальной системы для реализации
таких пакетов и диалоговой архивно-сервис-
ной системы. Система позволяет:
— ознакомить учащихся с возможностями
ЭВМ, сформировать у них важнейшие навы-
ки программирования и применения вычисли-
тельных машин;
— построить для каждого учащегося инди-
видуальную операционную обстановку, поз-
воляющую ему решать на ЭВМ задачи по
различным дисциплинам самым удобным для
'него способом;
— повысить качество преподавания раз-
личных дисциплин, используя информацион-
ные, моделирующие, логические, демонстра-
ционные и другие возможности персональных
ЭВМ;
— обеспечить возможность оперативного
решения небольших задач на ПЭВМ пользо-
вателями, не имеющими специальной подго-
товки в области вычислительной техники;
— организовать автоматизированный конт-
роль знаний и умений учащихся, а также
управление учебным процессом.
Основную роль в системе играет средний
слой — языковое ядро, образованное ее вход-
ными языками. Внешний слой — наполне-
ние — состоит из библиотек и пакетов прог-
рамм, написанных на входных языках систе-
мы. Наконец, внутренний слой (межъязыко-
вое системное основание), невидимый для
пользователя, включает в себя резидентные
модули, обеспечивающие работу остальных
слоев.
Учебно-производственный язык Рапира
9
Основной входной язык системы «Школь-
ница» — учебно-производственный язык Ра-
пира. Он предназначен для обучения основ-
ным способам и приемам решения задач на
ЭВМ учащихся, уже знакомых с важнейши-
ми понятиями и конструкциями программи-
рования на примере языка начального обу-
чения. Рапира может быть использована для
решения разнообразных прикладных задач.
Вместе с тем Рапира — основной инструмен-
тальный язык системы «Школьница»: на этом
языке записывается большинство приклад-
ных программ и учебных пакетов, образую-
щих наполнение системы.
В составе системы есть несколько версий
Рапиры: концентрическое семейство диалого-
вых языков, последовательно используемых
в процессе обучения, и пакетная версия, пред-
назначенная для написания учебных пакетов,
обучения школьников в рамках предпрофес-
сиональной подготовки (уроки труда, круж-
ки, факультативы), профессиональной подго-
товки и работы на автоматизированных рабо-
чих местах технологов-программистов (АРМ
ТП). Внешний концентр диалоговой Рапиры
^представляет собой частичио-типизированный
язык с разнообразными управляющими кон-
струкциями и структурами данных.
Лексические единицы языка (лексемы) —
имена, служебные слова, числа, тексты, спе-
циальные символы и комментарии. Длина
большинства лексем, в том числе имен, тек-
стов и целых чисел в языке не ограничивает-
ся. Форма их записи в общем традиционна.
Имена и служебные слова синтаксически не
отличаются друг от друга и распознаются
контекстно. Между любыми лексемами, но не
внутри них, может быть вставлено произволь-
ное число пробелов, переводов строк и ком-
ментариев. В качестве базового естественно-
го языка для Рапиры выбран русский.
Программа на языке Рапира — это после-
довательность предписаний, процедурных бло-
ков и объявлений имен. Каждое правильное
законченное предписание, не входящее в сос-
тав процедурного блока, исполняется немед-
ленно после ввода его с клавиатуры. Если в
предписании ошибка, то на экране появляется
развернутое диагностическое сообщение.
Объявления имен в диалоговой Рапире не
обязательны. Необъявленные имена и имена,
объявленные без указания типа, по умолча-
нию относятся к универсальному типу. Значе-
ниями таких имен могут быть любые объекты
языка: числа, тексты, множества, кортежи,
записи, процедуры, функции, файлы, кадры,
рисунки, модули и специальное пустое зна-
чение.
Над числами в Рапире выполняются обыч-
ные арифметические операции (включая воз-
ведение в степень) и операции сравнения.
Для текстов предусмотрено определение ко-
личества символов в них и работа с отдель-
ными участками текстов.
В Рапире используется три вида состав-
ных значений: множества, записи и кортежи.
Для каждого вида есть соответствующая
многоместная операция формирования, позво-
ляющая построить составное значение из не-
скольких элементов. Каждая из этих структур
может содержать произвольное число элемен-
тов различных видов.
Множество рассматривается как неупоря-
доченная совокупность . попарно различных
элементов, кортеж — как упорядоченная по-
следовательность индексируемых элементов,
запись — как составное значение с именован-
ными полями.
Над множествами выполняются обычные
математические операции: объединение, пере-
сечение, вычитание, определение мощности,
проверка принадлежности, сравнение на ра-
венство и неравенство. Для кортежей и тек-
стов используются одинаковые операции; для
записей есть единственная операция — выбор-
ка по названию поля. Для иерархически вло-
женных составных значений допускается мно-
гократная индексация. Над процедурными и
функциональными значениями разрешена
единственная операция — вызов с традицион-
ным синтаксисом.
Файл в Рапире определяется как значение
произвольного вида, хранящееся на внешнем
носителе. Действия с файлами реализуются
при помощи специальных предписаний.
В Рапире предусмотрены следующие пред-
писания:
— присваивание, обозначаемое стрелкой
вправо (—>);
— ВВОД и ВЫВОД;
— циклы (четыре разновидности — ПО-
КА, ПОВТОР, ДЛЯ-ИЗ и ДЛЯ-ОТ-ДО-
ШАГ):
— ветвления (три разновидности ЕСЛИ,
ВЫБОР и ВЫБОР ИЗ);
— вызов процедуры;
— ВКЛЮЧИТЬ и ВЫКЛЮЧИТЬ (для
управления потоками ввода-вывода, отладоч-
ными режимами и модулями);
— ВЫХОД (для выхода из процедур),
СТОП и ПУСК;
— КОНТРОЛЬ (установка контрольных
точек в отладочном режиме);
— управление файлами.
Экранный текстовой редактор для описа-
ния процедур, функций и модулей и для ра-
боты с текстовыми файлами включается ав-
томатически после набора первой строки за-
головка соответствующей конструкции.
Для процедур в Рапире предусмотрено три
типа параметров: входные (передаваемые по
значению), выходные и возвратные. В функ-
циях используются только входные парамет-
ры. В процедурах и функциях могут быть
объявлены локальные имена. Поиск имен осу-
ществляется по динамической цепочке вызо-
вов. Других способов локализации в языке
кет.
Модули — удобное средство для описания
учебных пакетов прикладных программ. Уо-
дулем в Рапире называется совокупность од-
новременно загружаемых процедур, функций
и файлов с общим полем нелокальных имен.
Часть имен, используемых в модуле, может
быть скрыта от пользователя (инкапсуляция
данных). Условия видимости элементов моду-
ля определяются при его описании. Для опи-
сания модулей есть специальный режим.
В языке предусмотрены разнообразные от-
ладочные механизмы: многоуровневая защи-
та имен по записи, приостановка процедур,
трассировка и автоматическая прокрутка,
контрольные точки, инварианты, управляемая
обработка ошибок, факультативный контроль
типов имен.
Стандартные функции и процедуры Рапи-
ры позволяют вычислять значения тригоно-
метрических и других математических функ-
ций, управлять громкоговорителем и разме-
щением информации на экране, получать слу-
чайные числа, преобразовывать данные и т. д.|
Основная особенность пакетной Рапиры,
состоит в том, что все имена обязательно
должны быть объявлены с указанием типа.
В остальном эта версия полностью совмести-
ма с внешним концентром диалоговой Рапи-
ры, что позволяет отлаживать программы в
диалоге, а затем переводить их на пакетную
' версию и компилировать. [
Графическая система Шпага и язык
начального обучения Робик
Графическая система Шпага — это встро-
енный межязыковый модуль, позволяющий
получать на цветном или черно-белом экране
линейные и растровые рисунки, формировать
простейшие мультипликационные фильмы,
выполнять геометрические преобразования.
Особое место в системе занимает язык
Робик, предназначенный для обучения млад-
ших школьников (8—12 лет) основным поня-
тиям и навыкам программирования.
По операционным возможностям Робик
близок к внутреннему концентру Рапиры. Ос-
новные предписания в нем следующие: при-
сваивание, ввод, вывод, ветвление (ЕСЛИ-
ТО-ИНАЧЕ), циклы (две разновидности),
вызов процедуры, ВКЛЮЧИТЬ и ВЫКЛЮ-
ЧИТЬ и некоторые отладочные конструкции.
Для описания функций и процедур исполь-
зуется тот же текстовой редактор, что и в
Рапире. Лексика этих языков практически
совпадает. Однако, в отличие от Рапиры,
большинство предписаний Робика имеет не-
сколько синтаксических форм: от разверну-
тых, полностью описывающих семантику пред-
писания, до кратких, близких к рапировским.
Такой «сжимаемый» синтаксис позволяет ис-
• %
пользовать непроизвольное запоминание для
усвоения семантики основных конструкций.
Например, простейшее присваивание можно
написать в полной форме —
ЗНАЧЕНИЕ „Лев" ПОМЕСТИТЬ В
БЛОК ПАМЯТИ с ИМЕНЕМ Зверь;
в более короткой —
ЗНАЧЕНИЕ „Лев" ПРИСВОИТЬ ИМЕ-
НИ Зверь;
и в совсем короткой —
„Лев" ПРИСВОИТЬ Зверь;
На Рапире это предписание будет выгля-
деть так:
„Лев"—> Зверь;
Аппарат исполнителей в языке Робик
Основная особенность Робика, связанная
с педагогической ориентацией этого языка —
механизм исполнителей. Исполнитель — это
встроенный пакет прикладных программ или
программная модель некоторого объекта или
процесса, имеющая свой входной язык. Каж-
дый исполнитель характеризуется множест-
вом допустимых предписаний с самостоятель-
ным синтаксисом и семантикой и определяет,
таким образом., расширение базового Роби-
ка. Обычные для языков программиро-
вания операции над числами и текстами мо-
гут выполняться в Робике только при помощи
специальных исполнителей. В программах для
исполнителей можно использовать все управ-
ляющие конструкции Робика, включая циклы,
ветвления и процедуры. Это позволяет обу-
чать школьников основным навыкам програм-
мирования на интересных и наглядных при-
мерах. Кроме того, в языке предусмотрена
возможность генерации нескольких однотип-
ных исполнителей с различными именами, что
позволяет обучать простейшим методам син-
хронизации параллельных процессов.
В системе «Школьница» предусмотрены
средства для описания новых исполнителей в
дополнение к стандартным. Поэтому всю со-
вокупность исполнителей можно отнести к
внешнему слою — наполнению системы, пред-
ставляющему собой самую гибкую ее часть,
формируемую и модифицируемую пользовате-
лем в процессе эксплуатации. Таким образом,
язык Робик в отличие от Рапиры — открытый
язык, синтаксис и семантика расширений ко-
торого определяются пользователем.
Описание исполнителей осуществляется с
использованием текстового редактора в спе-
циальном режиме, аналогичном режиму опи-
сания модулей в Рапире. Синтаксис предпи-
саний задается отдельным входным языком,
основанным на сетевом описании синтаксиче-
ских диаграмм. Семантика исполнителей опи-
сывается с помощью специальных модулей
Рапиры со специфической структурой.
Средства управления операционной
обстановкой
Как уже указывалось, одна из важнейших
задач системы «Школьница» в учебном про-
цессе — формирование специфической опера-
ционной обстановки для каждого учащегося.
Операционная обстановка — это набор воз-
можных действий вместе со средствами их
выполнения [1]. При работе с системой
«Школьница» обстановка включает в себя
определенные техн [ческие возможности (ра-
бота с диском, экраном, динамиком, печатаю-
щим устройством и т. п.), множество доступ-
ных операций, предписаний, стандартных мо-
дулей, файлов, функций и процедур, комплект
подключенных учебных пакетов прикладных
программ и исполнителей, а также библиоте-
ку программ, составленных пользователем
для себя. Операционная обстановка для каж-
дого урока определяется преподавателем ис-
ходя из текущей учебной задачи. Например,
иногда бывает целесообразно закрыть уча-
щемуся доступ к некоторым информационным
файлам или языковым конструкциям, чтобы
проверить его знания или сформировать оп-
ределенные навыки. Для формирования опе-
рационной обстановки предусмотрен еще
один самостоятельный язык, входящий в со-
став языкового ядра системы.
Пакеты программ библиотеки
Внешний слой — наполнение системы
«Школьница» — образован программными
модулями и исполнителями, описанными с ис-
пользованием входных языков системы. Боль-
шая часть слоя — программы, составленные
преподавателями и методистами для учащих-
ся и самими школьниками для себя. Это поз-
воляет определять «Школьницу» в целом как
программную среду.
Основная часть наполнения — учебные па-
кеты прикладных программ, представляющие
собой комплексы взаимосвязанных процедур,
функций и файлов для решения учебных за-
дач при изучении одного или нескольких
школьных предметов.
Для учебного процесса выделим следую-
щие основные разновидности пакетов:
— моделирующие — управляемые програм-
мные модели объектов и процессов;
— операционные, предоставляющие поль-
зователю набор дополнительных возможнос-
тей и тем самым расширяющие операцион-
ную обстановку;
— информационные — базы данных по те-
матике школьных предметов со специализи-
рованными языками запросов;
— тренажеры для отработки определенных
навыков во взаимодействии с ЭВМ;
— контрольно-обучающие — курсы прог-
раммированного обучения, составленные с
учетом возможностей ПЭВМ, или программы
для проверки знаний и навыков учащихся.
Многие пакеты, относящиеся к любой из
перечисленных разновидностей (особенно при
работе с учащимися младшего школьного
возраста), могут быть оформлены как игро-
вые.
Пример моделирующего пакета — прог-
раммная модель установки для вывода и
проверки газовых законов. При работе с этим
пакетом на экране телевизионного монитора
видно схему установки, состоящей из цилинд-
ра с подвижным поршнем, нагревательной
спирали, охладителя, баллона с газом, термо-
изоляционной оболочки и приборов, показы-
вающих объем, давление, температуру и мас-
су газа, температуру окружающей среды и
условное время. Учащийся может изменять
характер движения поршня (зафиксировав
либо объем, либо давление), управлять тем-
пературным режимом, включая или выклю-
чая нагреватель или охладитель, регулиро-
вать теплообмен со средой и т. д. Пакет ис-
пользуется автономно (иногда для работы с
ним не обязательно уметь программировать)
или в режиме диалога с интерпретатором Ра-
пиры. Это позволяет составить план экспе-
римента и описать соответствующую про-
цедуру на Рапире, а затем следить на экране
за ее выполнением.
Примеры операционных пакетов: модель
химической лаборатории, конструкторы для
моделирования электро- и радиоцепей, музы-
кальная шкатулка, набор процедур для ана-
лиза функций и построения графиков и т. д.
Состав, назначение и принципы формиро-
вания друГих элементов внешнего слоя легко
понять, изучив рисунок.
Реализация системы «Школьница»
Для реализации системы «Школьница»
на ПЭВМ разработан универсальный синтак-
сически-управляемый интерпретатор с исполь-
зованием промежуточной системы команд
виртуальной Рапира-машины.
Разбор предписаний, записанных на любом
из входных языков, производится единым ана-
лизатором со сменными комплектами таблиц
синтаксических описаний. В процессе анализа
исполняются те или иные семантические под-
программы, формирующие промежуточный
код, состоящий из команд Рапира-машины.
Табличное управление синтаксическим
разбором позволяет использовать один и тот
же анализатор для всех входных языков, об-
легчает подключение к Робику новых испол-
нителей и упрощает управление концентра-
ми Рапиры при формировании операцион-
ной обстановки обучения. Система команд
Рапира-машины включает команды для всех
предусмотренных во входных языках опера-
ций над данными, для работы со стеками, уп-
равления последовательностью действий, по-
токами ввода-вывода и режимами работы
ЭВМ.
В интерпретаторе команд используются
три типа памяти: два программных стека со
встречным заполнением, главный пул динами-
ческой памяти с произвольным доступом и
фиксированные операционные буфера. Систе-
ма управления памятью обеспечивает работу
со стеками главным пулом. В связи с тем, что
интерпретатор требует выделения и освобож-
дения блоков памяти с большим разбросом
размеров запрашиваемых блоков, для управ-
ления главным пулом памяти выбран метод
«близнецов», обеспечивающий требуемые ди-
намические характеристики [2].
Работой системы управляет главный мо-
нитор.
Опыт применения системы «Школьница»
В настоящее время система «Школьница»,
как уже упоминалось, реализована на оте-
чественной персональной ЭВМ «Агат» в ис-
полнении, включающем ОЗУ емкостью
96 Кбайт, ДЗУ на гибком магнитном диске
емкостью 128 Кбайт и растровый телевизион-
ный монитор с информационной емкостью
32x32 символа, 128X128 цветных точек раст-
ра или 256X256 черно-белых точек. Сокра-
щенная версия системы с лексикой на основе
английского языка реализована на ЭВМ
«Apple» с ОЗУ емкостью 48 Кбайт. В даль-
нейшем предполагается перенести систему на
другие типы малых ЭВМ и модифицировать
ее для локальных сетей персональных
ЭВМ [3].
Система эксплуатируется в ВЦ СО АН
СССР, в вычислительном кабинете средней
школы № 166 г. Новосибирска, на предприя-
тиях и в других организациях. Как показали
первые месяцы опытной эксплуатации, систе-
му можно эффективно использовать в работе
со школьниками любого возраста (экспери-
менты проводились в четвертых, седьмых и
девятых классах) и со студентами вузов и
техникумов. Система «Школьница» повыша-
ет качество обучения различным дисцип-
линам. Ее можно применять в составе ав-
томатизированных рабочих мест специалистов
различного профиля для решения прикладных
задач в диалоговом режиме. В этом случае
перед работой с системой не требуется спе-
циальной подготовки.
Исходные теоретические положения, реа-
лизованные в системе «Школьница», были
разработаны в группе школьной информатики
ВЦ СО АН СССР под руководством член-
корреспондента АН СССР А. П. Ершова
[4—6]. Результаты педагогических исследова-
ний и экспериментов группы, а также резюме
основных положений представлены в рабо-
тах [7, 8].
Первые версии языков Робик и Рапира
и графической системы «Шпага», входящих в
систему «Школьница», появились в 1975—
1978 гг. [13, 14]. При выборе схемы диалога и
способов работы со сложными структурами
данных в Рапире использовались элементы
современных языков высокого уровня, таких
как Сетл [9] и Поп-2 [10]. Аппарат исполните-
лей, принятый в Робике, по своим операцион-
ным возможностям близок к базовым конст-
рукциям языков Лого [11 и Smalltak [12].
В реализации на различных ЭВМ базовой
части системы «Школьница» и ее наполнения
принимали активное участие школьники —
учащиеся и выпускники новосибирской и Все-
союзных Летних школ юных программистов.
Так, первые реализации языков Робик и Ра-
пира и системы «Шпага» на ЭВМ БЭСМ-6
были осуществлены с участием О. В. Хоро-
шевской, А. К. Салиховой, Н. А. Соколо-
вой, в реализации базовой части систе-
мы на ЭВМ «Apple» и «Агат» вместе с ав-
торами участвовали Л. Р. Рабинович и
Е. Л. Васенева, серия учебных пакетов при-
кладных программ для этой системы разра-
ботана В. Ю. Волковой, А. Д. Петровым,
Д. А. Баклановым, С. В. Гавриленко.
Существует пробная реализация языка
Рапира на ЕС ЭВМ, выполненная в Ленин-
градском университете [15].
ЛИТЕРАТУРА
1. Эфрос Л. Б. Концептуальный анализ програм-
мных систем: Препринт № 75. — Новосибирск, 1977.—
22 с.
2. Кнут Д. Искусство программирования для ЭВМ.
Основные алгоритмы. — М.: Мир, 1976, т. 1. — 736 с.
3. Иоффе А. Ф. Персональные информационно-
обучающие и вычислительные устройства «Агат». Сос-
тояние и перспективы развития. — В кн.: Диалог-82-
микро: Тез. докл. Всесоюз. науч.-техн. конф. Пущино.
ВЦ АН СССР, 1982, с. 12—14.
4. Ершов А. П., Звенигородский Г. А., П е р-
в и н Ю. А. Школьная информатика (концепции, сос-
тояние, перспективы): Препринт N° 152. — Новосибирск,
1979. —51 с.
5. Е г s h о v А. P. Programing, the second literacy.—
In: Computers in education. North-Holland Publ.
Сотр. — IFIP, 1981, p. 1—7; см. также: ЕршовА. П.
Программирование — вторая грамотность. — ЭКО, 1982,
№ 2, с. 143—156.
6. Звенигородский Г. А. Некоторые вопросы
методологии учебного программирования. — В кн.: Вто-
рой чехословацко-советекий семинар молодых ученыу по
математической информатике. — Братислава, 1982,
с. 44—50.
7. Ершов А. П., Звенигородский Г. А., Л и-
т е р а т С. И., П е р в и н Ю. А. Работа со школьника-
ми в области информатики. Опыт Сибирского отделения
АН СССР.— Математика в школе, 1981, JVb 1, с. 47—50.
8. Е г s h о v А. P., Pervin Y u. A., Y и n е г-
шап N. A., ZvenigorodsKi G. A. Computers in
school: formulating a national program. — Alberta
printout, 1983, v. 4, N 2, p. 34—37.
9. Левин Д. Я- Язык сверхвысокого уровня СЕТЛ
и его реализация (для ЭВМ БЭСМ-6). — Новосибирск:
Наука, 1983. — 160 с.
10. Банковский Ю. М., В ыо к о в а Н. П., Г а-
латенко%В. А., Ходу л ев А. Б. Программирование
на языке ПОПЛАН. — М.: ИПМ АН СССР, 1976.—76 с.
И. Paper S. Mindstorms (children, computers, and
powerful ideas) — Brighton: The Harvester Press Ltd,
1980. — 230 p.
12. Goldberg A., Rob son D. SmalltalK-80. The
language and its implementation. — Addison-Wesley
Publ. Сотр., 1983. — 718 p.
13. Звенигородский Г. А. Система математи-
ческого обеспечения, ориентированная на школьный
учебный процесс. — УСИМ, 1980, № 5, с. 76—82.
14. Звенигородский Г. А. Язык начального
обучения Робик в учебной системе программирова-
ния. — В кн.: Программное обеспечение задач инфор-
матики.— Новосибирск, 1982, с. 72—85.
15. Звенигородский Г. А., С а л и х о в а А. К.»
Ц и к о з а В. А. Машинная графика в математическом
обеспечении учебного процесса. — В кн.: Прикладные
методы информатики. — Новосибирск, 1980, с. 121—133.
16. Звягина Н. И., Терехов А. Н. Реализация
диалогового учебного языка Рапира на ЕС ЭВМ. —
В кн.: Системное и теоретическое программирование:
Тез. докл. IV Всесоюз. симп. (31 мая—2 июня 1983 г.).,
— Кишинев: Штиинца, 1983, с. 168—169.
Статья поступила 13 декабря 1983 г.
удк 681.322.1