place patches from Kevin

svn: r11273
This commit is contained in:
Matthew Flatt 2008-08-15 15:59:39 +00:00
parent b58081fe3a
commit 9ecece65d7
5 changed files with 18 additions and 6 deletions

7
collects/scheme/place.ss Normal file
View File

@ -0,0 +1,7 @@
(module place '#%kernel
(#%require '#%place)
(#%provide place
place_sleep
place_wait
place?))

View File

@ -319,6 +319,7 @@ Scheme_Env *scheme_engine_instance_init() {
place_instance_init_pre_kernel(stack_base); place_instance_init_pre_kernel(stack_base);
make_kernel_env(); make_kernel_env();
scheme_init_parameterization_readonly_globals();
env = place_instance_init_post_kernel(); env = place_instance_init_post_kernel();
return env; return env;
@ -348,6 +349,8 @@ static void place_instance_init_pre_kernel(void *stack_base) {
scheme_make_thread(stack_base); scheme_make_thread(stack_base);
scheme_init_module_resolver();
#ifdef TIME_STARTUP_PROCESS #ifdef TIME_STARTUP_PROCESS
printf("process @ %ld\n", scheme_get_process_milliseconds()); printf("process @ %ld\n", scheme_get_process_milliseconds());
#endif #endif

View File

@ -319,8 +319,6 @@ void scheme_init_module(Scheme_Env *env)
scheme_install_type_writer(scheme_module_type, write_module); scheme_install_type_writer(scheme_module_type, write_module);
scheme_install_type_reader(scheme_module_type, read_module); scheme_install_type_reader(scheme_module_type, read_module);
scheme_init_module_resolver();
GLOBAL_PARAMETER("current-module-name-resolver", current_module_name_resolver, MZCONFIG_CURRENT_MODULE_RESOLVER, env); GLOBAL_PARAMETER("current-module-name-resolver", current_module_name_resolver, MZCONFIG_CURRENT_MODULE_RESOLVER, env);
GLOBAL_PARAMETER("current-module-declare-name", current_module_name_prefix, MZCONFIG_CURRENT_MODULE_NAME, env); GLOBAL_PARAMETER("current-module-declare-name", current_module_name_prefix, MZCONFIG_CURRENT_MODULE_NAME, env);

View File

@ -201,6 +201,7 @@ void scheme_init_dynamic_extension(Scheme_Env *env);
extern void scheme_regexp_initialize(Scheme_Env *env); extern void scheme_regexp_initialize(Scheme_Env *env);
#endif #endif
void scheme_init_memtrace(Scheme_Env *env); void scheme_init_memtrace(Scheme_Env *env);
void scheme_init_parameterization_readonly_globals();
void scheme_init_parameterization(Scheme_Env *env); void scheme_init_parameterization(Scheme_Env *env);
void scheme_init_getenv(void); void scheme_init_getenv(void);

View File

@ -815,18 +815,21 @@ void scheme_init_memtrace(Scheme_Env *env)
scheme_finish_primitive_module(newenv); scheme_finish_primitive_module(newenv);
} }
void scheme_init_parameterization(Scheme_Env *env) void scheme_init_parameterization_readonly_globals()
{ {
Scheme_Object *v;
Scheme_Env *newenv;
REGISTER_SO(scheme_exn_handler_key); REGISTER_SO(scheme_exn_handler_key);
REGISTER_SO(scheme_parameterization_key); REGISTER_SO(scheme_parameterization_key);
REGISTER_SO(scheme_break_enabled_key); REGISTER_SO(scheme_break_enabled_key);
scheme_exn_handler_key = scheme_make_symbol("exnh"); scheme_exn_handler_key = scheme_make_symbol("exnh");
scheme_parameterization_key = scheme_make_symbol("paramz"); scheme_parameterization_key = scheme_make_symbol("paramz");
scheme_break_enabled_key = scheme_make_symbol("break-on?"); scheme_break_enabled_key = scheme_make_symbol("break-on?");
}
void scheme_init_parameterization(Scheme_Env *env)
{
Scheme_Object *v;
Scheme_Env *newenv;
REGISTER_SO(recycle_cell); REGISTER_SO(recycle_cell);
REGISTER_SO(maybe_recycle_cell); REGISTER_SO(maybe_recycle_cell);