Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт апр 19, 2024 18:45

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 222 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7 ... 15  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 15:36 
Хищник писал(а):
Задачу можно сформулировать по-разному.
Повторюсь, что Ассемблер – это «родной» язык практически всего того диапазона «железа», на котором предстоит реализовать Форт. Поэтому, система маш. команд превращается в организацию данных, при объединении этих маш. кодов в форт-слова. Понятно, что это объединение должно происходить по приемлемым правилам(критериям) для всего диапазона архитектур. Продвинуться дальше одного моего опыта явно не достаточно, но совместными усилиями, полагаю, что-то можно придумать, если будет что обобщать.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 15:43 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
вопрос писал(а):
Хищник писал(а):

Задачу можно сформулировать по-разному. Создать транслятор, который начнет работать как можно быстрее, и найти минимальный набор слов для такого транслятора - это разные вещи. Пара десятков слов, которые не являются абсолютно необходимыми, но пишутся легко - надо ли от них отказываться? Если да, то процесс разработки превращается в постоянные проверки, нельзя ли обойтись еще и без этого.

и для каждой следующей аритектуры ВМ и для каждого след. процессора - заново

И что тут такого страшного? При наличии спецификации это рутинная работа, тем более что реализация слов Форта достаточно проста, а перекрестные связи практически отсутствуют.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 15:46 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
vikt писал(а):
Возможно более интересная задача. точнее определить, что делать FVM
например в случае деления на 0.
Или метод перевода FVM в спящий режим, чтобы экономить энергию.

Вариантов таких решений множество, но желательно стандартизировать,
тогда проще можно будет использовать например чужие наработки,

Нет, ничего хорошего из этого не получится. Что делать в случае деления на ноль, зависит не от абстрактно-теоретически предпосылок, а из требований конкретной задачи. Где-то надо остановиться с ошибкой, где-то проигнорировать и вернуть максимально возможное значение, где-то - что-то еще. Так что стандартизация на этом уровне не имеет большого смысла в отрыве от той области, где предполагается использование Форта.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 15:47 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
idem писал(а):
Поэтому, система маш. команд превращается в организацию данных, при объединении этих маш. кодов в форт-слова. Понятно, что это объединение должно происходить по приемлемым правилам(критериям) для всего диапазона архитектур.

Так вот Форт - это и есть разновидность общих правил для различных архитектур. Подложить под него что-то еще, более простое?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 15:55 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Хищник писал(а):
вопрос писал(а):
Хищник писал(а):
Задачу можно сформулировать по-разному. Создать транслятор, который начнет работать как можно быстрее, и найти минимальный набор слов для такого транслятора - это разные вещи. Пара десятков слов, которые не являются абсолютно необходимыми, но пишутся легко - надо ли от них отказываться? Если да, то процесс разработки превращается в постоянные проверки, нельзя ли обойтись еще и без этого.

и для каждой следующей аритектуры ВМ и для каждого след. процессора - заново

И что тут такого страшного? При наличии спецификации это рутинная работа, тем более что реализация слов Форта достаточно проста, а перекрестные связи практически отсутствуют.
Страшного ничего, кроме того, что нет "минимального форт транслятора" а есть "несколько :) :shuffle; :!: близких к минимальному решений для каждого процессора", т.е. нахождение ответа в общем виде ... :?:


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 16:29 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
вопрос писал(а):
Страшного ничего, кроме того, что нет "минимального форт транслятора" а есть "несколько близких к минимальному решений для каждого процессора", т.е. нахождение ответа в общем виде ...

В цифровой электронике все компоненты могут быть реализованы на базе 2И-НЕ или 2ИЛИ-НЕ (любого из них). Проще некуда, но разработчики "почему-то" стараются пользоваться более мощными компонентами. Мне с трудом верится, что писать программы на Форте мешает именно отсутствие возможности за считанные минуты адаптировать транслятор для другой аппаратной платформы, так что призывы сделать "минимально-стандартное, для всех, чтобы сразу решились проблемы" я рассматриваю под углом "как объяснить человеку, что он не вполне прав с точки зрения организации своего труда".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 16:38 
Хищник писал(а):
Так вот Форт - это и есть разновидность общих правил для различных архитектур.

Но нет унификации. И как в таком случае определиться с минимальным форт-транслятором?
Хищник писал(а):
Подложить под него что-то еще, более простое?

Я не слышал о таких разработках, когда Форт был написан на Форте под другую архитектуру(т.е. без использования другого ЯП)


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 17:13 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
idem писал(а):
Но нет унификации. И как в таком случае определиться с минимальным форт-транслятором?

