Forth
https://fforum.winglion.ru/

Forth over MediaWiki
https://fforum.winglion.ru/viewtopic.php?f=40&t=3419
Страница 1 из 1

Автор:  Victor__v [ Пт янв 16, 2026 17:21 ]
Заголовок сообщения:  Forth over MediaWiki

Чтобы обеспечить победоносное шествие языка программирования форт по всей планете предлагаю захватить вики-среду, навязав всем форт :))

Вводные
  • Вики-проекты работают на движке MediaWiki
  • Работающий в движке язык шаблонов (макросы для бедных) откровенно хренов.
  • В стандартную поставку MediaWiki входит скриптовый движок Lua.
  • Напрямую писать скрипты для вики-сайта с помощью Lua нельзя. Те же самые макросы на Lua делаются через обвязку.

Исходя из этих вводных, предполагаем, что на вики-сайтах отсутствует вменяемый скриптовый язык. Его нишу может занять форт.

Без лишних танцев с бубном реализовать форт-машину мы можем на том же Lua. Для нас главное вывести скриптинг из закромов на уровень вики-текста.

Недостатки такого решения:
  • Мы не можем использовать некоторые комбинации и специальные символы: {{ }} |
  • Результат скрипта будет кэширован. Динамические свистопляски возможны только с лагом в 10-15 часов)

Встроенный скрипт на форте будет выглядеть как-то так:
Код:
{{forth|script=

'style' var? \\ передана ли в скрипт именнованная переменная с именем style
if
   'style' get \\ если да, кладём на стек значение переменной
else
   'font-color:green' \\ если нет, кладём на стек строку
then

value style-link \\ создаём переменную и записываем туда значение со стека

L2
if
   L1
   '<span style="' .. style-link .. '">' .. L2 .. '</span>'
   create-link
else
   `[[<span style="` .. style-link .. `">` .. L1 .. '</span>]]'
then
\\ Ниже идут переменные, которые будут использоваться в скрипте
|переменная 1
|переменная 2
}}


Этот код должен красить ссылку в вики-тексте в зелёный цвет, если не выбран какой-то другой цвет/стиль. Счас у меня это реализовано на языке шаблонов, но решение на нём хрен поменяешь и масштабируешь.

Почему именно forth?
Простота реализации – создать интерпретатор форта можно на чём угодно.

Требования к реализации форта
Требование всего одно – простота понимания порождаемого кода. Без этого затея не имеет смысла. Пользователю нужны относительно простые и наглядные манипуляции с данными. Переусложнение синтаксиса превратит форт в бесполезную надстройку. Человеку нет смысла учить ещё один сложный ЯП, если можно изучить 2 базовых и сбацать что-то корректное уже на них.

Необходимость форта
Под вопросом, на самом деле. Как альтернатива языку шаблонов может сгодиться вообще что угодно. Другое дело, что форт проще всего реализовать.

Плюс, следует разузнать мнение общественности среди вики-деятелей. Возможно, овчинка не стоит выделки.

P. S.
По мотивам дискуссии про помощь ИИ для форта)

Автор:  KPG [ Пт янв 16, 2026 17:57 ]
Заголовок сообщения:  Re: Forth over MediaWiki

Victor__v писал(а):
Плюс, следует разузнать мнение общественности среди вики-деятелей. Возможно, овчинка не стоит выделки.

Вроде как у Черезова на http://wiki.forth.org.ru/ Форт, но подробностей нет.

Автор:  Victor__v [ Пт янв 16, 2026 18:11 ]
Заголовок сообщения:  Re: Forth over MediaWiki

KPG писал(а):
Victor__v писал(а):
Плюс, следует разузнать мнение общественности среди вики-деятелей. Возможно, овчинка не стоит выделки.

Вроде как у Черезова на http://wiki.forth.org.ru/ Форт, но подробностей нет.

Даже не знаю, как эта информация мне поможет.

Автор:  Hishnik [ Пт янв 16, 2026 18:16 ]
Заголовок сообщения:  Re: Forth over MediaWiki

Интересен общий смысл генерировать на Форт-DSL веб-страницы (или вызывать js). Потому что может быть и не для wiki полезнее и актуальнее, wiki-то может всех в целом устраивать.

Автор:  Hishnik [ Пт янв 16, 2026 18:20 ]
Заголовок сообщения:  Re: Forth over MediaWiki

Victor__v писал(а):
Даже не знаю, как эта информация мне поможет.

Очень даже поможет. За период 2012 - 2025 годы 6 тем, на все темы 1 ответ. То есть такое - НЕ РАБОТАЕТ. :) Значит, можно проанализировать принципиальные ошибки и учесть их.

Вот целиком идея "макропрограммирования в веб" с возможностями скриптования, управляющих структур и т.п. - интересна.

Автор:  Victor__v [ Пт янв 16, 2026 18:20 ]
Заголовок сообщения:  Re: Forth over MediaWiki

Hishnik писал(а):
Интересен общий смысл генерировать на Форт-DSL веб-страницы (или вызывать js). Потому что может быть и не для wiki полезнее и актуальнее, wiki-то может всех в целом устраивать.

Ну... это не мой случай. Тут про другое

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