On 7/26/07, Yuriy Zhilovets <[hidden email]> wrote:
Для итераторов нередко требуется еще и передача произвольного параметра
(для различения вызовов итераторов или передачи дополнительных аргументов).
Поэтому появляются дополнительные варианты
( xt param obj -- )
( obj xt param -- )
Если этот параметр нужен для xt, то итератор может ничего о нем не знать, достаточно прозрачного стека.
Пример. ENUM-VOCS ( xt -- ) \ xt ( i*x wid -- j*x )
: (ENUM-VOCS-FORTH) ( xt wid -- xt ) \ фильтр
DUP IS-CLASS-FORTH IF SWAP DUP >R EXECUTE R> EXIT THEN DROP
;
: ENUM-VOCS-FORTH ( xt -- ) \ xt ( wid -- )
\ перебор только обычных форт-словарей
['] (ENUM-VOCS-FORTH) ENUM-VOCS DROP
;
Или ты про другой случай? (тогда может, пример найдется?)
--
Ruvim