А зачем с ним определяться, если решаемые задачи уже разные? Можно условно унифицировать стек, но на PC он может занимать тысячи ячеек, а на совсем мелком МК будет ограничение типа "стек не больше 8 ячеек". И что делать с такой "унификацией" дальше?
idem писал(а):
Я не слышал о таких разработках, когда Форт был написан на Форте под другую архитектуру(т.е. без использования другого ЯП)

Да и я не слышал, я Форты для МК писал на PC-Форте молча :))


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 17:53 
Хищник писал(а):
Можно условно унифицировать стек, но на PC он может занимать тысячи ячеек, а на совсем мелком МК будет ограничение типа "стек не больше 8 ячеек". И что делать с такой "унификацией" дальше?
Да, вот первый очевидный критерий, с которым надо определиться. Но Вы указали крайности. Например, известно как в свое время поступили с процессорами х86 при переходе к расширенным регистрам. Что-то подобное возможно и в данном случае.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 18:12 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
idem писал(а):
Например, известно как в свое время поступили с процессорами х86 при переходе к расширенным регистрам. Что-то подобное возможно и в данном случае.

Здесь мы вступаем на еще одну разновидность опасного пути - стандартизация констант и запросов. Тут можно дойти до того, что перед выпуском транслятора в обращение придется набить сотню-другую строк, в которых будет указано, что нет, аппаратного ускорения Nvidia у него нет, строки больше 2 Гб не поддерживаются и проч. и проч. и проч. Уговорить кого-то пользоваться стандартом, или совмещаться с ним, невозможно. Можно только по факту сделать удобную программу, инструмент или методику, и тогда пользователи подтянутся сами.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 20:12 
Хищник писал(а):
Здесь мы вступаем на еще одну разновидность опасного пути - стандартизация констант и запросов. Тут можно дойти до того, что перед выпуском транслятора в обращение придется набить сотню-другую строк, в которых будет указано, что нет, аппаратного ускорения Nvidia у него нет, строки больше 2 Гб не поддерживаются и проч. и проч. и проч. Уговорить кого-то пользоваться стандартом, или совмещаться с ним, невозможно. Можно только по факту сделать удобную программу, инструмент или методику, и тогда пользователи подтянутся сами.
Прежде, чем пользователи «подтянутся» придется самому «упасть, отжаться»(а смысл!?), если всё делать самостоятельно. Остается переспросить: какие существуют принципиальные различия в реализациях констант и запросов? Ведь, в минимальном форт-трансляторе можно ограничиться разрядностью шины.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 20:50 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
idem писал(а):
Прежде, чем пользователи «подтянутся» придется самому «упасть, отжаться»(а смысл!?), если всё делать самостоятельно.

Но ведь при работе с другими языками программисты очень часто делают себе личные библиотеки, собирая там те инструменты, которые им удобны и требуются для повседневной деятельности. Они ведь при этом не спрашивают, кто к ним подтянется, и сколько пользователей их личной библиотеки появится в ближайшем будущем? Форт - разновидность такого личного инструмента, и только при удачном стечении обстоятельств продукт на продажу.
idem писал(а):
Остается переспросить: какие существуют принципиальные различия в реализациях констант и запросов? Ведь, в минимальном форт-трансляторе можно ограничиться разрядностью шины.

Да никаких, за исключением того, что большого практического смысла в них нет. Такой набор констант будет либо очень куцым, либо чересчур громоздким, а в итоге авторы трансляторов возмутятся и скажут "ну и зачем мне выписывать сотни каких-то параметров на все случаи жизни?".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 21:07 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
"Всё хорошо, не нужно ничего менять" - это консерватизм Однако :) по этому поводу есть замечательная фраза М.Жванецкого "Может в консерватории что-нибудь не так?"


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 21:21 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Хищник писал(а):
Здесь мы вступаем на еще одну разновидность опасного пути - стандартизация констант и запросов.

вообще не понятно, куда ушла мысль. в смысле обсуждение.
Транслятор вообще достаточно опосредованно завязан на разрядность данных и прочие системно-зависимые штуки.
Глубины стеков, конечно влияют на это, но не принципиально.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс фев 21, 2010 21:55 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
mOleg писал(а):
Хищник писал(а):
Здесь мы вступаем на еще одну разновидность опасного пути - стандартизация констант и запросов.

вообще не понятно, куда ушла мысль. в смысле обсуждение.
Транслятор вообще достаточно опосредованно завязан на разрядность данных и прочие системно-зависимые штуки.
Глубины стеков, конечно влияют на это, но не принципиально.
Ага, таки непонятно "что надо".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 222 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7 ... 15  След.

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


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

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


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

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