"NS[" syntax added to closures
parent
3a8267f30f
commit
e7cc0d02c6
extra/closures
|
@ -1,7 +1,13 @@
|
||||||
USING: assocs io.pathnames fry namespaces kernel sequences parser ;
|
USING: assocs io.pathnames fry namespaces namespaces.private kernel sequences parser ;
|
||||||
IN: closures
|
IN: closures
|
||||||
SYMBOL: |
|
SYMBOL: |
|
||||||
|
|
||||||
|
! Selective Binding
|
||||||
: delayed-bind-with ( vars quot -- quot' ) '[ _ dup [ get ] map zip [ _ bind ] curry ] ;
|
: delayed-bind-with ( vars quot -- quot' ) '[ _ dup [ get ] map zip [ _ bind ] curry ] ;
|
||||||
SYNTAX: C[ | parse-until parse-quotation delayed-bind-with over push-all ;
|
SYNTAX: C[ | parse-until parse-quotation delayed-bind-with over push-all ;
|
||||||
! Common ones
|
! Common ones
|
||||||
SYNTAX: DIR[ parse-quotation { current-directory } swap delayed-bind-with over push-all ;
|
SYNTAX: DIR[ parse-quotation { current-directory } swap delayed-bind-with over push-all ;
|
||||||
|
|
||||||
|
! Namespace Binding
|
||||||
|
: bind-to-namespace ( quot -- quot' ) '[ namespace [ _ bind ] curry ] ;
|
||||||
|
SYNTAX: NS[ parse-quotation bind-to-namespace over push-all ;
|
Loading…
Reference in New Issue