* threads.c (scm_timed_wait_condition_variable): Support timed
[bpt/guile.git] / libguile / ChangeLog
index bbef702..c6fd067 100644 (file)
@@ -1,3 +1,79 @@
+2003-01-10  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * threads.c (scm_timed_wait_condition_variable): Support timed
+       waiting also for simple condition variables.
+
+       * goops.c (TEST_CHANGE_CLASS): Use scm_change_object_class instead
+       of calling the procedure change-object-class.
+
+2003-01-09  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * ramap.c (scm_ramapc): Typo in error message.
+
+2003-01-08  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * goops.c (scm_sys_prep_layout_x): Bugfix: Only create layout for
+       slots with instance allocation.
+       
+       * goops.c, goops.h (scm_class_extended_generic_with_setter): New
+       class.
+       (scm_compute_applicable_methods): Use scm_generic_function_methods.
+
+       * goops.c (scm_generic_function_methods): Support extended
+       generic functions.
+
+2002-12-29  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * eval.c (unmemocopy): Bugfix: scm_sym_delay --> scm_sym_future.
+       Thanks to Neil for pointing this out!
+
+2002-12-29  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * lang.h: Remove declarations matching definitions removed from
+       lang.c (just below).
+
+2002-12-28  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * lang.c (scm_nil_cons, scm_nil_car, scm_nil_cdr, scm_null,
+       scm_m_while, scm_nil_eq): Remove definitions that were superfluous
+       and already commented out.
+
+       * read.h (scm_lreadparen), read.c (scm_lreadr, scm_read_token,
+       scm_lreadparen): Support reading vectors with Elisp syntax if
+       SCM_ELISP_READ_EXTENSIONS is defined.  (SCM_ELISP_READ_EXTENSIONS
+       is not currently defined, and there isn't even a configure switch
+       to enable it yet.)
+
+2002-12-26  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * Makefile.am (c-tokenize.o): Refer to source via $< so that vpath
+       builds work.
+       (EXTRA_DIST): Added version.h.in.
+       
+2002-12-21  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       This change makes it possible for one thread to do lazy sweeping
+       while other threads are running.  Now only the mark phase need to
+       have all threads asleep.  We should look further into this issue.
+       Presently, I've put the locking of scm_i_sweep_mutex at
+       "conservative" places due to my current lack of knowledge about
+       the garbage collector.  Please feel free to restrict these regions
+       further to allow for maximal parallelism!
+
+       * gc.c, gc.h (scm_i_sweep_mutex): New mutex.
+
+       * gc.c (scm_gc_for_newcell), gc-malloc.c (scm_realloc,
+       scm_gc_register_collectable_memory): Substitute locking of
+       scm_i_sweep_mutex for calls to scm_i_thread_put_to_sleep.
+       (scm_igc): Lock sweep mutex here instead of in callers; Calls to
+       scm_i_thread_put_to_sleep/scm_i_thread_wake_up used to demarkate
+       the single-thread section (which now only contains the mark
+       phase).
+       (scm_gc): Don't lock sweeo mutex here since scm_igc locks it;
+       Removed SCM_DEFER/ALLOW_INTS.  Simply call scm_igc directly.
+
+       * threads.c (gc_section_mutex): Removed.
+
 2002-12-19  Mikael Djurfeldt  <mdj@kvast.blakulla.net>
 
        * threads.c (create_thread): Clear parent field in root state in