factor/basis/locals/backend/backend.factor

18 lines
491 B
Factor
Raw Normal View History

2008-07-23 01:16:49 -04:00
! Copyright (C) 2008 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
2008-08-12 04:31:48 -04:00
USING: math kernel slots.private sequences effects words ;
2008-04-17 04:05:36 -04:00
IN: locals.backend
: load-locals ( n -- )
dup zero? [ drop ] [ swap >r 1- load-locals ] if ;
: get-local ( n -- value )
dup zero? [ drop dup ] [ r> swap 1- get-local swap >r ] if ;
: local-value 2 slot ; inline
: set-local-value 2 set-slot ; inline
: drop-locals ( n -- )
dup zero? [ drop ] [ r> drop 1- drop-locals ] if ;