Планкалкюль

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Планкалкюль
Парадигма:Процедурна
Дата появи:1948 - concept first published
Творці:Конрад Цузе
Основні реалізації:Plankalkül-Compiler Вільний університет Берліна в 2000
Під впливом від:Begriffsschrift
Вплинула на:Superplan Хайнца Рутисхаузера

Планкалкюль (нім. Plankalkül — обчислення планів),[1] — перша в світі мова програмування високого рівня, створена німецьким інженером Конрадом Цузе в 1943-45 році і вперше опублікований в 1948 році. У перекладі на українську ця назва відповідає виразу «яка планує числення».

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

Історія написання[ред. | ред. код]

Незважаючи на те, що розробка способів програмування проектованих ним обчислювальних машин велася винахідником у воєнний час, після закінчення Другої світової війни він виявився позбавлений своєї колишньої матеріально-технічної бази і, як наслідок, можливості здійснення дослідно-конструкторських робіт, які він вів з 1936 р, а з урахуванням того, що союзницька окупаційна адміністрація не дозволяла проведення будь-яких несанкціонованих науково-практичних досліджень, учений перейшов до суто теоретичних, фундаментальних досліджень (ФД). Одним з напрямків цих ФД і стала мова програмування, яка була названою його творцем «Планкалкюль».[2]

Технічні властивості і можливості[ред. | ред. код]

Набір підтримуваних функцій

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

Супровідна документація[ред. | ред. код]

Цузе описав можливості мови Планкалкюль в окремій брошурі. Там же він описав можливе застосування мови для сортування чисел і виконання арифметичних операцій. Крім того, Цузе склав 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 році, через п'ять років після смерті Конрада Цузе.

Примітки[ред. | ред. код]

  1. Назва мови не є формою прихованого вшанування Максу Планку, а всього-на-всього комбінацією слів "plan" і "kalkül".
  2. 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.

Література[ред. | ред. код]

Посилання[ред. | ред. код]