*** empty log message ***
[bpt/guile.git] / libguile / ChangeLog
index 6212314..8f75412 100644 (file)
@@ -1,5 +1,221 @@
+2001-08-27  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * ports.c, ports.h, fprots.c, gc.c, ioext.c: Replaced
+       "scm_t_portable" with "scm_port_table" which was an artifact from
+       the great "scm_*_t -> scm_t_" renaming.
+
+2001-08-25  Thien-Thi Nguyen  <ttn@revel.glug.org>
+
+       * gc_os_dep.c (GC_noop1): Move before `GC_find_limit' where it is
+       used; nfc.  Thanks to Bill Schottstaedt.
+
+       * validate.h (SCM_VALIDATE_USHORT_COPY, SCM_VALIDATE_SHORT_COPY,
+       SCM_VALIDATE_UINT_COPY, SCM_VALIDATE_INT_COPY): New macros.
+       Thanks to Chris Cramer.
+
+2001-08-25  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
+
+       * eval.c (scm_m_atbind): Redesigned to behvae like `let', but with
+       dynamic scope.
+       * dynwind.h (scm_swap_bindings): Declare.
+       * dynwind.c (scm_swap_bindings): Make non-static.
+
+2001-08-25  Michael Livshin  <mlivshin@bigfoot.com>
+
+       * gc.c (scm_gc_sweep): now can sweep unreachable variables (by
+       doing exactly nothing about them).  thanks Neil!
+
+2001-08-18  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * __scm.h (SCM_ENABLE_VCELLS): Fix spelling mistake in comment.
+
+2001-08-17  Thien-Thi Nguyen  <ttn@revel.glug.org>
+
+       * gc.c: Fix omission bug: Add `heap_segment' forward decl
+       (proto) in the case when either `GUILE_DEBUG' or
+       `GUILE_DEBUG_FREELIST' preprocessor symbols are defined.
+
+       (map_free_list): Fix typo: Ref `f' correctly.
+
+       Thanks to Chris Cramer.
+
+2001-08-15  Rob Browning  <rlb@defaultvalue.org>
+
+       * Makefile.am (libguile_la_LDFLAGS): use libtool interface version
+       variables.
+       (libpath.h): change libguileversion to libguileinterface.
+
+2001-08-07  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * Makefile.am (EXTRA_DIST): Distribute ChangeLog-1996-1999 and
+       ChangeLog-2000.  Thanks to Daniel Skarda!
+
+2001-08-07  Michael Livshin  <mlivshin@bigfoot.com>
+
+       * guile-snarf-docs-texi.in: don't call the tokenizer here, we now
+       do it from the Makefile.
+
+       * Makefile.am: rearrange the snarfing slightly, so that .doc files
+       are of a reasonable size.
+
+2001-08-02  Neil Jerram  <neil@ossau.uklinux.net>
+
+       * stacks.c (scm_make_stack): Improve docstring by explaining use
+       of cutting args.
+
+2001-08-01  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * chars.c (scm_char_alphabetic_p, scm_char_numeric_p,
+       scm_char_whitespace_p, scm_char_upper_case_p,
+       scm_char_lower_case_p, scm_char_is_both_p): Do not require
+       characters to fulfill isascii in addition to the primary
+       predicate.
+
+2001-07-30  Dirk Herrmann  <D.Herrmann@tu-bs.de>
+
+       * numbers.c (DIGITS, scm_small_istr2int, scm_istr2int,
+       scm_istr2flo, scm_istring2number):  Removed.
+
+       (iflo2str, scm_real_p, scm_integer_p):  Use SCM_<foo> instead of
+       SCM_SLOPPY_<foo>.
+
+       (t_exactness, t_radix, DIGIT2UINT, XDIGIT2UINT, mem2uinteger,
+       mem2decimal_from_point, mem2ureal, mem2complex, scm_i_mem2number):
+       Added.
+
+       (scm_string_to_number):  Use new number parser.
+
+       (scm_exact_to_inexact):  Replace dummy by a GPROC, which also
+       handles complex numbers.
+
+       * numbers.h (NUMBERSH, SCM_NUMBERS_H): Rename <foo>H to
+       SCM_<foo>_H.
+
+       (SCM_INEXACTP, SCM_REALP, SCM_COMPLEXP):  Prefer !SCM_<pred> over
+       SCM_N<pred>.
+
+       (scm_istr2int, scm_istr2flo, scm_istring2number):  Removed.
+
+       (scm_i_mem2number):  Added.
+
+       (scm_exact_to_inexact):  Changed signature.
+
+       * read.c (scm_lreadr):  Perform the shortcut test for '+ and '-
+       here instead of within scm_i_mem2number.  Call scm_i_mem2number
+       instead of scm_istr2int and scm_istring2number.
+
+2001-07-30  Dirk Herrmann  <D.Herrmann@tu-bs.de>
+
+       * eval.c (scm_lookupcar, scm_m_body, scm_m_lambda, unmemocopy,
+       scm_unmemocopy, scm_badargsp, scm_eval_body, CHECK_EQVISH,
+       SCM_CEVAL, scm_nconc2last, SCM_APPLY, scm_copy_tree):  Prefer
+       !SCM_<pred> over SCM_N<pred>.
+
+       (scm_eval_body):  Remove side effecting code from macro call.
+
+       (SCM_CEVAL, SCM_APPLY):  Remove goto statement and redundant
+       SCM_NIMP test.
+
+2001-07-30  Dirk Herrmann  <D.Herrmann@tu-bs.de>
+
+       * pairs.h (SCM_VALIDATE_PAIR):  Use SCM_CONSP, not SCM_ECONSP.
+
+2001-07-29  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       Removed vcell slot from structs.
+
+       * struct.h (scm_vtable_index_vcell): Removed.  Renumbered
+       subsequent indices.
+
+       * struct.c (scm_struct_vtable_p): Do not check vcell slot for
+       zero.  Use scm_vtable_index_layout instead of "0" when accessing
+       said slot.
+       (scm_init_struct): Remove vcell slot layout code from
+       required_vtable_fields.
+
+       * objects.h (scm_si_redefined, scm_si_hashsets): Renumbered.
+
+       * goops.c (build_class_class_slots): Removed vcell slot
+       definition.
+
+       * goops.h: Renumbered slot indices. (SCM_CLASS_CLASS_LAYOUT):
+       Removed vcell slot layout code.
+       (scm_si_vcell): Removed.
+
+2001-07-26  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       "Glocs" have been removed.
+
+       * tags.h: Update tag system docs.
+       (scm_tc3_cons_gloc): Renamed to scm_tc3_struct.  Changed all uses.
+       (scm_tcs_cons_gloc): Renamed to scm_tcs_struct.  Changed all uses.
+       (SCM_ECONSP, SCM_NECONSP): Removed.  Changed all uses to SCM_CONSP
+       or SCM_NCONSP, respectively.
+
+       * struct.c, struct.h, srcprop.c, procs.c, procprop.c, print.c,
+       objects.c. modules.c, goops.c, eval.c, debug.c: Changed all uses
+       of scm_tc3_cond_gloc and scm_tcs_cons_gloc.  See above.
+
+       * print.c (scm_iprin1): Remove printing of glocs.  Do not try to
+       tell glocs from structs.
+
+       * gc.c (scm_gc_mark, scm_gc_sweep): Remove handling of glocs.
+
+       * eval.c (scm_m_atbind): Make a list of variables, not glocs.
+       (scm_ceval, scm_deval): For SCM_IM_BIND, fiddle with variables
+       instead of with glocs.
+       (EVALCAR): Do not test for glocs.
+       (scm_lookupcar, scm_lookupcar1): Do not handle glocs in race
+       condition.
+       (scm_unmemocar): Do not handle glocs.
+       (scm_m_atfop): Memoize as a variable, not as a gloc.
+       (scm_eval_args, scm_deval_args): Do not handle glocs.
+       (scm_ceval, scm_deval): Likewise.
+
+       * eval.h (SCM_XEVALCAR): Do not test for glocs.
+       (SCM_GLOC_VAR, SCM_GLOC_VAL, SCM_GLOC_SET_VAL, SCM_GLOC_VAL_LOC):
+       Removed.
+
+       * debug.h, debug.c (scm_make_gloc, scm_gloc_p): Removed.
+
+       * dynwind.c (scm_swap_bindings): Likewise.
+       (scm_dowinds): Updated to recognize lists of variables instead of
+       lists of glocs.
+
+       * __scm.h (SCM_CAUTIOS, SCM_RECKLESS): Update comments.
+
+
+       * gc_os_dep.c (GC_noop1): Moved into the same #if/#endif context
+       where it is needed.
+
+2001-07-25  Gary Houston  <ghouston@arglist.com>
+
+       * numbers.c (scm_logand, scm_logior, scm_logxor): adjusted the
+       docstrings to reflect the n-ary implementation.
+
+2001-07-26  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * eval.c (scm_ceval, scm_deval): Use "RETURN" macro when returning
+       value of a variable, not the plain "return" statement.
+
+2001-07-25  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * eval.c: Allow variables in memoized code (in addition to glocs).
+       (scm_lookupcar): Handle variables in lost races.  Replace symbol
+       with variable directly, do not make a gloc.
+       (scm_unmemocar): Rewrite variables using a reverse lookup, just
+       like glocs.
+       (scm_ceval, scm_deval): Deal with variables in SCM_IM_SET and in
+       the main switch.
+
 2001-07-25  Marius Vollmer  <marius.vollmer@uni-dortmund.de>
 
