Ответ 1
factorcode.org, concatenative.org и tinyvid.tv работают от Furnace, Factor web сервера и фреймворка.
Каковы некоторые реальные проекты, выполненные в конкатенативных языках, например Forth, Factor, Joy и т.д.?
factorcode.org, concatenative.org и tinyvid.tv работают от Furnace, Factor web сервера и фреймворка.
PostScript является конкатенативным, и, очевидно, существует огромное количество приложений PostScript. Это просто не язык программирования общего назначения.
Существует несколько устаревший, но очень классный Quartus Forth для Palm, который позволил полностью скомпилировать разработку приложений на устройстве Palm (Forth, как минималистский язык, хорошо работает в этих обстоятельствах). Их главная страница содержит несколько приложений для Palm.
На этой странице FIG есть список в основном встроенных проектов, включая ссылку на очень крутое использование Forth на NASA.
Я встретил парня на конференции Apple в Квинсленде примерно в 1991 году, который продал приложение для планирования дорог, написанное в MacForth.
Кристофер Диггинс говорил о своем языке Cat, который используется внутри Microsoft, чтобы помочь оптимизировать компиляторы, но я не знаю, получилось ли это куда угодно.
Я подозреваю, что PowerMOPS (преемник Неона) может ускользнуть от определения конкатенативного, потому что его большая сделка заключается в добавлении объектной ориентации, что подразумевает примеры.
Взгляните на FORTH Inc, Они перечисляют несколько проектов, которые они и их клиенты сделали, используя их FORTH.
Как писал Грег, приписка - это пример мамонта.
Конкатенативные языки появляются повсюду, совершенно естественно, из-за тривиального характера языковой среды исполнения. Это любимый для многих прошивок: я впервые столкнулся с Forth "во плоти" в загрузчике для Sun Sparcstation. Он обеспечивает прошивку для OLPC.
Ocaml parent, Caml был основан на реализации семантики функционального программирования как категориальной абстрактной машины (CAM в Caml).
Bibtex использует конкатенативный язык для компиляции файлов стилей.
Часть прошивки на Mac (по крайней мере, в старых моделях PowerPC) была написана в Forth.
Смотрите: http://osxbook.com/book/bonus/ancient/whatismacosx/arch_boot.html
Протокол биткойнов и большинство других криптоконов использует сценарии pubkey и скрипты подписи для проверки транзакций:
Скрипты Pubkey и скрипты подписи объединяют пабликвы и подписи secp256k1 с условной логикой, создавая программный механизм авторизации.
Эти сценарии написанные на конкатенативном языке:
Язык script - это язык, основанный на языке Forth, который намеренно предназначен для того, чтобы быть апатридом, а не полным. Безгражданство гарантирует, что после того, как транзакция будет добавлена в цепочку блоков, нет условия, которое делает ее неизменно неизменной. Turing-неполнота (в частности, отсутствие циклов или gotos) делает язык script менее гибким и более предсказуемым, что значительно упрощает модель безопасности.