Forth

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Forth
Парадигма: процедурна, рефлексивна, стек-орієнтована
Дата появи: 1970-ті
Творці: Чарльз Мур
Система типізації: Безтипова
Під впливом від: Lisp, APL
Вплинула на: PostScript, REBOL

Forth (Форт) — мова програмування та середовище для програмування, розроблена Чарльзом Муром (також відомим як Чак Мур) на початку 1970-х у Національній Радіообсерваторії США.

Forth є процедурною, стековою, рефлективною та безтиповою мовою програмування. Нові програми створюються шляхом розширення мови новими словами (позначення для підпрограм в Forth).

Найбільшого поширення Forth зазнав в застосуваннях вбудованих систем керування, в якості мови програмування інтелектуальних контролерів. Особливо ранні версії Forth мали малий розмір, генерували ефективний код.

Особливості[ред.ред. код]

У FORTH використовується стек для зберігання даних. Для запису операцій застосовується зворотна польська нотація. Наприклад, для обчислення виразу 5\cdot6+7 та виводу результату на термінал у FORTH необхідно записати:

5 6 * 7 + .

в цьому разі, 5 та 7 буде покладено в стек, операція * замість двох верхніх чисел в стеку покладе їх добуток, операція + замість двох верхніх чисел із стеку покладе їх суму, операція . надрукує верхнє число із стеку і видалить його.

Для цієї операції можна визначити підпрограму, або, в термінах ФОРТ, створити нове слово, яке бере зі стека три числа, виконує дії та залишає на стекові результат:

: MULTANDSUM ( Створити нове слово з назвою MULTANDSUM.
               Зміна стеку під час дії слова C,B,A ---> A*B+C )
 *           ( С,A*B)
 +           ( A*B+C)
;            ( Закінчити створення слова)

Використовуючи нове слово, вираз можна переписати так:

 7 5 6 MULTANDSUM .

Джерела[ред.ред. код]

  • Баранов С. Н., Ноздрунов Н. Р. Язык Форт и его реализации. — Л.: Машиностроение. Ленинградское отделение, 1988. — 157 с., ил. ISBN 5-217-00324-3

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