Slava Pestov 2009-05-01 08:21:31 -05:00
parent 5e32a53011
commit 0b9212a2d6
4 changed files with 10 additions and 8 deletions

View File

@ -61,6 +61,10 @@ GENERIC: definitions-changed ( assoc obj -- )
[ V{ } clone definition-observers set-global ]
"compiler.units" add-init-hook
! This goes here because vocabs cannot depend on init
[ V{ } clone vocab-observers set-global ]
"vocabs" add-init-hook
: add-definition-observer ( obj -- )
definition-observers get push ;

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license.
USING: arrays vectors kernel kernel.private sequences
namespaces make math splitting sorting quotations assocs
combinators combinators.private accessors words init ;
combinators combinators.private accessors words ;
IN: continuations
SYMBOL: error
@ -200,5 +200,3 @@ M: condition compute-restarts
"kernel-error" 6 setenv ;
PRIVATE>
[ init-catchstack init-error-handler ] "continuations" add-init-hook

View File

@ -1,6 +1,8 @@
! Copyright (C) 2004, 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: kernel kernel.private sequences assocs namespaces namespaces.private ;
USING: continuations continuations.private kernel
kernel.private sequences assocs namespaces namespaces.private
continuations continuations.private ;
IN: init
SYMBOL: init-hooks
@ -14,7 +16,7 @@ init-hooks global [ drop V{ } clone ] cache drop
dup init-hooks get at [ over call( -- ) ] unless
init-hooks get set-at ;
: boot ( -- ) init-namespaces ;
: boot ( -- ) init-namespaces init-catchstack init-error-handler ;
: boot-quot ( -- quot ) 20 getenv ;

View File

@ -1,7 +1,7 @@
! Copyright (C) 2007, 2009 Eduardo Cavazos, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors assocs strings kernel sorting namespaces
sequences definitions init ;
sequences definitions ;
IN: vocabs
SYMBOL: dictionary
@ -69,8 +69,6 @@ SYMBOL: vocab-observers
GENERIC: vocabs-changed ( obj -- )
[ V{ } clone vocab-observers set-global ] "vocabs" add-init-hook
: add-vocab-observer ( obj -- )
vocab-observers get push ;