* srfi-1.scm (iota map for-each map-in-order list-index member
[bpt/guile.git] / ice-9 / ChangeLog
index dcdea35..96eba46 100644 (file)
@@ -1,3 +1,308 @@
+2003-03-11  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * boot-9.scm (module-override!, make-mutable-parameter,
+       lookup-duplicates-handlers, default-module-duplicates-handler):
+       New functions.
+       (process-duplicates): Don't call duplicates handlers for duplicate
+       bindings of the same variable.
+       (process-define-module): Process #:replace.
+       (compile-interface-spec, resolve-interface): Process #:prefix.
+
+       * format.scm (format): Marked as replacement.
+
+       * threads.scm (future, future-ref): Marked as replacements.
+
+2003-03-07  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       These changes enables checking for duplicate imported bindings.
+
+       * boot-9.scm (process-define-module): Handle #:duplicates.
+       (module-use-interfaces! process-duplicates): New functions.
+       (duplicate-handlers): Dictionary of duplicate handlers.
+       (module-symbol-local-binding, module-symbol-binding): Bugfix.
+
+2003-03-04  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * session.scm (apropos): Use hash-for-each instead of
+       array-for-each.
+
+2003-02-19  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * boot-9.scm (make-module): Changed default size from 1021 to 31
+       (since the size now adapts).
+       (macro-table, xformer-table): Changed default size from 523 to 61.
+       (make-module): Don't call make-hash-table with zero size.
+
+       * Makefile.am (ice9_sources): Added weak-vector.scm.
+
+       * weak-vector.scm: New file.
+
+       * boot-9.scm (module-clear!): Use hash-clear!.
+       (module-for-each): Use hash-for-each.
+       (module-map): Use hash-map.
+
+2003-02-11  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * boot-9.scm (make-hash-table): Turned primitive.
+
+2003-01-27  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * syncase.scm (guile-macro): Strip syntactic information from
+       expression before trying to treat it as a Guile macro call.
+       (Thanks to Kevin Ryde.)
+
+2003-01-24  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * threads.scm (parallel, letpar): Rewritten.
+
+2003-01-23  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * threads.scm (par-mapper, n-par-map, n-par-for-each): Use
+       futures.
+
+2003-01-20  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * occam-channel.scm (alt): New syntax.
+
+       * psyntax.ss (self-evaluating?): Removed.  Guile now provides this
+       operator as a primitive procedure.
+       (build-data): Quote vectors (psyntax.ss requires this).
+
+2003-01-19  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * psyntax.ss (self-evaluating?): Allow procedures implanted in
+       source.  (Guile uses this internally.)
+
+2003-01-16  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * psyntax.ss (build-data): Don't quote self-evaluating expressions
+       in output.  (We normally *would* like also these expressions to be
+       quoted, but until Guile's native macros and syncase cooperates
+       better, it is less destructive not to quote.)
+       (self-evaluating?): Removed null? (In Guile, the empty list is not
+       self-evaluating).
+       (sc-chi): Export chi as sc-chi.
+       (external-macro): New syntax type.
+
+       * psyntax.pp: Regenerated.
+
+       * compile-psyntax.scm: Set expansion-eval-closure.
+
+       * boot-9.scm (use-syntax): Return *unspecified*.
+
+       * syncase.scm: Set expansion-eval-closure to
+       the-syncase-eval-closure during booting so that variables are
+       created in the correct module.
+       (syncase): Set expansion-eval-closure.
+       (define-syntax define-syntax-public eval-when fluid-let-syntax
+       identifier-syntax let-syntax letrec-syntax syntax syntax-case
+       syntax-rules with-syntax include): Removed definitions (these are
+       created from within psyntax.pp).
+       Enable expansion of Guile macros during a syntax-case
+       transformation.
+
+2003-01-10  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * occam-channel.scm (make-channel): Renamed from channel.
+       (make-timer): New function.
+
+       * Makefile.am (ice9_sources): Added occam-channel.scm.
+
+       * occam-channel.scm: New file.  Implements occam-like channels.
+
+2002-12-28  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * boot-9.scm (module-defined-hook): New hook, run whenever a new
+       module is defined.
+       (process-define-module): Run this hook.
+
+2002-12-18  Mikael Djurfeldt  <mdj@kvast.blakulla.net>
+
+       * threads.scm: Removed bogus definition of future-ref.
+
+2002-12-15  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * threads.scm (par-map, par-for-each): Reimplemented using
+       joing-thread.
+       (parallel): Reimplemented using futures.
+       (n-par-map, n-for-each): New procedures.
+
+2002-12-12  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * optargs.scm (improper-list-copy): New.
+       (parse-arglist): Use it instead of list-copy.
+
+2002-12-09  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * threads.scm (letpar): New macro.
+
+2002-12-08  Rob Browning  <rlb@defaultvalue.org>
+
+       * debugger/breakpoints/Makefile.am (subpkgdatadir): VERSION ->
+       GUILE_EFFECTIVE_VERSION.
+
+       * debugger/Makefile.am (subpkgdatadir): VERSION ->
+       GUILE_EFFECTIVE_VERSION.
+
+       * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
+
+2002-12-04  Mikael Djurfeldt  <mdj@linnaeus>
+
+       * threads.scm (parallel): New macro.
+        (par-map, par-for-each): New procedures.
+
+       * documentation.scm (object-documentation): Added support for
+       defmacros.
+
+2002-11-24  Dirk Herrmann  <D.Herrmann@tu-bs.de>
+
+       * boot-9.scm (re-export-syntax):  Re-introduced after accidentally
+       removing it in my patch from 2002-11-16.
+
+2002-11-24  Dirk Herrmann  <D.Herrmann@tu-bs.de>
+
+       Thanks to Mikael Djurfeldt for a bugreport which led to the
+       following changes:
+
+       * slib.scm (%system-define): Removed.
+
+       (define): Changed to use define-private instead of
+       %system-define.
+
+       * boot-9.scm (define-private): Undid my changes from 2002-11-16
+       until Guile supports hygienic macros.
+
+2002-11-17  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * emacs.scm (emacs-load): Locally define `read-and-eval!', as it
+       has been removed from the core.
+
+2002-11-16  Dirk Herrmann  <D.Herrmann@tu-bs.de>
+
+       * syncase.scm (define-syntax, eval-when, fluid-let-syntax,
+       identifier-syntax, let-syntax, letrec-syntax, syntax, syntax-case,
+       syntax-rules, with-syntax, include):  Changed definitions to form
+       'real' macro definitions.
+
+2002-11-16  Dirk Herrmann  <D.Herrmann@tu-bs.de>
+
+       * boot-9.scm (define-private, export-syntax, export-syntax):
+       Fixed my previous fix (blush).
+
+2002-11-16  Dirk Herrmann  <D.Herrmann@tu-bs.de>
+
+       * boot-9.scm (define-private, export-syntax, export-syntax):
+       Changed definitions to form 'real' macro definitions.
+
+2002-11-07  Marius Vollmer  <marius.vollmer@uni-dortmund.de>
+
+       * format.scm (format): Use 'monitor' properly.  Not the definition
+       needs to be restricted, the actual function needs to be.
+
+2002-11-05  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * boot-9.scm (define-option-interface): Fix to "simplification"
+       change below.
+
+       * debugger/breakpoints/source.scm: Enable source property
+       recording when module is loaded.
+       (##): Cope with ports whose `filename' is not a string.
+
+2002-11-04  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * boot-9.scm (define-option-interface): Simplify code-generation
+       code.
+
+       * debugger/command-loop.scm (read-and-dispatch-command): Import
+       set-readline-prompt dynamically if we need to.  (Previous
+       arrangement didn't work if this module was loaded before (ice-9
+       readline).)
+
+2002-11-03  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * format.scm (format): Wrap a monitor around format:format since
+       it is not thread-safe.
+
+2002-10-27  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * threads.scm (%thread-handler): Explicitely return '#f'.  This
+       value will be returned by join-thread.
+
+2002-10-26  Neil Jerram  <neil@ossau.uklinux.net>
+
+       Merging debugger enhancements previously in separate
+       `guile-debugger' package ...
+       
+       * debugger.scm: Factored out into the following constituent parts
+       - see comment in file for more details.
+       (*not-yet-introduced*): New (avoids repeatedly introducing the
+       debugger when entering it from breakpoints).
+       (debug-stack): New.
+       (debug): Rewrite to use more general `debug-stack'.
+
+       * debugger/commands.scm, debugger/command-loop.scm,
+       debugger/state.scm, debugger/utils.scm: New files containing bits
+       of old (ice-9 debugger), plus some rewriting and enhancements for
+       breakpoint support ...
+
+       * debugger/state.scm (state-rtd): Add flags field.
+       (make-state): Extend to optionally take flags.
+       (state-flags): New, accessor for flags field.
+       (set-state-index!, set-stack-index!): New.
+       (write-state-short): Rewritten to print out the current source
+       location in a way that is more easily trackable by Emacs.
+       
+       * debugger/commands.scm (assert-continuable, continue, finish,
+       trace-finish, step, next): New debugger commands for continuing
+       execution from a breakpoint.
+
+       * debugger/behaviour.scm, debugger/breakpoints.scm,
+       debugger/breakpoints/procedural.scm,
+       debugger/breakpoints/range.scm, debugger/breakpoints/source.scm,
+       debugger/trap-hooks.scm, debugger/trc.scm: New files - breakpoint
+       support.
+
+       * Makefile.am (SUBDIRS): Add debugger subdirectory.
+
+       * debugger/Makefile.am, debugger/breakpoints/Makefile.am: New.
+       
+2002-10-21  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * threads.scm (%thread-handler): Do not call unmask-signals, that
+       should be unnecessary now.
+
+2002-10-20  Mikael Djurfeldt  <mdj@linnaeus>
+
+       * boot-9.scm (top-repl): Look for use-emacs-interface in
+       guile-user-module (should it be there?) instead of
+       the-root-module.
+
+2002-10-10  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * boot-9.scm (top-repl): Use 2 as the limit when saving the stack.
+       (error-catching-loop): use call-with-blocked-asyncs and
+       call-with-unblocked-asyncs instead of mask-signals and
+       unmask-signals.
+       
+2002-10-09  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * buffered-input.scm (make-buffered-input-port): Build an
+       input-waiting thunk for just extended version of make-soft-port.
+
+2002-10-04  Rob Browning  <rlb@defaultvalue.org>
+
+       * boot-9.scm (expt): switch if sense and use negative? rather than
+       >= 0.
+
+2002-10-04  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * boot-9.scm (top-repl): Use "1" instead of "%deliver-signals" to
+       limit the signal stack.
+
+2002-09-15  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * boot-9.scm (feature?): Added deprecation message.
+
 2002-09-14  Rob Browning  <rlb@defaultvalue.org>
 
        * boot-9.scm (sqrt): minor indentation fix.