ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.12.2020
Просмотров: 1067
Скачиваний: 1
177
Современный
Бэйсик
мало
чем
напоминает
своего
прародите
-
ля
.
Его
иногда
сравнивают
с
удавом
,
который
проглатывает
и
пере
-
варивает
все
новые
идеи
в
программировании
.
От
Алгола
и
Паска
-
ля
он
перенял
современный
гибкий
синтаксис
от
Smalltalk —
объек
-
ты
.
Более
того
,
восприняв
визуальную
CASE-
оболочку
,
Бэйсик
сам
стал
источником
идей
для
визуальных
систем
программирования
.
Вслед
за
Visual Basic
появились
Delphi, Visual FoxPro, Visual C++
и
др
.
Долгое
время
технологические
системы
программирования
на
Бэйсике
развивались
только
как
интерпретаторы
,
и
это
ограничи
-
вало
его
применение
для
серьезных
разработок
,
однако
в
последнее
время
появились
оптимизирующие
компиляторы
,
предоставляющие
полноценную
среду
программирования
,
практически
не
уступаю
-
щую
Delphi
или
Visual C.
Cobol -
язык
для
бухгалтеров
и
языки
СУБД
Через
два
года
после
появления
Фортрана
,
когда
слегка
утихли
восторги
по
поводу
трансляции
формул
,
выяснилось
,
что
этот
язык
,
идеально
подходящий
для
физиков
,
мало
пригоден
для
экономически
,
коммерческих
,
бухгалтерских
рас
-
четов
.
Там
нет
длинных
формул
,
зато
есть
сложные
структуры
дан
-
ных
,
которые
язык
не
воспринимает
.
Попытки
как
-
то
модифициро
-
вать
Фортран
были
не
очень
удачными
,
к
тому
же
он
был
собствен
-
ностью
IBM,
а
другие
фирмы
опасались
засилия
«
голоубого
гиган
-
та
».
В
1959
году
группа
производителей
и
потребителей
ЭВМ
по
инициативе
неугомонной
Грейс
Хоппер
стала
искать
независимого
спонсора
,
который
бы
мог
профинансировать
сосдание
нового
стан
-
дартного
языка
,
специально
рассчитанного
на
задачи
обработки
экономических
данных
.
Она
нашла
поддержку
в
Министерстве
обо
-
роны
США
,
где
к
тому
времени
уже
эксплуатировалось
1046
ЭВМ
,
требующих
обширного
программного
обеспечения
.
Была
образова
-
на
рабочая
группа
CODASYL — Conference on Data Systems
Languages,
которая
после
долгих
споров
и
проволочек
предложила
проект
языка
Cobol — COmmon Business Oriented Language —
Об
-
щий
язык
,
ориентированный
на
бизнес
.
178
В
отличие
от
вычислительных
задач
,
в
которых
главное
—
алго
-
ритм
,
а
простейшие
неструктурированные
данные
просто
вводятся
и
выводятся
,
в
экономических
задачах
данные
имеют
приоритет
.
Они
могут
иметь
очень
сложную
структуру
и
хранятся
в
виде
фай
-
лов
на
внешних
устройствах
сами
по
себе
,
независимо
от
программ
обработки
.
Поэтому
в
Коболе
появился
способ
описания
иерархи
-
ческих
структур
данных
,
который
затем
перекочевал
во
все
после
-
дующие
универсальные
языки
программирования
.
Кроме
того
,
про
-
грамма
на
исходном
языке
может
быть
настроена
на
любое
оборудо
-
вание
и
на
любую
структуру
внешних
данных
,
для
чего
а
тексте
имеются
специальные
разделы
.
Сам
алгоритм
обработки
,
распола
-
гающийся
в
разделе
процедур
(procedure division),
бывает
,
как
пра
-
вило
,
очень
простым
.
Авторы
Кобола
посчитали
,
что
программы
на
нем
будут
писать
рядовые
бухгалтеры
,
для
которых
сокращения
и
формулы
могут
показаться
слишком
сложными
,
поэтому
сделали
язык
максимально
приближенным
к
обычному
английскому
,
даже
знаки
операций
заменили
на
слова
:
вместо
«+»
пишут
оператор
ADD,
а
вместо
знака
присваивания
«=»
оператор
GIVING (
полу
-
чая
).
В
результате
язык
стал
хотя
и
понятным
англоязычному
пользо
-
вателю
,
но
слишком
многословным
.
Вот
как
выглядит
фрагмент
программы
на
Коболе
:
1010
IDENTIFICATION DIVISION.
1020 PROGRAM-ID “EXAMPLE”.
1030
ENVIROMENT DIVISION.
1040 INPUT-OUTPUT SECTION.
1050 FILE-CONTROL.
1060 SELECT CD ASSIGN TO “SYS010” UNIT-RECORD 2540R.
1070 SELECT TT ASSIGN TO “SYS009” UTILITY 2400.
1080
DATA DIVISION.
1090 FILE SECTION.
1100 FD
CD
DATA RECORD IS C
1110
LABEL RECORDS ARE OMITTED.
1120 01
C.
1130 02 C1 PICTURE 9(4).
1140 02 C2 PICTURE 9.
1150 02 C3 PICTURE X(70).
...
1290
PROCEDURE DIVISION.
179
1300 P1.
OPEN INPUT CD, OUTPUT TT.
1310 P2.
READ CD, AT END GO TO P3.
1320
MOVE C1 TO D1.
1330
MONE C2 TO D2.
1340
MOVE C3 TO D3.
1350
ADD C1, C2, GIVING D4.
1360
WRITE T FROM D.
1370
GO TO P2.
1380 P3.
CLOSE SD, TT.
1390
STOP RUN.
На
этом
примере
хорошо
видны
отмеченные
выше
особенности
языка
:
привязка
к
оборудованию
в
строках
1030 - 1070,
описание
двухуровневой
структуры
внешних
записей
в
строках
1100 - 1150,
многословный
раздел
процедур
.
Кобол
получил
очень
широкое
распространение
в
США
.
Наря
-
ду
с
Фортраном
он
стал
одним
из
«
великих
»
языков
,
просущество
-
вавшим
уже
40
лет
и
не
думающим
сдавать
позиции
.
По
некоторым
оценкам
,
на
нем
до
сих
пор
пишется
не
менее
50%
коммерческих
программ
.
В
Советский
Союз
Кобол
попал
в
начале
70-
х
годов
,
в
эпоху
ЕС
ЭВМ
и
всеобщей
увлеченности
АСУ
,
однако
большой
популярнос
-
ти
он
не
приобрел
,
повествовательные
англоязычные
тексты
раз
-
дражали
отечественных
прогрммистов
.
Русифицированный
Кобол
,
разработанный
для
ЭВМ
Минск
-32,
также
не
пользовался
успехом
,
так
как
тексты
из
-
за
меньшей
лаконичности
русского
языка
полу
-
чались
совсем
уж
громоздкими
.
Программисты
предпочитали
ра
-
ботать
на
более
компактном
и
универсальном
PL/1,
о
котором
мы
будем
говорить
ниже
.
Концепция
СУБД
,
появившаяся
к
началу
70-
х
годов
,
не
могла
не
повлиять
на
языки
,
предназначенные
для
экономических
задач
.
Например
,
группа
CODASYL
продолжившая
свою
работу
,
в
1968
году
опубликовала
расширение
Кобола
для
работы
с
базами
дан
-
ных
.
Фирмы
-
производители
СУБД
также
предлагали
различные
язы
-
ки
манипулирования
данными
.
Эти
языки
плохо
стыковались
друг
с
другом
,
потому
что
сами
системы
основывались
на
разных
моде
-
лях
данных
.
Однако
,
когда
в
конце
70-
х
годов
стал
преобладать
ре
-
180
ляционный
подход
(
что
это
такое
,
мы
скажем
позже
,
когда
речь
дой
-
дет
до
истории
СУБД
),
появилась
возможность
создать
унифици
-
рованный
язык
реляционных
баз
данных
.
Таким
языком
стал
SQL
(Structured Query Language —
структурированный
язык
запросов
),
разработанный
в
1974
году
в
исследовательском
центре
IBM
в
Сан
-
Хосе
.
В
настоящее
время
SQL
является
общепризнанным
стандар
-
том
языка
баз
данных
,
он
реализован
во
всех
промышленных
СУБД
различных
производителей
.
Algol
и
его
влияние
на
языки
программировния
Язык
Algol (ALGOritmic Language)
родился
одновременно
с
Коболом
,
и
причина
его
появления
та
же
—
недовольство
ученых
Фортраном
и
диктатом
IBM.
Но
,
в
отличие
от
Фортрана
и
Кобола
,
родина
Алгола
—
Европа
.
В
1958
году
в
Цюрихе
(
Швецария
)
открылась
международ
-
ная
конференция
с
8
участниками
(
в
том
числе
присутствовал
и
автор
Фортрана
Джон
Бэкус
),
на
которой
был
предложен
проект
нового
универсального
международного
языка
программирования
Первая
версия
называлась
Algol-58,
в
течение
двух
последующих
лет
язык
дорабатывался
,
в
1960
году
была
опубликован
окончательная
версия
под
названием
Algol-60.
Появле
-
ние
Алгола
произвело
рево
-
люцию
в
языках
прогрмми
-
рования
.
В
отличие
от
Фор
-
трана
и
Кобола
,
создавав
-
шихся
практиками
,
он
раз
-
рабатывался
учеными
и
ос
-
новывался
на
надежном
те
-
оретическом
фундаменте
.
Основные
особенности
язы
-
ка
сводятся
к
следующему
.
•
Впервые
язык
был
строго
формализован
.
Для
описания
синтаксиса
Джоном
Бэкусом
совместно
с
датским
астрономом
Питером
Науром
была
предложена
форма
задания
синтаксических
правил
Участники
конференции
по
Алголу
голосуют
за
принятие
языка
(1960
г
.)
181
(
БНФ
—
Бэкуса
-
Наура
Форма
),
ставшая
впоследствии
общеприз
-
нанным
стандартом
для
всех
языков
программирования
.
•
Был
наведен
порядок
с
типами
данных
и
блочной
структурой
программ
,
появились
обязательные
описания
данных
и
процедур
в
начале
блоков
,
разделители
операторов
в
виде
точки
с
запятой
.
В
целом
текст
программы
пробрел
современный
вид
.
•
В
язык
введена
возможность
рекурсии
,
что
придало
ему
теоретическую
изящность
.
В
качестве
примера
приведем
простейшую
программу
,
вычис
-
ляющую
среднее
арифметическое
массива
чисел
:
begin
integer
i, n;
real
s;
real array
x[1:n];
s:=0;
for
i:=1
step
1
to
n
do
s:=s+x[i];
s:=s/n
end
Похоже
на
современные
языки
программирования
,
правда
?
Америка
отнеслась
к
новому
языку
прохладно
,
там
царствовала
IBM
со
своим
Фортраном
.
Зато
в
Европе
,
в
том
числе
СССР
,
Алгол
был
встречен
с
восторгом
,
появилось
множество
компиляторов
,
обобщений
и
расширений
языка
.
В
Советском
Союзе
сразу
же
пос
-
ле
первых
публикаций
по
Алголу
-60
начались
работы
по
созданию
компиляторов
для
наиболее
распространенной
и
самой
мощной
в
то
время
ЭВМ
М
-20.
Поскольку
эти
работы
имели
очень
большое
значение
для
становления
отечественных
школ
системного
про
-
граммирования
,
о
них
следует
рассказхать
подробнее
.
К
началу
60-
х
годов
в
стране
имелось
три
коллектива
програм
-
мистов
,
способных
решить
непростую
задачу
написания
компиля
-
тора
с
языка
высокого
уровня
.
Первый
располагался
на
родине
ма
-
шины
М
-20 —
в
ИТМ
и
ВТ
Академии
Наук
и
возглавлялся
Святос
-
лавом
Сергеевичем
Лавровым
.
Учитывая
ограниченные
возможно
-