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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 33 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: [OS] давайте хотя бы согласуем архитектуру ВМ и набор команд
СообщениеДобавлено: Вт май 15, 2007 09:08 
Не в сети

Зарегистрирован: Сб май 06, 2006 18:43
Сообщения: 400
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Например давать ли программе доступ к стеку возвратов

_________________
http://akps.ssau.ru/forth/


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

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Цитата:
давайте хотя бы согласуем архитектуру ВМ и набор команд
Да, это нужно, поддерживаю forth@km.ru,

Но нельзя ли хоть самые общие элементы схемы этой ахитектуры предложить :shuffle;

_________________
понимаю некоторую бестолковость некоторых вопросов


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

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
forth@km.ru писал(а):
Например давать ли программе доступ к стеку возвратов


Для совместимости лучше давать. Только какое отношение имеет ВМ к ОС ?


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

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
forth@km.ru писал(а):
Например давать ли программе доступ к стеку возвратов

>R R@ R> однозначно давать.
Остальное - DEPTH и прямой доступ - можно обсуждать.
DEPTH хотелось бы, но не обязательно.
Прямой доступ лучше не давать для лучшей совместимости... Но если надо, делать и описать обоснование, почему пришлось и что без этого не работало!
Mihail писал(а):
Для совместимости лучше давать. Только кокое отношение имеет ВМ к ОС ?

Отлаживать алгоритмы проще! :)

У набора команд есть несколько вариантов:
Мне нравятся:
  • Набор Мура, 27 команд, но он не полный... :(
  • 4 битный процессор, но я бы добавил префиксы по-другому. Хотя, по-хорошему, набор команд надо подгонять к программам, а их надо сначала иметь... ;) Замкнутый круг... Поэтом сначала подойдет любое решение. Потом пересмотрим и сделаем хорошо! :)
  • F:) RTH от forth@km.ru, я правильно его написал? ;)

Можно выбирать...

Но по-любому - сначала программы - потом подгонка набора команд... ;)
Желательно второй шаг держать в уме и не заморачиваться с чрезмерной оптимизацией... ;)
И обязательно описания!! Самодокументируемый код - это не наш случай! У нас слишком разные квалификации и привычные инструменты. Поэтому обязательно писать зачем и почему так сделано, что это дает и какие ограничения. Если есть нетривиальные вещи и изюминки (ну, то, что самому автору страшно нравится) - это обязятельно описывать.
Если библиотека не описана, она скорее всего - бесполезна!
Может уйти много времени на изучение, прежде чем поймешь, что она тебе не совсем подходит!
А за это время мог бы свою написать... ;) (Тоже без описания... ;) )
Так что лучше начинать как раз с описаний, а не с исходников... :)

_________________
With best wishes, in4.


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
Imho, начинать надо с объявления набора нчального команд. Дальше, если новые команды появляются, то их надо либо выражать через объявленные, либо как следует описывать и обосновывать необходимость ввода.
При этом, нормальным обоснованием не считать, что "команда в 100 раз быстрее работает, чем определение через начальные примитивы"
обоснованием можно считать только наличие необходимости конкретного действия и невозможность выражения через начальные примитивы.

Необходимость можно брать, например, из начального постулата о необходимости реализации на данном наборе полного Форта (F83/ANS94).

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

Согласно всему этому, план действий предлагается такой:

1. Выбирается набор команд (можно сказать, от балды)
2. Строится на нем имитатор ВМ,
3. К нему пишется простейший компилятор, которым и обрабатываются ВСЕ последующие исходники.

4. Если на каком-то шаге возникает непреодолимый затык, возвращаемся к 1, пока затык не будет пробит.

5. При острой необходимости (ну, там кого-то МУХА КУСИЛА или сильно захотелосьт ввести команду Вася-Стоять!), переделывается все, начиная с 1 и предъявляется общественности с последующим вынесением решения, принимать это изменение или нет.

Пока, кажется, все.


P.S. По поводу архитектиры ВМ, имхо, надо идти по такому же пути. Выбрать сначала минимальную аскетическую архитектуру, и добавлять
что-то новое потом, при острой необходимости.

Конкретно, выскажусь позже (вечерком, или ночью, или завтра)

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

Зарегистрирован: Сб май 06, 2006 18:43
Сообщения: 400
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Память программ/данных M[] с байтовой адресацией, на 16-битных системах до 64К, на 32-битных тоже лучше до 64К чтобы быстро божно было задачу перекинуть с узла на узел, порядок байт как на х86 процессоре как самом распространенном из легко программируемого пользователем железа

_________________
http://akps.ssau.ru/forth/


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

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
in4 писал(а):
Прямой доступ лучше не давать для лучшей совместимости...


Совместимость кого с кем? Я понимаю совместимость с популярными форт-системами.
А они, доступ к стеку возвратов, имеют. Форт для меня, это прежде всего неограниченные возможности.

in4 писал(а):
Mihail писал(а):
Только кокое отношение имеет ВМ к ОС ?

Отлаживать алгоритмы проще!


Чем проще? Вопрос был о другом. Или для отладки ОС возникают особые проблемы?


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

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
Mihail писал(а):
Совместимость кого с кем? Я понимаю совместимость с популярными форт-системами.
А они, доступ к стеку возвратов, имеют. Форт для меня, это прежде всего неограниченные возможности.

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

