Да наверно можно пользоваться любым из упомянутых, хотя лично я, конечно
же, привержен рефалу-6, как его соавтор в какой-то мере. Документацию
(подробное описание входного языка с примерами) можно посмотреть на сайте
refal.net:
http://refal.net/~arklimov/refal6/manual.htm
Там есть и дистрибутив, но если начинать пользоваться, то лучше, наверно,
брать у меня.
К сожалению, все никак не дойдут руки на github выложить.
Готовый вариант есть для Windows-32, если нужен для других ОС, надо будет
компилировать и собирать с исходников на С.
Любителям Java могу рекомендовать версию Refal-Java. Входной язык там
практически такой же, добавлены межмодульные связи в стиле Java. Скорость
выше в 2-3 раза. И "машинные операции" легко добавлять. Но есть проблемы:
например, стек может переполниться.
И по большому счету им еще никто не пользовался.
А у варианта на С под виндами есть пока два полноценных пользователя: я и
И.Щенков. Еще в прошлом году ошибки, обнаруженные Игорем, исправлял.
По применению к моделированию СБИС не понятно, что тут может быть - не
логику же потактовую  на рефале крутить! Еще понимаю, если компилятор с
языка специфического делать, да?
Аркадий

пт, 1 февр. 2019 г. в 16:32, Eisymont Leonid verger-lk_AT_yandex.ru <
refal@botik.ru>:

> Аркадий, интересно было бы посмотреть, чем сейчас реально можно
> пользоваться.
> Есть ли опыт использования новых Рефалов в больших проектах типа тех, где
> использовался ранее Рефал-2. Я совершенно серьезно говорил о том, что
> вероятность применения Рефала в работах по созданию новых СБИС на этапах
> моделирования и отработки архитектуры или микроархитектуры , а также ПО
> достаточно высока. Я сейчас в Модуле и Кванте, возможны очень крупные
> совместные работы, вижу, что необходимость в этом назревает.
> В общем, здравствуйте опять 70-80-е годы.
> Л.Эйсымонт
> PS - Рефал-2 у нас сохранился с очень богатой библиотекой, в нем даже
> доделали некоторые примитивы MPI через машинные операции, есть еще
> экспериментальная реализация Александра Фролова с динамическим
> распараллеливанием конкретизаций (это все НИЦЭВТ уже был начало 2000-х). На
> этой реализации мы хорошо "руку набили".
>
> 01.02.2019, 16:14, "Arkady Klimov arkady.klimov_AT_gmail.com" <
> refal@botik.ru>:
>
> Интересно услышать, что практикующие (практиковавшие в прошлом)
> рефал-программисты считают сложным в новых версиях языка (5-6-плюс-7).
> Вложенные блоки? Откаты? Условия?
> Сам я считаю лишними только разные экзотический элементы вроде
> отсечений-заборов, отрицаний, $iter, двойного двоеточия.
> Откаты-блоки-условия считаю полезными.
> Откатность явная или неявная? Можно спорить, это также зависит от
> семантики "=".
> Форматы  функций? Сам не использую, оценить не могу. В рефале-6 их нет. Но
> для более эффективного интерфейса с С наверно полезны.
> Анонимные функции не считаю полезными, на мой взгляд они даже вредны -
> толкают на плохой стиль (потакают экономить на придумывании имен и понятий,
> тогда как хорошие имена и понятия облегчают читабельность и дальнейшее
> сопровождение). Понимаю, что есть и другие мнения.
>
> Александр правильно подметил, что в новых рефалах нет спецификаторов,
> которые были в рефале-2. Мне кажется, они тоже подталкивают на не очень
> хороший стиль, когда вместо отдельно описанного лексера, распознавание
> лексем разбросано по всему парсеру. В этом смысле интересен опыт и мнение
> Игоря Щенкова - кажется единственного пользователя, которые реально
> переходил с Рефала-2 на Рефал-6 с большим комплексом программ.
> Раньше был существен вопрос об эффективности лексера - отсюда и
> спецификаторы. Теперь он столь остро не стоит. (А в случае большой нужды
> можно применить полусуперкомпиляцию и отображение в С).
>
> Насчет простоты - рефал-6 тоже не громоздок.
> Интерпретирующая реализация - около 10 тыс. строк на С и компилятор - 1.5
> тыс строк на рефале.
> В варианте Refal-Java: рантайм - 4.5 тыс. строк на Java, компилятор - 2.5
> тыс строк на рефале.
>
> С уважением,
> Аркадий Климов.
>
> чт, 31 янв. 2019 г. в 23:55, Eisymont Leonid verger-lk_AT_yandex.ru <
> refal@botik.ru>:
>
> У меня в письме главным другое было...
>
> 31.01.2019, 22:00, "Александр Коновалов a.v.konovalov87_AT_mail.ru" <
> refal@botik.ru>:
>
> *«Балансировка скобок одновременно шла с лексическим анализом. Прохода два
> было.»*
>
> Поэтому я употребил слово *«концептуально»*. Потому что можно проводить
> синтаксический анализ, не выделяя явно скобки. В Рефале-05 я так и сделал
> (ссылка в предыдущем письме).
>
> На Рефале вообще скобки можно сильно по-разному обрабатывать. Особенно,
> в компиляторах Рефала.
>
> Можно лексический анализ делать одновременно с синтаксическим — иметь
> функцию NextToken, которая возвращает очередной токен программы, и её
> вызывать в тот момент, когда требуется следующий токен. Можно вообще
> смешать лексический и синтаксический анализ — строить синтаксическое дерево
> сразу из потока символов.
>
> *«Последующие версии Рефала мне явно не нравятся, сложные.»*
>
> Упомянутый мной Рефал-05 семантически проще Рефала-2:
> https://github.com/Mazdaywik/Refal-05/
>
> Но, впрочем, я этот диалект промышленным не считаю. Это был эксперимент
> по написанию минималистичного компилятора Рефала.
>
> А Рефал-5λ действительно громоздок и сложен, тут согласен.
>
> *«Программы компиляторов были огромные и сложные по реализуемым алгоритмам
> и целевой архитектуре, там было не до витиеватости средств Рефала.»*
>
> Можно витиеватыми средствами и не пользоваться.
>
> На Рефале-2 удобно писать лексические анализаторы благодаря тому, что язык
> поддерживает спецификации переменных. Другие Рефалы возни требуют больше.
>
>
>
> С уважением,
> Александр Коновалов
>
>
>
> *From:* Eisymont Leonid verger-lk_AT_yandex.ru [mailto:refal@botik.ru]
> *Sent:* Thursday, January 31, 2019 9:06 PM
> *To:* refal@botik.ru
> *Subject:* Re: Синтаксический анализ в Рефале
>
>
>
> Балансировка скобок одновременно шла с лексическим анализом. Прохода два
> было.
>
> А вот действительно не для каждого языка это можно было применить,
> неприятным был язык Си, там другое применяли.
>
> А вставка скобок была удобна и далее в процессе кодогенерации.
>
> У меня такое впечатление, что сейчас это придется все вспоминать, как в
> 70-е - 90-е года, в этот 20-летний период. Потом было использование лет
> пять в НИР Беркут, это уже середина первой декады 2000-х.  Сейчас причина -
> необходимость быстрой разработки новых микропроцессорных СБИС и их ПО,
> особенно в России. Это уже связано с обеспечением национальной
> безопасности, доигрались.
>
> Явно потребуется быстродействующая реализация Рефала с глубоким
> распараллеливанием выполнения программ. Я бы даже ориентировался просто на
> Рефал-2 с небольшими инженерными расширениями и богатому набору машинных
> операций. Собственно, к тому, куда развилась наша реализация с Колей
> Мансуровым.
>
> Последующие версии Рефала мне явно не нравятся, сложные. Опираюсь на опыт
> разработки компиляторов на Рефале около 30 лет. Программы компиляторов были
> огромные и сложные по реализуемым алгоритмам и целевой архитектуре, там
> было не до витиеватости средств Рефала.
>
> Л.Эйсымонт
>
>
>
> 31.01.2019, 20:25, "Александр Коновалов a.v.konovalov87_AT_mail.ru" <
> refal@botik.ru>:
>
> Добрый вечер, Леонид!
>
> Вообще-то, я писал про суперкомпиляцию… Но и про компиляцию мне уже есть,
> что сказать.
>
> <<< опущено >>>
>
>
>
>

