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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: а плевал я на разбалансировку стеков!
СообщениеДобавлено: Вс июн 28, 2009 20:11 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4954
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
вощем, бывает лень отслеживать что и сколько возвращает параметров, к примеру на выходе из слова (может ничего, а может мусора кучу) и вобщем не стоит напрягаться ловить, к примеру:
Код:
: something ( addr --> )
            BEGIN DUP WHILE  ( --> addr )
                  1st operation WHILE ( --> ??? )
                  2st operation WHILE ( --> ??? )
                <LINK
              REPEAT \ лишние элементы
            THEN     \ на стеке данных можно
            THEN     \ удалять тут
            ;

но можно сделать так:
Код:
: something ( addr --> )
            <: BEGIN DUP WHILE  ( --> addr )
                  1st operation WHILE ( --> ??? )
                  2st operation WHILE ( --> ??? )
                <LINK
               REPEAT THEN THEN
            ;> CATCH DDROP ;

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


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

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6418
Благодарил (а): 14 раз.
Поблагодарили: 101 раз.
А еще можно запомнить DEPTH и потом восстановить.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс июн 28, 2009 20:20 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4954
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
Хищник писал(а):
А еще можно запомнить DEPTH и потом восстановить.

только CATCH это сделает сам (стеков может быть несколько отслеживаемых, например в форке еще и локальный стек есть)

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


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

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


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

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


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

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