dynamic lambdas

db4
Sam Anklesaria 2009-06-21 21:07:16 -05:00
parent 0f7c3956d1
commit 08c386f534
1 changed files with 7 additions and 3 deletions

View File

@ -1,5 +1,9 @@
USING: assocs kernel math namespaces sequences ;
USING: accessors assocs fry generalizations kernel math
namespaces parser sequences words ;
IN: set-n
: get* ( var n -- val ) namestack swap tail-slice* assoc-stack ;
: get* ( var n -- val ) namestack dup length rot - head assoc-stack ;
: set* ( val var n -- ) 1 + namestack [ length swap - ] keep nth set-at ;
! dynamic lambda
SYNTAX: :| (:) dup in>> dup length [ spin '[ _ narray _ swap zip _ bind ] ] 2curry dip define-declared ;