This is the mail archive of the guile@cygnus.com mailing list for the guile project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
This is a change I think a lot of people have asked for. I think it makes Guile initialization a bit more rational. It does mean that you can't avoid the delay of loading boot-9.scm by not calling scm_compile_shell_switches. But I think it's better for folks to edit things out of boot-9.scm that they don't care about than to not load boot-9.scm at all, and leave Guile half-initialized. If folks think this is wrong, please let me know. At this point, some of you have done a lot more work as a user of Guile than I have, so you may well understand the issuse better than I do. * Changes to the gh_ interface ** The gh_enter function now takes care of loading the Guile startup files. gh_enter works by calling scm_boot_guile; see the remarks below. * Changes to the scm_ interface ** The function scm_boot_guile now takes care of loading the startup files. Guile's primary initialization function, scm_boot_guile, now takes care of loading `boot-9.scm', in the `ice-9' module, to initialize Guile, define the module system, and put together some standard bindings. It also loads `init.scm', which is intended to hold site-specific initialization code. Since Guile cannot operate properly until boot-9.scm is loaded, there is no reason to separate loading boot-9.scm from Guile's other initialization processes. This job used to be done by scm_compile_shell_switches, which didn't make much sense; in particular, it meant that people using Guile for non-shell-like applications had to jump through hoops to get Guile initialized properly. ** The function scm_compile_shell_switches no longer loads the startup files. Now, Guile always loads the startup files, whenever it is initialized; see the notes above for scm_boot_guile and scm_load_startup_files. ** Function: scm_load_startup_files This new function takes care of loading Guile's initialization file (`boot-9.scm'), and the site initialization file, `init.scm'. Since this is always called by the Guile initialization process, it's probably not too useful to call this yourself, but it's there anyway.