Forth: відмінності між версіями

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
[перевірена версія][перевірена версія]
Вилучено вміст Додано вміст
м оформлення, правопис
Виправлено джерел: 1; позначено як недійсні: 0. #IABot (v2.0beta15)
Рядок 82: Рядок 82:
* [http://dmoz.org/Computers/Programming/Languages/Forth/ Сторінка Forth на dmoz.org]
* [http://dmoz.org/Computers/Programming/Languages/Forth/ Сторінка Forth на dmoz.org]
* [http://www.mpeforth.com/books.htm Перелік книжок про Forth], деякі доступні в інтернеті.
* [http://www.mpeforth.com/books.htm Перелік книжок про Forth], деякі доступні в інтернеті.
* [http://www.dataman.ro/dforth/ Delta Forth .NET], Forth компілятор для платформи [[.NET]], [[Mono]]
* [https://web.archive.org/web/20070407183932/http://www.dataman.ro/dforth/ Delta Forth .NET], Forth компілятор для платформи [[.NET]], [[Mono]]


{{Compu-lang-stub}}
{{Compu-lang-stub}}

Версія за 13:04, 18 червня 2019

Forth
Парадигма процедурна, рефлексивна, стек-орієнтована
Дата появи 1970-ті
Творці Чарльз Мур
Розробник Charles H. Moored
Система типізації Безтипова
Під впливом від Lisp, APL
Вплинула на PostScript, REBOL
Звичайні розширення файлів .fth, .fs, .4th, .fb, .f або .forth
Вебсайт forth-standard.org

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

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

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

Історія

Мова программування Forth була створена Чарльзом Муром наприкінці 1960-х — початку 1970-х років. Перша реалізація мови Forth з'явилася у 1971 році, під час роботи Мура в Національній радіоастрономічній обсерваторії.

Нова мова була прийнята як основна в Американському астрономічному товаристві. Чарльз Мур та його коллега Елізабет Ратер заснували компанію FORTH, Inc і на протязі десятиліття портували мову на різні платформи.

Наприкінці 1970-х років, програмісти, що були зацікавлені у ровитку мови, створили FORTH Interest Group (FIG). Ця група розробила концепцію FIG Forth Model, що являє собою загальнодоступну форт-систему і може бути легко перенесена на популярні комп'ютерні архітектури. Часто цю систему розлядають як перший неофіційний стандарт мови.

Особливості

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

5 6 * 7 + .

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

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

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

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

 7 5 6 MULTANDSUM .

Реалізація

Завдяки простоті віртуальній машині Форта, відсутності еталонної реалізації існує безліч втілень цієї мови майже для всіх платформ (POSIX, Microsoft Windows, Mac OS X), а також вбудованих систем.

Реалізації сумісні із стандартом 1994 ANS Forth[1]:

  • Gforth — портативна реалізація ANS Forth проекту GNU Project[джерело?].
  • SwiftForth — інтерактивне середовище розробки (IDE) програм на Форті для популярних платформ (Windows, Linux та OS X для процесорів сімейству i386) компанії Forth, Inc, розробника мови програмування[2].
  • VFX Forth — високо-оптимізуючий компілятор з Форта[3].
  • Open Firmware — завантажувальник та BIOS стандарт, заснований на ANS Forth.
  • SP-Forth — транслятор та компілятор для середовищ Windows та Linux. Має повну підтримку вимог стандарту ANS'94, оптимізуючий компілятор та численні бібліотеки[4].
  • 51-FORTH — реалізація для мікроконтролера Intel 8051.

Див. також

Діалекти

Апаратне обладнання

Примітки

  1. https://www.taygeta.com/forth/dpans.html Специфікація стандарту DPANS94
  2. http://www.forth.com/
  3. About Forth » mpe - MicroProcessor Engineering. MPE new website. Процитовано 25.10.2016.
  4. http://spf.sourceforge.net/

Джерела

  • Баранов С. Н., Ноздрунов Н. Р. Язык Форт и его реализации. — Л.: Машиностроение. Ленинградское отделение, 1988. — 157 с., ил. ISBN 5-217-00324-3
  • Лео Броуди Начальный курс программирования на языке Форт — Перевод с английского В. А. Кондратенко Под редакцией Б. А. Кацева, В. А. Кириллина Предисловие И. В. Романовского — М. «ФИНАНСЫ И СТАТИСТИКА», 1990

Посилання