Планкалкюль

Материал из Википедии — свободной энциклопедии

Перейти к: навигация, поиск

Планкалкюль (нем. Plankalkül), — первый в мире высокоуровневый язык программирования, созданный немецким инженером Конрадом Цузе в 1945 году. В переводе на русский это название соответствует выражению «планирующее исчисление».

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

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

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

Работа в отрыве от других специалистов Европы и США привела к тому, что лишь незначительная часть его работы стала известной. Полностью работа Цузе была издана лишь в 1972 году. И вполне возможно, что если бы язык Планкалкюль стал известен раньше, пути развития компьютерной техники и программирования могли бы измениться.

Первый компилятор для языка Планкалкюль был создан в Свободном университете Берлина лишь в 2000 году, через пять лет после смерти Конрада Цузе.

Приведённый ниже пример показывает программу, которая вычисляет максимум для трёх переменных при помощи вызова функции max:

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

[править] Литература

  • 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. (нем.)
  • Konrad Zuse’s Plankalkül: The First High-Level «non von Neumann» Programming Language./ Giloi, Wolfgang, K. // IEEE Annals of the History of Computing, Vol. 19 — 1997. — No.2, http://csdl.computer.org/comp/mags/an/1997/02/a2017abs.htm(англ.)
  • Plankalkül: The First High-Level Programming Language and its Implementation / Rojas, Raúl et al., http://www.zib.de/zuse/Inhalt/Programme/Plankalkuel/Plankalkuel-Report/Plankalkuel-Report.htm (англ.)
  • Язык компьютера = Understanding computers : Software : Computer Languages(рус.); Пер. с англ. С. Е. Морковина и В. М. Ходукина; Под ред. и с пред. В. М. Курочкина — Москва : Мир, 1989. — 240 с., ил. ISBN 5-03-001148-X

[править] Ссылки