Добрый день, Леонид! «Со символами ссылками не так. Там тупо в символе рефала ссылка на кусок памяти в 64 разряда, где хранится само число. Если сравнивать, то сравниваются содержимое двух кусков памяти, как это аппаратура может сделать.» Про символы-ссылки я имел ввиду следующее. Пусть имеются два символа-ссылки в переменных SA и SB. И мы вызываем функцию k/Eq/ SA SB.: Eq SX SX = /Eq/ SX SY = /Neq/ Тогда для ссылок наиболее логичным будет решение сравнить два указателя на равенство: если они ссылаются на один объект в памяти, то символы равны. А для сравнения вещественных чисел как чисел разумно ввести функцию вроде k/Compare/ SX SY., возвращающую '<', '=' или '>'. На сколько я знаю Рефал-2, ссылки на динамические ящики сравниваются по ссылкам, а не по содержимому. «Про параллельность интересно, только нам запись типа Рефал-2 нужна, новые расширения явно неудачные, надуманные, в больших программах это „не прокатит“, даже по примерам в письмах вижу, что программы не читаются. Кто-то из коллег, по-моему, также высказал такое мнение.» Предполагаемая параллельная реализация всё равно будет поддерживать только базисный Рефал: без условий, блоков и прочих наворотов. Параллелиться будут независимые по данным вызовы функций, но при этом вызовы примитивных «грязных» функций (ввод-вывод, копилка и т.д.) будут выполняться в правильном порядке. Подход к распараллеливанию может быть вполне применим и к Рефалу-2. А вопрос читаемости — я считаю, что это вопрос привычки. Мне, например, трудно читать Рефал-2. Хотя я однажды читал исходник компилятора Василия Стеллецкого, уже к середине текст читался нормально. Так что вопрос привычки. Если прочтёте 1000 строк кода Рефала-5, то тоже сможете некоторое время нормально его воспринимать. А кто-то из коллег — это Василий Стеллецкий. Он тоже писал в рассылку, что текст на Рефале-5 он не читает, а расшифровывает. С уважением, Александр Коновалов From: Eisymont Leonid verger-lk_AT_yandex.ru <refal@botik.ru> Sent: Friday, November 29, 2019 1:20 PM To: refal@botik.ru Subject: Re: Нужны ли вещественные числа в Рефале? Со символами ссылками не так. Там тупо в символе рефала ссылка на кусок памяти в 64 разряда, где хранится само число. Если сравнивать, то сравниваются содержимое двух кусков памяти, как это аппаратура может сделать. Про параллельность интересно, только нам запись типа Рефал-2 нужна, новые расширения явно неудачные, надуманные, в больших программах это "не прокатит", даже по примерам в письмах вижу, что программы не читаются. Кто-то из коллег, по-моему, также высказал такое мнение. Л.Эйсымонт 28.11.2019, 20:46, "Александр Коновалов a.v.konovalov87_AT_mail.ru" <refal@botik.ru <mailto:refal@botik.ru> >: Добрый вечер, Леонид! «Мы же сами только обеспечивали работу с такими числами через символы-ссылки.» Если представлять вещественные числа символами-ссылками, то проблема равенства уходит на второй план: два символа равны, если ссылаются на общий контейнер. «Так что хоть какое-то распараллеливание есть, это будет важно применить в комбинаторных алгоритмах компиляции. Сейчас со всем этим будем работать на сервере с 28 ядрами.» А у меня сейчас студент работает над параллельной реализацией Рефала (курсовая работа). Если что-то получится, напишу подробнее. Пишется не для кластеров, а для простых многоядерных компьютеров. Но зато вся параллельность будет полностью прозрачна для программиста. С уважением, Александр Коновалов From: Eisymont Leonid verger-lk_AT_yandex.ru [mailto:refal@botik.ru <mailto:refal@botik.ru> ] Sent: Thursday, November 28, 2019 5:41 PM To: refal@botik.ru <mailto:refal@botik.ru> Subject: Re: Нужны ли вещественные числа в Рефале? Конечно, не IEEE, у нас была та арифметика, что есть в ЕС ЭВМ (IBM 360). Мы же сами только обеспечивали работу с такими числами через символы-ссылки. Для очень точных вычислений использовали дроби. Про работу с длинной мантиссой я не помню, кажется была. Надо посмотреть, реализация ведь есть и мы ее подняли сейчас в ЗАО"НТЦ"Модуль" для моделирования перспективных комбинаторных алгоритмов компиляции и непосредственно перспективных архитектур процессоров и систем. Нам надо просто быстро делать это в исследованиях (т.е. быстро ставить эксперименты), вот и выбрали Рефал, опыт его такого использования есть еще с времен ракетно-космической тематики в ИПМ. Рефал, вдобавок, у нас с введенными операциями типа MPI. Это в 2004 году в НИЦЭВТ-е добавили к М-рефалу. Так что хоть какое-то распараллеливание есть, это будет важно применить в комбинаторных алгоритмах компиляции. Сейчас со всем этим будем работать на сервере с 28 ядрами. Л.Эйсымонт 28.11.2019, 14:16, "Александр Коновалов a.v.konovalov87_AT_mail.ru" <refal@botik.ru <mailto:refal@botik.ru> >: Добрый день, Леонид! Я только что написал в рассылку про тонкости семантики вещественных чисел, включая сравнение на равенство. Как в М-Рефале решена проблема равенства вещественных чисел? Или во времена Бурана он писался для компьютеров со своей (не IEEE) реализацией вещественной арифметики? С уважением, Александр Коновалов From: Eisymont Leonid verger-lk_AT_yandex.ru <refal@botik.ru <mailto:refal@botik.ru> > Sent: Thursday, November 28, 2019 1:53 PM To: refal@botik.ru <mailto:refal@botik.ru> Subject: Re: Нужны ли вещественные числа в Рефале? Вещественные числа есть в М-Рефале (моя с Николаем Мансуровым разработка). Без них мы бы компилятор для Бурана не смогли бы сделать - нужны были вычисления для выбора масштабов. Это есть там с середины 80-х годов прошлого столетия. Л.Эйсымонт 27.11.2019, 19:44, "Александр Коновалов a.v.konovalov87_AT_mail.ru" <refal@botik.ru <mailto:refal@botik.ru> >: Добрый вечер всем! Собственно, вопрос: нужны ли вещественные числа в Рефале? Из известных мне реализаций они есть только в Рефале-6. Также они упоминались в старом учебнике Рефала-5 Турчина, при этом описывались встроенные функции Trunc, Real и Realfun. В новом актуальном их нет. Вопрос их отсутствия в большинстве реализаций — идеологический или технический? У меня (Рефал-5λ) их нет, поскольку (а) мне они не требовались, (б) их нет в Рефале-5, с которым должен быть совместим Рефал-5λ. Добавлять или не добавлять — я думаю. Поэтому и спросил. С уважением, Александр Коновалов
RE: Нужны ли вещественные числа в Рефале?
Александр Коновалов a . v . konovalov87_AT_mail . ru Fri, 29 Nov 2019 04:52:20 -0800
- Re:... 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
- ... Александр Гусев gusev_aleksandr_AT_mail . ru
- ... Boyko Bantchev boykobb_AT_gmail . com
- ... Sergei M. Abramov
- ... Александр Коновалов a . v . konovalov87_AT_mail . ru
- ... Boyko Bantchev boykobb_AT_gmail . com
- ... Александр Коновалов a . v . konovalov87_AT_mail . ru
- ... Александр Коновалов a . v . konovalov87_AT_mail . ru
- ... Boyko Bantchev boykobb_AT_gmail . com
- ... Arkady Klimov arkady . klimov_AT_gmail . com
- ... Александр Коновалов a . v . konovalov87_AT_mail . ru