: load-conditional-requires ( vocab -- )
vocab-name require-when-vocabs get in? [
require-when-table get [
- [ [ vocab dup [ source-loaded?>> +done+ = ] when ] all? ] dip
+ [ [ lookup-vocab dup [ source-loaded?>> +done+ = ] when ] all? ] dip
[ require ] curry when
] assoc-each
] when ;
load-vocab drop ;
: require-when ( if then -- )
- over [ vocab ] all? [
+ over [ lookup-vocab ] all? [
require drop
] [
[ drop [ require-when-vocabs get adjoin ] each ]
] if ;
: reload ( name -- )
- dup vocab
+ dup lookup-vocab
[ [ load-source ] [ load-docs ] bi ]
[ require ]
?if ;
[
dup vocab-name blacklist get at* [ rethrow ] [
drop dup find-vocab-root
- [ (load-vocab) ] [ dup vocab [ ] [ no-vocab ] ?if ] if
+ [ (load-vocab) ] [ dup lookup-vocab [ ] [ no-vocab ] ?if ] if
] if
] load-vocab-hook set-global