1 USING: kernel namespaces namespaces.private quotations sequences
2 assocs.lib math.parser math generalizations locals mirrors
7 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
9 : save-namestack ( quot -- ) namestack slip set-namestack ;
11 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
13 : make* ( seq -- seq ) [ dup quotation? [ call ] [ ] if ] map ;
15 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
17 : set* ( val var -- ) namestack* set-assoc-stack ;
19 : make-object ( quot class -- object )
20 new [ <mirror> swap bind ] keep ; inline
22 : with-object ( object quot -- )
23 [ <mirror> ] dip bind ; inline