А, как быть со всеми разными приложениями/программами, которые свободно читают/импортируют данные из сторонних программ сходной функциональности, но как правило сохраняют их уже в своём формате.
Что они нарушают?
P.S. Для калькулятора HP-71B (близок по возможностям и комплектации к отнесению к миникомпьютерам) был в составе его и Forth. Дата выпуска этого калькулятора 1984г.
Форт так в базисе своих устоявшихся возможностей спроектирован, но ничего не мешает сделать из него произвольный DSL на его ядре (как и Lisp на Форт есть) оставаясь ещё в каком то базисе его понимания для использования. В дизайне Форт системы и стандарта языка много чего существует и для, к примеру, применения методик метапрограммирования.
Есть возможность и к многим значениям на стеке сделать слова применения какой то операции, но при этом или задавать количество операндов к обработке на стеке или маркировать глубину параметров или ещё как то применяя к примеру слово DEPTH (количество элементов на стеке).
Форт достаточно неплохо реализуется и работает и не на стековых CPU в использовании своей спецификации.
P.S. Вероятно Форт где то применяется, если, к примеру, есть и железные контроллеры с поддержкой стековой модели вычислений и в виде реализации на FPGA, а также много Форт систем разной направленности и применимости сделаны и делаются как энтузиастами так и в представлении от некоторых фирм. В большей степени, конечно, для использования в составе контроллеров общего применения представленными на рынке, но и в создании программ для ПК и Мини-ПК он применяется под разными ОС (операционными системами Linux, Windows,… KolibriOS)
В качесте языка реализации Форт можно встретить и достаточно экзотичные инструменты на том же Github при поиске по слову Forth.
Ага, а нейросети, например, очень большое зло, как и разные сервисы автоматических переводов Гугла.
Этоже и лингвисты не так востребованными могут оказаться и переводчики,
а книжные издательства при переводе литературы и на них смогут сэкономить.
Как будто у обычных работников поймешь, что скрывается под записью «программист» в трудовой.
У меня несколько записей в трудовой по работе программистом, начиная от техника-программиста, с «завершением» этой деятeльности лет 10-ть назад,
но мне так и не стало понятным насколько современные понятия пришедшие в сферу программирования служат облегчению процесса создания ПО. :)
@" Итого, если в LISP скобка — это базовый эзотерический символ, а в прочих языках соблюдается некий баланс, то в Форте вся эзотерика строится на отсутствии скобок в записи выражений. Мегаследствие: все различия глобальных концептов в программировании определяются числом скобок в языке! А не всякими там ООП, замыканиями и прочими коротящими мозги штуками." :) Forth on Lurkmore
т.е. «резюмируя» Ваш проект на Дельфи был какой то «местной» разработкой и не представлял какой то угрозы на сложившемся рынке продажи подобного ПО?
(и не важно было как этот проект продавать на рынок)
Как ни «странно», но на Хабр есть Хаб по Haxe («эпизодически» пополняемый статьями одним пользователем, в последнее время, и количеством подпичиков — 759)
P.S. Не являясь пользователем Haxe мне сложно перенести примеры из кукбоок на ресурс rosettacode.org.
Современные Форт системы реализуют по разному и вплоть до нативной компиляции всего кода с оптимизациями разной степени удачности, но позволяющими и Форт коду быть быстрым при исполнении в модели процессоров с регистровой организацией команд. Вот подборка книг по Форт и на русском языке которые были изданы на рубеже 1990 годов
Современных книг по Форт на русском языке нет, но в Форт особых перемен и нет (последний стандарт 94г.) и существующие реализации Форт в той или иной степени следуют стандарту 94года или стандарту от IEEE.
Да, если используется обычная форма CALL вызовов, но они (стэки) не в одном и том же месте и это важно.
P.S. И, кстати, если брать Форт с реализацией в виде Косвенного шитого кода, то там фактически «возврат» из слова — это фактически вызов следующего слова до тех пор пока раскрутка высокоуровневого Форт кода не дойдёт до примитивов написанных на языке ассемблера и цепочка начнёт сворачиваться в обратном направлении. :)
Первый раз познакомился с системой команд PDP-11 (Электроника-60) на обслуживании и ремонте станков с ЧПУ в районе 200х года, а до этого видел ДВК-ки в институте и тогда уже считал их чем то раритетным.
А, далее даже посчастливилось попраграмировать по работе уже процессор K1806ВМ2 и это было достаточно познaвательно. :)
Чем больше, тем лучше и желательно с их описанием
и если есть кукбук, то не должно (или должно) возникнуть сложностей с их размещением и в рамках этого ресурса и возможно со ссылками и в самой «Книге рецепов для IT повара на Hexe»
А, она в нём в целом не нужна т.к. на стеке лежат числа в размере 1-й ячейки хранения принятой в том или ином Форте 16/32/64 а возможность по типизации их предоставляется программисту по применению слов с разными именами ( +, D+ ...) оперирующими сколько, как и в каком размере оперировать ими на стэке.
Если, программист, по определению не даун, то это им легко должно легко пониматься, а если что пошло не так, то последствия его действий не заставят себя ждать (Форт упадёт и/или выведет информацию об эксепшене)
Для чисел плавающей арифметики есть отдельный стэк со словами подобными F+, F-…
P.S. Конечно, в более серьёзном Форт инструментарии может в процессе трансляции программы выводится и проверяться соответствие типов данных и операций применённых к ним, но обычно на это все использующие Форт обычно кладут «болт» и особо не парятся :)
Хотя есть варианты Форт -типа StrongForth где разработчики его стали контролировать типизацию в их Форт.
Если интересен более продвинутый «Форт», то есть например Factor — язык программирования. где на стэк помещаются уже более комплексные сущности чем числа.
А, как быть со всеми разными приложениями/программами, которые свободно читают/импортируют данные из сторонних программ сходной функциональности, но как правило сохраняют их уже в своём формате.
Что они нарушают?
Вот есть классическая статья как на Форт можно сделать ассемблер.
Brad Rodriguez: Как написать свой (кросс-)ассемблер
Отчасти это так, но у МК-61 нет полноценного стека данных как у Форт и других возможностей Форт.
Но, тем не менее, и для продолжения ПМК - МК161 умельцами сделан Форт (eForth) на ПМК системе команд https://habr.com/ru/articles/452398/
P.S. Для калькулятора HP-71B (близок по возможностям и комплектации к отнесению к миникомпьютерам) был в составе его и Forth. Дата выпуска этого калькулятора 1984г.
Телеграм канал - МК61 МК52 MK85 Развиваем легендарные советские программируемые калькуляторы
Телеграм канале по Форт
[
TF] Форт и общение фортеровОбсуждение конкатенативных языков программирования и тематическое общение программистов.Действующий форум по Forth (Форт) и другим саморасширяющимся системам программирования
Немного видео контента по Форт есть и на русском языке, но англоязычного контента гораздо больше как регулярно проводимые Zoom тусовки Forth2020
https://www.youtube.com/watch?v=C9sLcsd8QT4
P.S. Отсюда https://gamedev.ru/flame/forum/?id=263400&page=31
Форт так в базисе своих устоявшихся возможностей спроектирован, но ничего не мешает сделать из него произвольный DSL на его ядре (как и Lisp на Форт есть) оставаясь ещё в каком то базисе его понимания для использования. В дизайне Форт системы и стандарта языка много чего существует и для, к примеру, применения методик метапрограммирования.
Есть возможность и к многим значениям на стеке сделать слова применения какой то операции, но при этом или задавать количество операндов к обработке на стеке или маркировать глубину параметров или ещё как то применяя к примеру слово DEPTH (количество элементов на стеке).
Форт достаточно неплохо реализуется и работает и не на стековых CPU в использовании своей спецификации.
P.S. То, что он в этом и другом варианте как проекты https://github.com/JohnEarnest/Mako , jeforth.3we реализованы на JS нет ничего страшного т.к. сферы применения Форт достаточно разнообразны. К примеру на базисе jeForth сделан и чатАИ бот со встроенным Форт языком https://github.com/hcchengithub/ChatFORTH
P.S. Вероятно Форт где то применяется, если, к примеру, есть и железные контроллеры с поддержкой стековой модели вычислений и в виде реализации на FPGA, а также много Форт систем разной направленности и применимости сделаны и делаются как энтузиастами так и в представлении от некоторых фирм. В большей степени, конечно, для использования в составе контроллеров общего применения представленными на рынке, но и в создании программ для ПК и Мини-ПК он применяется под разными ОС (операционными системами Linux, Windows,… KolibriOS)
В качесте языка реализации Форт можно встретить и достаточно экзотичные инструменты на том же Github при поиске по слову Forth.
Телеграм канал по Форт
Вопросы по Forth в qna.habr.com
Этоже и лингвисты не так востребованными могут оказаться и переводчики,
а книжные издательства при переводе литературы и на них смогут сэкономить.
можно рекомендовать и к увлекательному начальному прочтению также
ЛЕО БРОУДИ «СПОСОБ МЫШЛЕНИЯ — ФОРТ ЯЗЫК И ФИЛОСОФИЯ ДЛЯ РЕШЕНИЯ ЗАДАЧ
Или это «сложно/нецелесобразно»?
У меня несколько записей в трудовой по работе программистом, начиная от техника-программиста, с «завершением» этой деятeльности лет 10-ть назад,
но мне так и не стало понятным насколько современные понятия пришедшие в сферу программирования служат облегчению процесса создания ПО. :)
Forth on Lurkmore
P.S. @ «В каждой шутке, есть доля шутки»
(и не важно было как этот проект продавать на рынок)
P.S. Не являясь пользователем Haxe мне сложно перенести примеры из кукбоок на ресурс rosettacode.org.
Вот подборка книг по Форт и на русском языке которые были изданы на рубеже 1990 годов
Современных книг по Форт на русском языке нет, но в Форт особых перемен и нет (последний стандарт 94г.) и существующие реализации Форт в той или иной степени следуют стандарту 94года или стандарту от IEEE.
P.S. И, кстати, если брать Форт с реализацией в виде Косвенного шитого кода, то там фактически «возврат» из слова — это фактически вызов следующего слова до тех пор пока раскрутка высокоуровневого Форт кода не дойдёт до примитивов написанных на языке ассемблера и цепочка начнёт сворачиваться в обратном направлении. :)
P.S. Но, скорее всего, вероятно подразумевалось, например, Лисп, Пролог?
А, далее даже посчастливилось попраграмировать по работе уже процессор K1806ВМ2 и это было достаточно познaвательно. :)
и если есть кукбук, то не должно (или должно) возникнуть сложностей с их размещением и в рамках этого ресурса и возможно со ссылками и в самой «Книге рецепов для IT повара на Hexe»
Если, программист, по определению не даун, то это им легко должно легко пониматься, а если что пошло не так, то последствия его действий не заставят себя ждать (Форт упадёт и/или выведет информацию об эксепшене)
Для чисел плавающей арифметики есть отдельный стэк со словами подобными F+, F-…
P.S. Конечно, в более серьёзном Форт инструментарии может в процессе трансляции программы выводится и проверяться соответствие типов данных и операций применённых к ним, но обычно на это все использующие Форт обычно кладут «болт» и особо не парятся :)
Хотя есть варианты Форт -типа StrongForth где разработчики его стали контролировать типизацию в их Форт.
Если интересен более продвинутый «Форт», то есть например Factor — язык программирования. где на стэк помещаются уже более комплексные сущности чем числа.