Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пн фев 09, 2026 01:20

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Forth over MediaWiki
СообщениеДобавлено: Пт янв 16, 2026 17:21 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1337
Благодарил (а): 4 раз.
Поблагодарили: 20 раз.
Чтобы обеспечить победоносное шествие языка программирования форт по всей планете предлагаю захватить вики-среду, навязав всем форт :))

Вводные
  • Вики-проекты работают на движке 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.
По мотивам дискуссии про помощь ИИ для форта)

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over MediaWiki
СообщениеДобавлено: Пт янв 16, 2026 17:57 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2165
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Victor__v писал(а):
Плюс, следует разузнать мнение общественности среди вики-деятелей. Возможно, овчинка не стоит выделки.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over MediaWiki
СообщениеДобавлено: Пт янв 16, 2026 18:11 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1337
Благодарил (а): 4 раз.
Поблагодарили: 20 раз.
KPG писал(а):
Victor__v писал(а):
Плюс, следует разузнать мнение общественности среди вики-деятелей. Возможно, овчинка не стоит выделки.

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

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

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over MediaWiki
СообщениеДобавлено: Пт янв 16, 2026 18:16 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 8084
Благодарил (а): 29 раз.
Поблагодарили: 148 раз.
Интересен общий смысл генерировать на Форт-DSL веб-страницы (или вызывать js). Потому что может быть и не для wiki полезнее и актуальнее, wiki-то может всех в целом устраивать.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over MediaWiki
СообщениеДобавлено: Пт янв 16, 2026 18:20 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 8084
Благодарил (а): 29 раз.
Поблагодарили: 148 раз.
Victor__v писал(а):
Даже не знаю, как эта информация мне поможет.

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

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over MediaWiki
СообщениеДобавлено: Пт янв 16, 2026 18:20 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1337
Благодарил (а): 4 раз.
Поблагодарили: 20 раз.
Hishnik писал(а):
Интересен общий смысл генерировать на Форт-DSL веб-страницы (или вызывать js). Потому что может быть и не для wiki полезнее и актуальнее, wiki-то может всех в целом устраивать.

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

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB