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

...
Google Search
Forth-FAQ Spy Grafic

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




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - Есть ли в SP-Forth
Автор Сообщение
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
посмотрите в либы, использующие TEMP-WORDLIST , например в LOCALS.F
где-то был пример и того, как можно его удалить, только есть одно на, на слова во временном словаре не должно быть ссылок из слов, определенных в статических словарях.
Сообщение Добавлено: Пт авг 06, 2010 16:18
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Как тогда создать динамический словарь?
Сообщение Добавлено: Пт авг 06, 2010 16:13
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
пардон, забыл, что тема про СПФ 8)

тогда утчню вопрос, откуда словарь удалить (из памяти системы или из контекста?)
если из памяти, то статические нельзя удалять, только динамические.
Сообщение Добавлено: Пт авг 06, 2010 16:10
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Antender писал(а):
А как удалить словарь?

какой словарь, откуда?
Сообщение Добавлено: Пт авг 06, 2010 15:34
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
А как удалить словарь?
Сообщение Добавлено: Пт авг 06, 2010 15:30
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Тема про многомерные массивы
выделена сюда: viewtopic.php?f=18&t=2627&start=0
Сообщение Добавлено: Сб июл 31, 2010 10:50
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Antender писал(а):
Пользователь не знает, что использует форт-систему, думает что использует программу работающаю в диалоговом режиме с вводом команд.

Ну вы сами и ответили - должна работатать не форт-система, а программа, разработанная с помощью форт-системы, с учетом требований к программе. Форт-система предназначена для другого - для разработки программ.
Сообщение Добавлено: Сб июн 19, 2010 21:21
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Antender писал(а):
Допустим, форт-система расширяется на несколько взаимодействующих через стек слов вместе являющихся программой. Пользователь не знает, что использует форт-систему, думает что использует программу работающаю в диалоговом режиме с вводом команд. Программа не должна сбрасывать результат работы одной своих частей находящийся в стеке, а должна выдавать что-то вроде "Команда не найдена", либо вообще не делать ничего.

дело в том, что данные на стеке после возникновения ошибки невалидны обычно. Т.е. выигрыша от несброса параметров нет, а проигрыш очень даже может быть, более того, невосстановление стека может привести к краху системы. Если хочется получить систему с похожим поведением, надо предусмотреть сохранение стека перед выполнением каждой команды с последующим восстановлением содержимого, каким оно было перед выполнением команды. Собственно, подобный механизм в Форте есть: CATCH THROW ; только он не сохраняет данные со стека, а значит если в результате ошибки данные под вершиной стека будут искажены.
Вобщем, сделать это можно, достаточно написать свой цикл QUIT или ABORT (зависит от того, как это сделано в конкретной системе) и в нем работать.
Сообщение Добавлено: Сб июн 19, 2010 20:38
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Antender писал(а):
Программа не должна сбрасывать результат работы одной своих частей находящийся в стеке, а должна выдавать что-то вроде "Команда не найдена", либо вообще не делать ничего.


Защиту от дурака надо делать в таком случае.
Писать свою реализацию ввода и исполнения команд (нечто похожее на слово INTERPRET), его и подставлять пользователю, а не давать возможность делать все что угодно, а то так какой-нибудь хакер вам и винт отформатирует с помощью программы на форте.
Сообщение Добавлено: Сб июн 19, 2010 18:49
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Допустим, форт-система расширяется на несколько взаимодействующих через стек слов вместе являющихся программой. Пользователь не знает, что использует форт-систему, думает что использует программу работающаю в диалоговом режиме с вводом команд. Программа не должна сбрасывать результат работы одной своих частей находящийся в стеке, а должна выдавать что-то вроде "Команда не найдена", либо вообще не делать ничего.
Сообщение Добавлено: Сб июн 19, 2010 17:14
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Antender писал(а):
Возможность отключить сброс стека при вводе неправильного слова?

А смысл?
Сообщение Добавлено: Ср июн 16, 2010 14:22
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Ответ скорее всего будет нет, так как в большинстве ФОРТ-систем стандартная процедура проверки правильности ввода содержит вызов слова ABORT
Сообщение Добавлено: Ср июн 16, 2010 11:02
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
Возможность отключить сброс стека при вводе неправильного слова?
Сообщение Добавлено: Вт июн 15, 2010 19:36
  Заголовок сообщения:  Re: Есть ли в SP-Forth  Ответить с цитатой
квадратный корень для чисел с плавающей точкой - FSQRT
Для целых - надо писать самому вычисление.
Что-то наподобие:
: SQRT ( А -- Sqrt{A} ) 1 32 0 DO 2DUP / + 2 / LOOP ;
Что соответствует стандартному алгоритму Ньютона

Sn = (Sn-1+ A/Sn-1)/2

Где A - число, из которого корень берется, Sn - n-тое приближение.
Формально считать надо до тех пор, пока |Sn - Sn-1| не станет меньше требуемой точности вычисления корня. Для целых чисел эта точность ~1, и число итераций примерно равно количеству значащих разрядов в числе A.
Сообщение Добавлено: Вт май 18, 2010 22:14
  Заголовок сообщения:  Есть ли в SP-Forth  Ответить с цитатой
Есть ли в SP-Forth функция для вычисления квадратного корня?
Сообщение Добавлено: Вт май 18, 2010 21:10

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


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