Forth http://fforum.winglion.ru/ |
|
обсуждение наброска стандарта http://fforum.winglion.ru/viewtopic.php?f=36&t=2242 |
Страница 4 из 5 |
Автор: | mOleg [ Ср авг 19, 2009 20:45 ] |
Заголовок сообщения: | |
avl писал(а): А давайте будем называть не "плоская", а логически точнее — "линейная"
логчино, исправлю |
Автор: | mOleg [ Чт авг 27, 2009 12:06 ] |
Заголовок сообщения: | |
итак, определение Цитата: Стек - устройство или механизм, предназначенный для временного хранения данных, поддерживающий две фундаментальных операции над данными: заталкивание данных в стек, выталкивание данных из стека (мнемонически PUSH и POP). Заталкивание и извлечение данных ведется только с одной стороны, таким образом извлечении данных порядок их следования относительно порядка заталкивания реверсируется (что обозначается в англоязычной литературе как Last In First Out или LIFO). По сути стек - это метод кэширования данных, то есть сохранения копии данных в промежуточном буфере в порядке наиболее вероятного их использования. Стек может быть реализован с помощью различных методик, поэтому может обладать дополнительными свойствами и возможностями в дополнение к определяющим.
добавлено в 2. Принятые сокращения и обозначения, соглашения по именованию слов |
Автор: | VoidVolker [ Чт авг 27, 2009 12:59 ] |
Заголовок сообщения: | |
mOleg писал(а): поэтому може обладать
Опечатка. |
Автор: | mOleg [ Чт авг 27, 2009 17:01 ] |
Заголовок сообщения: | |
VoidVolker писал(а): Опечатка.
спасибо, исправлено |
Автор: | mOleg [ Чт дек 17, 2009 09:44 ] |
Заголовок сообщения: | |
небольшое дополнение |
Автор: | вопрос [ Чт дек 17, 2009 10:08 ] |
Заголовок сообщения: | |
Цитата: Только lfa является уникальным для любого слова! Поэтому, именно адрес поля связи имеет смысл использовать как глобальный идентификатор конкретного определения. Таким образом, все слова, позволяющие работать с полями слова должны как базу использовать lfa, а не nfa и не cfa.
' THIS_NAME даст поле LF ? |
Автор: | mOleg [ Чт дек 17, 2009 10:28 ] |
Заголовок сообщения: | |
вопрос писал(а): ' THIS_NAME даст поле LF ?
нет, обычным образом все будет. Слова ' и ['] будут работать обычным образом. Изменение касается только внутреннего устройства словаря, формата словарной статьи и небольшой модификации слов работающих непосредственно с полями слова: >LINK L>NAME >BODY и им подобных. |
Автор: | mOleg [ Чт дек 17, 2009 10:51 ] |
Заголовок сообщения: | |
добавлен рисунок |
Автор: | mOleg [ Чт дек 17, 2009 11:27 ] |
Заголовок сообщения: | |
добавлен новый параграф представление и хранение имен |
Автор: | mOleg [ Чт дек 17, 2009 12:47 ] |
Заголовок сообщения: | |
добавлен новый параграф 3.2 Грануляция памяти, выравнивание данных. |
Автор: | mOleg [ Чт дек 17, 2009 16:00 ] |
Заголовок сообщения: | |
mOleg писал(а): вопрос писал(а):' THIS_NAME даст поле LF ?
нет, обычным образом все будет. Слова ' и ['] будут работать обычным образом. Изменение касается только внутреннего устройства словаря, формата словарной статьи и небольшой модификации слов работающих непосредственно с полями слова: >LINK L>NAME >BODY и им подобных. Хочу добавить. При использовании "адресации" относительно поля связи, получается следующя картина: \ искать по имени слова asc # его поле связи : SEARCH-NAME ( asc # vid --> lfa | false ) \ искать слово asc # в списке словарей vidn .. vid1 количеством v# \ в случае успеха вернуть адрес поля связи слова : QUEST ( [ vidn .. vid1 ] v# asc # --> asc # 0 | lfa ) \ найти адрес поля кода по lfa слова, вернуть состояние флага immediate слова : LINK>XT ( lfa --> xt imm | o ) \ найти адрес поля кода xt слова asc # : SFIND ( asc # --> asc # 0 | xt imm ) D>R GET-ORDER DR> QUEST LINK>XTI ; вобщем, вот такая перепланировочка получается. |
Автор: | in4 [ Чт дек 17, 2009 21:39 ] |
Заголовок сообщения: | |
mOleg писал(а): 5.2 Базовый обязательный набор примитивов
... Всего 17 команд. ?????? что пропустил ????? BRANCH ! |
Автор: | mOleg [ Чт дек 17, 2009 21:41 ] |
Заголовок сообщения: | |
in4 писал(а): mOleg писал(а):5.2 Базовый обязательный набор примитивов
... Всего 17 команд. ?????? что пропустил ????? BRANCH ! ничего не пропустил, можно так: 0 ?BRANCH |
Автор: | in4 [ Чт дек 17, 2009 21:42 ] |
Заголовок сообщения: | |
mOleg писал(а): Базовый набор примитивов ФВМ может отличаться от приведенного выше, но совместимая с данным стандартом Форт-система должа обязательно иметь А не слишком жесткое ограничение?
перечисленные выше примитивы. Может, сказать, что эти команды должны быть реализованы в системе? Не обязательно же они должны быть примитивами! Но стандарт твой. Я бы в стандарте определял то, без чего нельзя обойтись, а не то, что хотелось бы. |
Автор: | mOleg [ Чт дек 17, 2009 21:54 ] |
Заголовок сообщения: | |
in4 писал(а): mOleg писал(а):Базовый набор примитивов ФВМ может отличаться от приведенного выше, но совместимая с данным стандартом Форт-система должа обязательно иметь перечисленные выше примитивы.А не слишком жесткое ограничение? Может, сказать, что эти команды должны быть реализованы в системе? Не обязательно же они должны быть примитивами! дык, это и имелось ввиду. Вот берешь совместимую систему, и уверен, что в системе такие команды обязательно есть - в этом идея. Просто за базис взят очень небольшой но полный набор команд (таких наборов может быть несколько, и это тоже обсуждаемо). in4 писал(а): Но стандарт твой. увы, похоже пока это только меня волнует... in4 писал(а): Я бы в стандарте определял то, без чего нельзя обойтись, а не то, что хотелось бы.
Вообще все обсуждаемо и поправимо. Я выложил некий скелет своего видения документа, так как не увидел ни у кого другого ничего подобного. Любые конструктивные предложения и замечанию приветствуются |
Страница 4 из 5 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |