Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пн июл 16, 2018 11:03

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 101 ]  На страницу Пред.  1 ... 3, 4, 5, 6, 7  След.
Автор Сообщение
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:21 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
gudleifr писал(а):
Ethereal писал(а):
Можно
В общем случае - нет. Допустим, Вы пишете FORTH на C. Проверки на переполнение там нет. Все арифметические проверки этого флага включают проверку заодно и знакового.
Только эти проверки все равно выйдут симметричными относительно знакового разряда приращения. В логическую функцию "цикл завершился" знак приращения войдет в виде (знак_приращения xor бла-бла-бла_в_котором_знака_приращения_нет). Так-что собственно проверки если знак_приращения = 0, то одно, в противном случае ни разу не похожее другое не нужно ни в каком случае.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:26 
<удалено из-за того, что коллега mOleg этого не понял>


Последний раз редактировалось gudleifr Пн июн 08, 2015 21:20, всего редактировалось 1 раз.

Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:30 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
gudleifr писал(а):
Ethereal писал(а):
Если переменные цикла хранить на стеке, то код реентерабелен.
И что? Вам кто-то запрещает хранить переменные цикла в стеке данных, в блоке локальных переменных, стеках рекурсии или еще где?
Ты и попытался запретить и засунуть их в глобальные пееменные.
gudleifr писал(а):
Дело в том, что цикл "DO ... LOOP",- лишь технологическая заглушка. Какой-то вымученный представитель слов, которому вместо обычных переменных зачем-то понадобился кадр стека.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:35 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
gudleifr писал(а):
Ethereal писал(а):
В логическую функцию "цикл завершился" знак приращения войдет в виде
Какая разница, как он войдет и как его проверять? Главное, что, как я писал выше, его надо проверять (а умеет ли это процессор делать быстро, нас не интересует).
Нас не интересует, что некоторые не могут обойтись без этой проверки потому-что криво программируют. Раз указан способ обойтись без этой проверки, значит проверка не нужна. И нечего тут спорить. Если бы проверка была нужна, то обойтись без нее было бы просто невозможно.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:37 
<удалено из-за того, что коллега mOleg этого не понял>


Последний раз редактировалось gudleifr Пн июн 08, 2015 21:21, всего редактировалось 1 раз.

Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:44 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
forther писал(а):
for next в конце проверяет.

Если бы он проверял в конце итерации, то выполнялась бы минимум одна итерация. Но он проверяет в начале итерации. Поэтому может и не исполниться ни разу.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:46 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
gudleifr писал(а):
Ethereal писал(а):
глобальные пееменные
Обычные не значит глобальные.
Но и не значит обратного.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:50 
<удалено из-за того, что коллега mOleg этого не понял>


Последний раз редактировалось gudleifr Пн июн 08, 2015 21:21, всего редактировалось 1 раз.

Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:50 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
gudleifr писал(а):
Проверка как была, так и осталась.
Кончайте словоблудить. Вспомните, что Вы хотели доказать изначально.

Использование есть. Проверки нет.

Кто словоблудит ?

Этот топик открыл я. И складывал сюда найденные мною ошибки в известных реализациях Форта. И выложил не одну, а несколько штук. В одном только SP-Forth-e нашел две. А словоблудить сюда прибежал ты. Не ошибки и их исправление показать, а потрещать ни о чем, вокруг да около того, что выложил я.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 17:54 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
gudleifr писал(а):
Ethereal писал(а):
Но и не значит обратного.
Не понимаю смысла подобных рассуждений. В FORTH есть "обычные переменные" (чтобы Вы под ними ни подразумевали)? Раз Вы считаете, что код с их использованием плох - "нереентерабелен", то их вообще нельзя использовать? А если есть какой-то их "хороший" вид, кто мешает использовать в циклах именно его? Или таких переменных нет, и фортер обязан все размещать в стеках?
Едреный батон. Да используйте в прикладных программах обычные переменные сколько хотите. Просто сам Форт должен оставлять возможность многозадачности. А значит в нем в ядре все или должно быть реентерабельно, а если такое невозможно, то должно быть вынесено в контекст ( USER-переменные ).


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 18:06 
<удалено из-за того, что коллега mOleg этого не понял>


Последний раз редактировалось gudleifr Пн июн 08, 2015 21:21, всего редактировалось 1 раз.

Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 21:31 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6341
Благодарил (а): 14 раз.
Поблагодарили: 99 раз.
А как бы еще отделить ошибки реализаций от различий в спецификации? Потому что если в описании на конкретную реализацию сказано, что слово работает так-то и так-то, и это не совпадает с ANS или FIG, то к ошибкам реализации я бы это не относил. ANS не обладает каким-либо приоритетом - это моя твердая позиция.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Ср май 20, 2015 22:04 
<удалено из-за того, что коллега mOleg этого не понял>


Последний раз редактировалось gudleifr Пн июн 08, 2015 21:22, всего редактировалось 1 раз.

Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Чт май 21, 2015 04:20 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
gudleifr писал(а):
Ethereal писал(а):
Проверки нет.
Есть. JO проверяет два условия (хотя и один флаг).
Условия два. Перенос в знаковый разряд и перенос за пределы разрядной сетки. Флаг O равен ксорке этих переносов. Но и где тут проверка знакового разряда одного из операндов ? Тогда уж проверка всех битов операндов без исключения. А какой смысл тогда говорить вообще о какой-либо проверке ? Имеет смысл говорить лишь об использовании битов. Знаковый разряд используется, впрочем как и любой другой бит, но вот чего-то, что позволяло бы говорить об его отдельной и особой ПРОВЕРКЕ нету.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Ошибки в известных реализациях Форта и их исправление.
СообщениеДобавлено: Чт май 21, 2015 04:23 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 519
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 21 раз.
gudleifr писал(а):
А причем тут циклы DO? Если называть ядром только реализацию FORTH-машины, то DO там нафиг не надо.
Если DO в ядре нету, то и говорить не о чем. А если оно есть, то оно должно быть реентерабельно.
gudleifr писал(а):
А если, все, что называется CORE, то там полно "обычных переменных".
Например.


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

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


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

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


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

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