Interested Article - Планкалкюль
- 2020-12-16
- 1
Планкалкюль ( нем. Plankalkül — «запланированные вычисления»), — первый в мире высокоуровневый язык программирования , созданный немецким инженером Конрадом Цузе в 1943—1945 году и впервые опубликованный в 1948 году. В переводе на русский это название соответствует выражению «планируемые вычисления» или «запланированные вычисления», то есть «программирование» .
Язык разрабатывался как основное средство для программирования компьютера Z4 , однако был пригоден и для работы с другими похожими на него вычислительными машинами .
История написания
Несмотря на то, что разработка способов программирования проектируемых им вычислительных машин велась изобретателем в военное время, после окончания Второй мировой войны он оказался лишён своей прежней материально-технической базы и, как следствие, возможности осуществления опытно-конструкторских работ , которые он вёл с 1936 года, а с учётом того, что союзническая оккупационная администрация не позволяла проведения каких-либо несанкционированных научно-практических исследований, учёный перешёл к сугубо теоретическим , фундаментальным исследованиям . Одним из направлений этих исследований стал язык программирования , который был назван его создателем «Планкалкюль» .
Технические свойства и возможности
Набор поддерживаемых функций
Планкалкюль поддерживал операции назначения, вызов подпрограмм , условные операторы , итерационные циклы , арифметику с плавающей запятой, массивы , иерархические структуры данных, утверждения, обработку исключений и многие другие вполне современные средства языков программирования .
Сопроводительная документация
Цузе описал возможности языка Планкалкюль в отдельной брошюре. Там же он описал возможное применение языка для сортировки чисел и выполнения арифметических операций . Кроме того, Цузе составил 49 страниц программ на Планкалкюле для оценки шахматных позиций. Позже он писал, что ему было интересно проверить эффективность и универсальность Планкалкюля в отношении шахматных задач.
Синтаксис
Оригинальная нотация была двумерной. Для первой реализации в 1990-х была разработана линейная нотация. Вот пример присваивания A[5] = A[4]+1
| A + 1 => A
V| 4 5
S| 1.n 1.n
Здесь V - это строка для индексов, S - строка для задания типов данных, 1.n - обозначает целое число размером n бит. Следующий пример показывает программу (в линейной записи), которая вычисляет максимум из трёх переменных вызовом функции max3:
P1 max3 (V0[:8.0],V1[:8.0],V2[:8.0]) → R0[:8.0]
max(V0[:8.0],V1[:8.0]) → Z1[:8.0]
max(Z1[:8.0],V2[:8.0]) → R0[:8.0]
END
P2 max (V0[:8.0],V1[:8.0]) → R0[:8.0]
V0[:8.0] → Z1[:8.0]
(Z1[:8.0] < V1[:8.0]) → V1[:8.0] → Z1[:8.0]
Z1[:8.0] → R0[:8.0]
END
Обнародование
Работа в отрыве от других специалистов Европы и США привела к тому, что лишь незначительная часть его работы стала известной. Полностью работа Цузе была издана лишь в 1972 году . И вполне возможно, что если бы язык Планкалкюль стал известен раньше, пути развития компьютерной техники и программирования могли бы измениться.
Применение
Сам Цузе не создал каких-либо программно-аппаратных средств под реализацию разработанного им языка. Первый компилятор языка Планкалкюль (для современных компьютеров) был создан в Свободном университете Берлина лишь в 2000 году , через пять лет после смерти Конрада Цузе.
Примечания
- Название языка не является формой скрытого воздания почестей Максу Планку , а всего-навсего комбинацией слов "plan" и "kalkül".
- Перевод слова Plankalkül на сайте «Толстый словарь» —
- Zuse, Konrad . The Plankalkül. (англ.) — München/Wien: R. Oldenbourg Verlag, 1989. — P.5 — 244 p. — (Berichte der Gesellschaft für Mathematik und Datenverarbeitung; Nr. 175) — ISSN 0533-9480 — ISBN 3-486-21288-5 .
Литература
- Zuse, Konrad (1948/49). «Über den allgemeinen Plankalkül als Mittel zur Formulierung schematisch-kombinativer Aufgaben». Arch. Math. 1, pp. 441–449, 1948/49.
- Der Plankalkül. / Zuse, Konrad / Gesellschaft für Mathematik und Datenverarbeitung. / BMBW — GMD — 63 — 1972. — Nr.63. (нем.)
- / Giloi, Wolfgang, K. // IEEE Annals of the History of Computing, Vol. 19 — 1997. — No.2, (англ.) (недоступная ссылка)
- , (англ.)
- Zuse, Konrad. Nr. 63, BMBW — GMD — 63, 1972. — полный текст рукописи 1945 года (нем.)
Ссылки
- (нем.)
- (нем.)
- (англ.)
- 2020-12-16
- 1