Да, возникают. Не все пишут код сразу без ошибок. Для того, чтобы удобно отлаживаться - не пререгружать комп с потерями 1-3минут на перезагрузку, брать примеры из файлов, записывать результаты, комментарии - нужно, чтоб хотя бы некоторые функции ОС работали. Поэтому и предлагается на этапе, когда еще нет работающих частей, отлаживаться на ВМ. Заодно и установленный софт не испортится при ошибках... ;)
forth@km.ru писал(а):
Память программ/данных M[] с байтовой адресацией, на 16-битных системах до 64К,...

Согласен.
WingLion писал(а):
1. Выбирается набор команд (можно сказать, от балды)

Выбирай от балды из трех предложенных вариантов ;)
Итак, желающих выбрать набор пока оказалось 3.
У одного вообще нет ограничений (от балды ;) ), другому подходят предложения третьего. ;)
Значит, выбираем набор, предложенный forth@km.ru, как базовый! :)
forth@km.ru, давай ссылки на документацию! :)
Может, есть другие предложения? ;)

Замечу, что можно перейти и к любому другому набору, если предлагающий сделает слой совместимости... :)
Тут правда, еще стоИт вопрос зависимости исходников от набора команд... Наличие определенных команд может вызвать значительные изменения исходников
Скрепя сердце, соглашаюсь на традиционную Форт- архитектуру... :(
Это позволит, по крайней мере использовать стандарты F94... ;)
И наработки SPF ;)

_________________
With best wishes, in4.


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

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
in4 писал(а):
Для совместимости с архитектурами процов, у которых стек возвратов не адерсуется через доступ к памяти.


ВМ не зависит от архитектур процов (на то она и ВМ )
(равно как и от ОС под которой она работает).

in4 писал(а):
Но я бы предложил оставить, пока не будет обоснования с примерами.


Локальные переменные, мультизадачность.
Пройдись файндом по слову RP@ в \devel получиш кучу примеров.

in4 писал(а):
Для того, чтобы удобно отлаживаться - не пререгружать комп с потерями 1-3минут на перезагрузку, брать примеры из файлов, записывать результаты, комментарии - нужно, чтоб хотя бы некоторые функции ОС работали.


До отладки программ в рантайме новой ОС еще дожить надо.

in4 писал(а):
Поэтому и предлагается на этапе, когда еще нет работающих частей, отлаживаться на ВМ.


Чем не подходит обычная форт-система?

in4 писал(а):
Заодно и установленный софт не испортится при ошибках...


Какой софт? И где установленный? И почему он должен испортится?

in4 писал(а):
Есть другие предложения?


http://devbiol.zoo.uwo.ca/~kvt/relf01.zip

in4 писал(а):
Наличие определенных команд может вызвать значительные изменения исходников
Скрепя сердце, соглашаюсь на традиционную Форт- архитектуру...
Это позволит, по крайней мере использовать стандарты F94...


Потенциально ВМ должна быть в состояние обеспечить совместимость
с любым языком программирования (с любым фортом тем-более).


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
in4 писал(а):
Выбирай от балды из трех предложенных вариантов Wink
Итак, желающих выбрать набор пока оказалось 3.
У одного вообще нет ограничений (от балды Wink ), другому подходят предложения третьего. Wink
Значит, выбираем набор, предложенный forth@km.ru, как базовый! Smile


Стоп-стоп-стоп! Не так быстро! А то, задавишь кого-нибудь!
Я же написал, вечером(ночью) вернусь и будет конкретное предложение...
Так вот, я только пришел с работы, и еще не подготовил свое конкретное предложение.

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
топик перенесен в "правильный" раздел форума

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Mihail писал(а):
in4 писал(а):
Заодно и установленный софт не испортится при ошибках...


Какой софт? И где установленный? И почему он должен испортится?

Коллега видимо хочет работать с полным комфортом, параллельно с отлаживаем ядром иметь запущенными несколько редакторов кода, справку или документацию ... разумное пожелание :D и таковые программы должны оставаться рабочими в процессе :D ?


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

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
WingLion писал(а):
in4 писал(а):
Выбирай от балды из трех предложенных вариантов Wink
Итак, желающих выбрать набор пока оказалось 3.
У одного вообще нет ограничений (от балды Wink ), другому подходят предложения третьего. Wink
Значит, выбираем набор, предложенный forth@km.ru, как базовый! Smile


Стоп-стоп-стоп! Не так быстро! А то, задавишь кого-нибудь!
Я же написал, вечером(ночью) вернусь и будет конкретное предложение...
Так вот, я только пришел с работы, и еще не подготовил свое конкретное предложение.
потом нужно 3,5 раза отмерить (чтобы не 7) и только потом :D ... но быстро


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

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


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
вопрос писал(а):
но быстро


Поспешишь - людей насмешишь!


вопрос писал(а):
осмелюсь предположить, forth@km.ru прав насчёт необходимости "согласовывать архитектуру", Потенциально и должна не то же, что уже обеспечила


Разумеется, прав! Но при согласовании надо отталкиваться от неких имеющихсся реалий.
Для меня эта реалия - имеющийся Форт-процессор.

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

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


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

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


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

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