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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 225 ]  На страницу 1, 2, 3, 4, 5 ... 15  След.
Автор Сообщение
 Заголовок сообщения: Сермяжная правда, или флейм о вечном
СообщениеДобавлено: Вс фев 19, 2012 22:49 
"В начале было Слово. И было в Слове два байта".
Начала формализмов:
Изначален код. Код бывает настроенный (уже находящийся в нужном месте и привязанный ссылками к остальной программе) и настраиваемый, который надо где-то разместить и "прилинковать". Пример первого - результат выполнения конструкции CODE, дающей готовый кусок, пригодный для немедленного исполнения, поэтому его так и назовем code. Пример второго - заготовки кусков кода, содержащиеся в словах CREATE или VARIABLE при использовании прямого шитого кода, которые будут скопированы и прилинкованы в слова, ими порождаемые. Такой код назовем l-code. Для общности добавим еще q-code - псевдо-код на человеческом языке, для пока не формализованных фрагментов.
Code можно еще немного специфицировать, в зависимости от того, куда он собирается передать управление по окончании работы: a-code, в котором адрес возврата прошит непосредственно; n-code, который берет адрес возврата из известного ему места, например, расположенного в памяти сразу за ним или специального регистра; и r-code, берущего адрес возврата "оттуда же, откуда и все", например, из стека возвратов. Всю программу в целом будем считать a-code, т.к. ее конец явно обозначен вызовом exit(), устройство которой нам безразлично. Зачем это надо? Чтобы формально описывать, например, вид шитого кода. Так, для прямого шитого кода слово CODE будет плодить n-сode, а "двоеточие" - r-code.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 04:39 
Не в сети
Administrator
Administrator
Аватара пользователя

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

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 15:37 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
gudleifr писал(а):
Код бывает...

Еще бывает временый код, который создается на лету(то есть генерится в каком-то количестве и в каком-то достаточно свободном для этого месте), затем исполняется и уничтожается.

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 15:43 
chess писал(а):
Еще бывает временый код...
Любой код - временный, ибо все преходяще... А каждая программа, выполнившись, из памяти удаляется...


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

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
gudleifr писал(а):
Любой код - временный, ибо все преходяще...

Если сохранить по SAVE программу, то все останется, а этот код, нет.

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 15:52 
chess писал(а):
Если сохранить по SAVE программу, то все останется, а этот код, нет.
Не следует плодить сущности без потребности. Я знаю много вещей, которые не сохраняются, сохраняются избыточно, вообще, не создаются, но сейчас я говорю о видах кода, а не о границах Вашей эрудиции.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 16:01 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
gudleifr писал(а):
Не следует плодить сущности без потребности.

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

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 16:06 
chess писал(а):
Почему без потребности?
Потому, что с точки зрения введенных мной определений временность кода безразлична. И l- и q-, и a-, и n-, и r-code могут быть временными. Как я уже писал выше, "постоянность" кода - понятие очень условное, способное к существованию крайне ограниченно.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 16:49 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
gudleifr писал(а):
Потому, что с точки зрения введенных мной определений временность кода безразлична.

Только не по отношению к исходной форт-системе. Для нее весь ее код - постоянный. Кроме того, r-code для подпрограммного кода
может не иметь смысла, так как в некоторых архитектурах нет стека возврата.

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 17:10 
chess писал(а):
gudleifr писал(а):
... временность кода безразлична.
Для нее весь ее код - постоянный.
Т.о. его временность, как я и писал, безразлична.
chess писал(а):
Кроме того, r-code для подпрограммного кода может не иметь смысла, так как в некоторых архитектурах нет стека возврата.
Т.о. различение этого вида кода - важнейшая часть различения архитектур.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 17:23 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июн 25, 2009 11:12
Сообщения: 412
Благодарил (а): 41 раз.
Поблагодарили: 8 раз.
chess писал(а):
Кроме того, r-code для подпрограммного кода
может не иметь смысла, так как в некоторых архитектурах нет стека возврата.

Это просто код, который возвращается "как все" (полагается на стандартную последовательность вызова).
"Адрес возврата на стеке"--вариант стандартного вызова.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 17:29 
Конечно, хочется останоновиться со всем этим малопонятным "кодом" и попрбовать с другой стороны - от данных. Это позволит вместо мутной функциональной классификации перейти к чему-то более стрктурно-объектному. Как учитит великий и могучий Вирт, вумность данных неуклонно ведет к построению вумных программ. Огорчу. Работает только процессор (ну, еще пара-другая контроллеров), и понимает он только команды (код), а данные - это только довесок к командам. Все эти абстракции, помнящие, как именно с ним обращаться, это лишь абстракция. А, еще точнее, обфускация, т.е. преднаиеренное запутывание существа программистского дела. Как только возникает потребность в анализе или компиляции, вся эта шелуха счищается.
Другая неприятность, поджидающая нас на пути морфологии данных, это тот факт, что интересуют нас обычно сложные данные, а разложение их на кирпичики - приводит к россыпи ничего не значащих банальностей. Или, даже, хуже к ляпам, вроде описания типа переменной в отрыве от ее инициализации. Взять, хотя бы, такую сущность как заголовок Forth-слова. Что нам от него надо, вполне описывается словами, имеющими с ним дело (т.е. кодом), но попробуйте перечислить все варианты хранения в памяти всех его "кирпичиков". И, более того, когда мы доразбираем заголовок до кирпичика "адрес", то придется вспомнить, что адрес может храниться не только в поле заголовка, но и в регистре, команде, стеке... Нужны нам все эти разносолы?
Потому вернемся к коду.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 18:35 
gudleifr писал(а):
Конечно, хочется останоновиться со всем этим малопонятным "кодом" и попрбовать с другой стороны - от данных. ...


К чему все эти мутности?
Можно ещё добавить х-код, который
настраивает по уставкам (переменным окружения, настройки
программы, да просто однозначный контекст ...) а-сод.

P.S. Отталкиваясь от данных приходит к структуре программы
управляемой данными (например автоматы), что тоже является неплохим вариантом.:)


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 18:54 
`Kopa писал(а):
Можно ещё добавить х-код, который настраивает по уставкам
Если он настраивает, то это его функция, до обсуждения которой мы еще не дошли, если настраивается, то это l-code. Но если имелось в виду, что он действует строго по Уставу...


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Форт - словарик
СообщениеДобавлено: Пн фев 20, 2012 19:01 
Не в сети

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

Если классификация полна, то её нужно использовать далее, если неполна - это проявится только во время использования


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

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


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

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


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

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