+       * variable.c (scm_i_variable_print): Use "value" instead of
+       "binding" since a binding is the mapping between symbols and
+       variables, not between variables and their values.
+
        * tags.h (scm_tc7_variable): New.
        * gc.c (scm_gc_mark): Handle scm_tc7_variable objects.
        * print.c (scm_iprin1): Likewise.
        (variable_equal_p): Removed.
        (make_variable): Construct a tc7 object instead of a smob.
        (scm_init_variable): Do not register smob.
-       
+
 2001-07-22  Marius Vollmer  <mvo@zagadka.ping.de>
 
        * tags.h: Include inttypes.h when we have it.
        * tags.h (SCM_UNBOUND): Make it the 34th isym/iflag, the 33th slot
        is taken by the new SCM_IM_CALL_WITH_VALUES.
        * print.c (scm_isymnames): Update table accordingly.
-       
+
 2001-07-22  Gary Houston  <ghouston@arglist.com>
 
        * regex-posix.c (s_scm_regexp_exec): use scm_long2num not
 
        * print.c (scm_simple_format): Support "~~" and "~%".  Signal
        error for unsupported format controls and for superflous
-       arguments.  Thanks to David Skarda!
+       arguments.  Thanks to Daniel Skarda!
 
        * print.h, print.c (scm_print_symbol_name): Factored out of
        scm_iprin1.