1 ! Copyright (C) 2005, 2006 Eduardo Cavazos
3 ! Thanks to Mackenzie Straight for the idea
5 USING: accessors kernel parser lexer words words.symbol
6 namespaces sequences quotations ;
10 : define-var-getter ( word -- )
11 [ name>> ">" append create-in ] [ [ get ] curry ] bi
12 (( -- value )) define-declared ;
14 : define-var-setter ( word -- )
15 [ name>> ">" prepend create-in ] [ [ set ] curry ] bi
16 (( value -- )) define-declared ;
18 : define-var ( str -- )
22 [ define-var-setter ] tri ;
25 scan define-var ; parsing
27 : define-vars ( seq -- )
31 ";" parse-tokens define-vars ; parsing