* boot-9.scm (load-module): Support an optional custom reader arg,
implemented by passing on to r4rs's load.
* r4rs.scm (load): Support an optional custom reader arg,
implemented by passing on to primitive-load.
* load.c (the_reader, the_reader_fluid_num): New.
(scm_primitive_load): Support custom reader.
(scm_init_load): Init the_reader and the_reader_fluid_num; export
the_reader as `current-reader'.
make-uniform-vector, make-uniform-array, list->uniform-vector):
Moved from arrays.scm to deprecated.scm.
* arrays.scm, boot-9.scm (array-dimensions): Moved from arrays.scm
to boo-9.scm.
* Makefile.am (ice9_sources): Removed arrays.scm.
Previously, 'app' was reserved in every module. Now '%app' is
reserved, which is slightly better. The real fix is to not use
'local-ref' etc to find modules. Changed all uses.
* syncase.scm: Changed 'app' to '%app'.
preceed their first usage. Include and define deprecated stuff
late in the file to have a better change of detecting accidental
uses of deprecated definitions. Further, unified the layout a
little and grouped definitions more cleanly into topics.
code in order to avoid compiler used uninitialized warnings.
* hashtab.c, hashtab.h (scm_hash_map_to_list): Renamed from
scm_hash_map.
(scm_hash_fold): Use scm_call_3 directly in the call to
scm_internal_hash_fold instead of going via fold_proc (which is
now removed).
(scm_hash_for_each): Use a trampoline +
scm_internal_hash_for_each_handle.
(scm_internal_hash_for_each_handle, scm_hash_for_each_handle): New
functions.
false-if-exception is used within syntax-rules. (Suspect syntax-rules
ought to support this sort of thing, but it doesn't right now.)
* boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
to depend on expansion environment.
follow the effective UID/GID not the real ID. file-exists? is
normally be used as a prelude to opening or some other operation, and
it's the effective ID which will apply there. Emacs file-exists-p
uses stat, presumably for the the same reason.
* doc/ref/scheme-compound.texi: Clarified that vectors need to
be quoted.
* doc/tutorial/guile-tut.texi: Fix example, where a vector
constant is used without quoting.
* ice-9/boot-9.scm (make-autoload-interface): Added missing
quote around vector constant.
* test-suite/tests/elisp.test: Added missing quote around vector
constants.
and merge-accessors handlers are available also before (oop goops)
has been loaded. This is so that people can put them as default
handlers without worrying about availability.
* srfi-17.scm: Mark replacements.
* boot-9.scm (module-make-local-var!): Use module-add!.
(module-primitive-add!): New function.
(resolve-interface): Use
(call-with-deferred-observers, module-call-observers): New
functions.
(module-defer-observers, module-defer-observers-mute,
module-defer-observers-table): New variables.
(process-define-module, process-use-modules, export, re-export):
Use call-with-deferred-observers.
* syncase.scm (eval): Mark as replacement.
* boot-9.scm (defmacro-public): Use export-syntax instead of export.
a local version.
(provide, provided?): Mark as replacements.
* boot-9.scm (beautify-user-module!): Don't install the duplicates
handler here.
(default-duplicate-binding-handler): Renamed from
default-module-duplicates-handler; Removed converter.
(process-duplicates): Lookup default duplicates handler dynamically.
(default-duplicate-binding-procedures): New parameter.