Добрый день, Бойко!
Я где-то встречал реализацию Рефала в виде DSL для C++, но сейчас я даже не
помню, как загуглить. Выглядело это примерно так:
RefalFunction Fab;
Fab
[ 'A' + V("ex") >> 'B' + CALL(Fab, V("ex")) ]
[ V("sx") + V("ey") >> V("sx") + CALL(Fab, V("ey")) ]
[ B( V("ex") ) + V("ey") >> B( CALL(Fab, V("ex")) ) + CALL(Fab, V("ey")) ]
[ EMPTY >> EMPTY ];
Возможно, другие подписчики с этим фактом знакомы, помнят его лучше и могут
скинуть ссылку.
С уважением,
Александр Коновалов
-----Original Message-----
From: Boyko Bantchev <[email protected]>
Sent: Wednesday, August 8, 2018 5:37 PM
To: [email protected]
Subject: Re: Реализация REFAL/js в online варианте (Google Cloud/VDS/standalone
javascript)
Здравствуйте все!
Хотя нет прямой связи с темой о META II, но хотелось сказать следующее.
Мне давно кажется, что было бы очень полезным реализовать Рефал или, скажем,
какой-то идейный костяк Рефала, в виде программной библиотеки и без навязывания
конкретного синтаксиса. Полезность такого подхода представляется мне по
крайней мере в таких направлениях:
• популяризация идей Рефала и методов программирования с его помощью;
• сочетание этих идей и методов с имеющимися в других языках;
в частности, изучение самой этой сочетаемости;
• широкий круг применений в решении текущих задач практики;
• экспериментирование новыми синтаксическими формами для Рефала;
• экспериментирование новыми библиотечными функциями для самого Рефала;
• экспериментирование новыми идеями в семантике и в реализации Рефала.
Если реализация — на JavaScript-е, то немаловажными достоинствами являются и
независимость от ОС, и прямая применимость к вебпрограммированию. Что не
исключает и самостоятельное и «серверное» применение — есть же Node.js.