Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 16:27

...
Google Search
Forth-FAQ Spy Grafic

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




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - обсуждение оптимизатора
Автор Сообщение
  Заголовок сообщения:  Re:  Ответить с цитатой
chess писал(а):
yz писал(а):
2) Легкость добавления новых правил и замены старых
3) Общность правил

Слова новые правила и понятие общности правил противоречат друг другу.
Не должно быть правил - должен быть алгоритм оптимизации, основанный на определенной вычислительной модели.
Мое мнение - модель должна быть основана на строках, отражающих семантику программы. Строки строятся на основе исходного текста программы, затем используются алгоритмы преобразования строк к оптимальному виду для перевода в код.


Для форта не катит.
Нельзя 100% указать, что строка "DUP" и слово DUP являются одним и тем же.
Это либо писать хитросделанный интерпретатор форта, который при компиляции будет что-там химичить.
Легче уж постфактум. Легче. К тому же работаем с кодофайлом как со стеком. По-фортовски Ж :)
Сообщение Добавлено: Чт июн 07, 2018 15:02
  Заголовок сообщения:   Ответить с цитатой
yz писал(а):
2) Легкость добавления новых правил и замены старых
3) Общность правил

Слова новые правила и понятие общности правил противоречат друг другу.
Не должно быть правил - должен быть алгоритм оптимизации, основанный на определенной вычислительной модели.
Мое мнение - модель должна быть основана на строках, отражающих семантику программы. Строки строятся на основе исходного текста программы, затем используются алгоритмы преобразования строк к оптимальному виду для перевода в код.
Сообщение Добавлено: Вс май 20, 2007 20:11
  Заголовок сообщения:   Ответить с цитатой
yz писал(а):
1) Структурированность
2) Легкость добавления новых правил и замены старых
3) Общность правил
4) Легкость замены таблицы с целью оптимизации по различным критериям (по скорости, по объему, позиционно-независимый код)

5) Легкость рефакторизации - оптимальное выделение понятий и предоставление механизмов(описанных) для различных обработок

Mihail писал(а):
Лучше сделать разные оптимизаторы.
За тем, можно выделить общие части и представить как общую библиотеку.

А можно ли выделить лексикон вариантов обработок, чтобы менять все-таки таблицами? :)
Тем более, что некоторые части таблиц явно будут общими. Особенно, если удачно выделить системно-зависимые вещи!!
Обобщать по готовым сложным вещам не очень удобно - слишком много связей надо учитывать...
Чем раньше начать продумывание - тем меньше напрасной работы - иначе прийдется делать 2 раза - сначала оптимальное решение, потом его же переписывать на новом базисе (лексиконе обработок)...
Сообщение Добавлено: Пт май 18, 2007 12:43
  Заголовок сообщения:   Ответить с цитатой
yz писал(а):
Можно сформулировать требования более четко, например, так


Тоже давольно обстрактно и субъективно.

yz писал(а):
4) Легкость замены таблицы с целью оптимизации по различным критериям (по скорости, по объему, позиционно-независимый код)


Лучше сделать разные оптимизаторы.
За тем, можно выделить общие части и представить как общую библиотеку.

yz писал(а):
Вы не могли бы описать формальный интерфейс с реальным оптимизатором SPF?


Если я правильно понял вопрос, то должен помочь файл заглушек:

http://fforum.winglion.ru/posting.php?mode=quote&p=1929

В нем собраны слова оптимизатора применяемые вне файла src\macroopt.f .
Может служить заменой src\macroopt.f для изъятия оптимизатора.

yz писал(а):
Я его отключил в целевом компиляторе, заменив MCOMPILE, на TC-CALL,
но не уверен, что сделал правильно


Это только для ЦК.
В рантайме можно
В src\compiler\spf_compile.f
Код:
: COMPILE,  _COMPILE, ;


Вообще для отключения есть слово DIS-OPT.
Сообщение Добавлено: Чт май 17, 2007 19:14
  Заголовок сообщения:  обсуждение оптимизатора  Ответить с цитатой
Mihail писал(а):
Кому понятного? Что значит понятного? Всем понятно быть не может.

Можно сформулировать требования более четко, например, так:

1) Структурированность
2) Легкость добавления новых правил и замены старых
3) Общность правил
4) Легкость замены таблицы с целью оптимизации по различным критериям (по скорости, по объему, позиционно-независимый код)

Mihail писал(а):
Еще нужен компромис с простотой реализации.

Я думаю, что это уже критерий оценки результата. Все-таки это учебный конкурс.
На реализацию можно объявлять отдельный :-)
Разработка удобного языка - достаточно сложная задача.

Кстати, Михаил, пользуясь моментом. Вы не могли бы описать формальный интерфейс с реальным оптимизатором SPF?

Я его отключил в целевом компиляторе, заменив MCOMPILE, на TC-CALL,
но не уверен, что сделал правильно.
Сообщение Добавлено: Чт май 17, 2007 18:09

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


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