-- 
_______________
*С уважением, *
*Аркадий Климов,*
*с.н.с. ИППМ РАН,*
*+7(499)135-32-95*
*+7(916)072-81-48*
  • Син... Александр Коновалов a . v . konovalov87_AT_mail . ru
    • ... Eisymont Leonid verger-lk_AT_yandex . ru
      • ... Александр Коновалов a . v . konovalov87_AT_mail . ru
        • ... Eisymont Leonid verger-lk_AT_yandex . ru
          • ... Arkady Klimov arkady . klimov_AT_gmail . com
            • ... Eisymont Leonid verger-lk_AT_yandex . ru
              • ... Arkady Klimov arkady . klimov_AT_gmail . com
                • ... Eisymont Leonid verger-lk_AT_yandex . ru
                • ... Александр Коновалов a . v . konovalov87_AT_mail . ru
                • ... Eisymont Leonid verger-lk_AT_yandex . ru
                • ... Александр Коновалов a . v . konovalov87_AT_mail . ru
                • ... Eisymont Leonid verger-lk_AT_yandex . ru
                • ... Александр Коновалов a . v . konovalov87_AT_mail . ru
                • ... Eisymont Leonid verger-lk_AT_yandex . ru
                • ... Sergei M. Abramov
                • ... Eisymont Leonid verger-lk_AT_yandex . ru
                • ... Sergei M. Abramov

Ответить