Forth
http://fforum.winglion.ru/

Трансляция в Forth
http://fforum.winglion.ru/viewtopic.php?f=8&t=3113
Страница 1 из 1

Автор:  fplab [ Пн янв 23, 2017 23:01 ]
Заголовок сообщения:  Трансляция в Forth

Всем доброго вечера!

Известно, что многие языки программирования транслируются в код определенной стековой машины (далеко ходить не надо, например, Java и C#). Иногда языки транслируются в код другого языка программирования. Кажется, есть трансляторы, которые транслируют Pascal в С. Или, к примеру, GWT транслирует Java в JavaScript.
В принципе ничто не мешает транслировать точно также код в Forth. Или я не прав?

Автор:  gudleifr [ Пн янв 23, 2017 23:48 ]
Заголовок сообщения:  Re: Трансляция в Forth

Конечно, ненужность этого очевидна, но можно разобраться.
Современные компиляторы переводят грамматически-значимые кусочки текста программы в некие стандартные ассемблерные конструкции. И нет никаких видимых препятствий к прописыванию этих конструкций в СЛОВАРЬ в виде СЛОВ. Формально, это будет FORTH.

Автор:  fplab [ Вт янв 24, 2017 00:07 ]
Заголовок сообщения:  Re: Трансляция в Forth

Спасибо!

gudleifr писал(а):
Конечно, ненужность этого очевидна

Ну, с этим можно поспорить :) Парится же народ с трансляцией в JVM: https://en.wikipedia.org/wiki/List_of_JVM_languages
А спецификация JVM весьма мудреная. Forth-у до нее как до Луны одним способом.

Автор:  gudleifr [ Вт янв 24, 2017 00:21 ]
Заголовок сообщения:  Re: Трансляция в Forth

fplab писал(а):
Ну, с этим можно поспорить.
Получается, перевести с языка формализованных вычислений на язык попутных размышлений.

Автор:  KPG [ Вт янв 24, 2017 06:26 ]
Заголовок сообщения:  Re: Трансляция в Forth

fplab писал(а):
В принципе ничто не мешает транслировать точно также код в Forth. Или я не прав?

Си в Forth транслировали в проектах (и на этом форуме)
Вопрос в эффективности "компиляции"дальнейшего Форт кода (если это существенно)
Могут быть сложности с "согласованием" семантических уровней связок ЯзыкN -> Форт

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/