1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-02 21:10:27 +02:00
Commit graph

7511 commits

Author SHA1 Message Date
Marius Vollmer
9d9fa0928a *** empty log message *** 2003-06-09 20:23:24 +00:00
Marius Vollmer
8d54e73a89 Updated NEWS entry about threading. 2003-06-09 20:17:35 +00:00
Marius Vollmer
9134f724d8 *** empty log message *** 2003-06-09 20:02:59 +00:00
Marius Vollmer
1a973c42e2 (scm_peek_char): Safe the column of the port around the getc/ungetc
calls.  Thanks to Dr. Peter Ivanyi!
2003-06-09 20:02:20 +00:00
Kevin Ryde
ae0bdfe00d *** empty log message *** 2003-06-07 00:19:21 +00:00
Kevin Ryde
243a237bdd (Arithmetic): Cross reference glibc floor and ceil. 2003-06-07 00:18:33 +00:00
Kevin Ryde
f24783754b *** empty log message *** 2003-06-06 22:38:48 +00:00
Kevin Ryde
0e87743aac New file. 2003-06-06 22:38:20 +00:00
Kevin Ryde
056c43e7db #:re-export open-input-string, open-output-string and
get-output-string, for the benefit of applications wanting to use
#:select on the module.
2003-06-06 22:36:17 +00:00
Kevin Ryde
ee89863b09 Use inttypes.h and stdint.h when available, for INTPTR_MAX
and friends required by scm_t_bits setups.
2003-06-06 22:32:29 +00:00
Dirk Herrmann
6375e04059 * tags.h (scm_tc2_int): Added.
* tags.h (scm_tc3_int_1, scm_tc3_int_2): Expressed in terms of
	scm_tc2_int.

	* tags.h (scm_tcs_cons_imcar, scm_tcs_cons_nimcar, scm_tcs_struct,
	scm_tcs_closures): Hard coded values replaced by symbolic ones.
2003-06-06 06:02:20 +00:00
Kevin Ryde
dc07c1a185 *** empty log message *** 2003-06-05 01:03:06 +00:00
Kevin Ryde
9e996fb19f (Network Sockets and Communication): Cross reference
Ports node on explicit closing.
2003-06-05 01:02:41 +00:00
Kevin Ryde
7d5b2929b8 (Ports): Add notes on garbage collection, and on
explicitly closing file ports.
(File Ports): Cross reference Ports node on explicit closing.
2003-06-05 00:56:33 +00:00
Dirk Herrmann
f5c6ec2fb0 * test-suite/tests/chars.test: Fixed test comment. The bug that
this test detects was actually introduced by my patch from
	2003-05-31.

	* libguile/eval.c: Partially undid my patch from 2003-05-31.  This
	patch caused the segfault referenced in the previous changelog
	entry.
2003-06-04 23:50:13 +00:00
Dirk Herrmann
47dbd81e77 * test-suite/tests/chars.test: Added test, attempting to apply a
character.  This test will only pass if the other changes that are
	submitted together with this patch are also applied.

	* libguile/tags.h: Fixed comment about the immediate type code
	layout.

	* libguile/eval.c: Fixed handling of non-special instructions.
	Without this patch, guile will segfault on (#\0) and similar
	instructions.
2003-06-04 23:22:54 +00:00
Kevin Ryde
18f7ef3859 Shrink the futures entry, details now in the manual. 2003-06-04 16:46:02 +00:00
Kevin Ryde
e418bd7c12 *** empty log message *** 2003-06-04 16:38:59 +00:00
Kevin Ryde
b7d22e033c (reading): Test bad # error message is formattable. 2003-06-04 16:37:30 +00:00
Kevin Ryde
dd72382c32 (scm_input_error): Pass arg list parameter to scm_error_scm,
rather than SCM_EOL.  Needed by "Unknown # object" case in scm_lreadr.
2003-06-04 16:36:03 +00:00
Kevin Ryde
f0d1cf6f29 (Delayed Evaluation): Add delay, reword
promise? and force a bit, describe recursive forcing of a promise by
its own code.
2003-06-04 16:32:25 +00:00
Kevin Ryde
9e8c5bd0be (Futures): New section. 2003-06-04 16:21:32 +00:00
Kevin Ryde
3ec52c513f *** empty log message *** 2003-06-04 16:14:37 +00:00
Kevin Ryde
795c0baec6 (logcount): Add a few more tests, to exercise
recent scm_logcount change.
2003-06-04 16:12:09 +00:00
Kevin Ryde
e06beeadda (scm_max, scm_min): For inum, bignum and real, if other
operand is NaN, then return NaN.  Also avoid passing NaN to mpz_cmp_d.
2003-06-04 16:09:38 +00:00
Kevin Ryde
243bdb6381 Add an @: missing from
* srfi-modules.texi (SRFI-1 Deleting): Rewrite delete and
	delete-duplicates, adding behaviour details specified by srfi-1.
2003-06-04 15:48:36 +00:00
Kevin Ryde
5519096e55 (SRFI-13 Miscellaneous): In string-replace, note
that start1 and end1 optional is a Guile extension.
2003-06-04 15:46:40 +00:00
Kevin Ryde
f5f7888d1c (File System): stat:rdev and stat:blocks can return #f,
stat:blksize returns a sensible size if the field is not available.
2003-06-04 15:37:28 +00:00
Kevin Ryde
d23496c0c7 (Array Mapping): Reword for clarity, and in
particular have the same parameter names in the text and prototypes.
2003-06-04 15:33:13 +00:00
Dirk Herrmann
d0624e391b * __scm.h, gc-card.c (SCM_DEBUG_DEBUGGER_SUPPORT,
SCM_DEBUG_DEBUGGING_SUPPORT): Renamed macro
	SCM_DEBUG_DEBUGGER_SUPPORT to SCM_DEBUG_DEBUGGING_SUPPORT and
	generalized it to apply not only to C level functions but also to
	scheme level functions.

	* debug.c, debug.h, eval.c (make-iloc, scm_make_iloc, iloc?,
	scm_iloc_p, dbg-make-iloc, scm_dbg_make_iloc, dbg-iloc?,
	scm_dbg_iloc_p): Moved functions scm_make_iloc, scm_iloc_p to
	eval.c, made them available under SCM_DEBUG_DEBUGGING_SUPPORT == 1
	only and renamed them to scm_dbg_make_iloc, scm_dbg_iloc_p,
	respectively.

	* deprecated.h, eval.c, eval.h (SCM_ILOC00, SCM_IDINC,
	SCM_IDSTMSK): Deprecated.  The macro definitions are moved from
	eval.h into eval.c and a copy is placed into deprecated.h.

	* eval.c, eval.h (SCM_MAKE_ILOC): Removed from eval.h and placed
	into eval.c. This definition was not part of the API in any
	officially released version of guile and thus does not need to go
	through a phase of deprecation.
2003-06-04 05:28:34 +00:00
Dirk Herrmann
e90c3a895d * deprecated.c, deprecated.h, eval.c, eval.h: Deprecated
scm_s_expression, scm_s_test, scm_s_body, scm_s_bindings,
	scm_s_variable, scm_s_clauses, scm_s_formals.  In eval.c the
	definitions are make static and renamed from scm_s_xxx to s_xxx.
	In deprecated.c the original definitions are copied.

	* deprecated.h, eval.c, eval: Deprecated SCM_EVALIM2, SCM_EVALIM,
	SCM_XEVAL and SCM_XEVALCAR.  The macro definitions are moved from
	eval.h into eval.c and a copy (slightly modified to work in user
	code) is placed into deprecated.h.

	* eval.c: Use the local static s_xxx definitions instead of the
	scm_s_xxx definitions throughout.
2003-06-02 20:54:21 +00:00
Dirk Herrmann
14b18ed6f5 This set of patches separates the representation of the cxr family
of functions (car, cdr etc.) from the dsubr family of functions
	(i. e. functions that take a double precision floating point
	argument).  Further, the algorithm for handling the cxr function
	is improved.

	* eval.c (SCM_CEVAL, SCM_APPLY, scm_trampoline_1), numbers.c
	(scm_asinh, scm_acosh, scm_atanh, scm_truncate, scm_round, floor,
	ceil, sqrt, fabs, exp, log, sin, cos, tan, asin, acos, atan, sinh,
	cosh, tanh), objects.c (scm_class_of), procprop.c
	(scm_i_procedure_arity), ramap.c (scm_array_map_x), tags.h
	(scm_tc7_dsubr, scm_tcs_subrs): Introduce scm_tc7_dsubr as new
	typecode for the dsubr family of functions.

	* ramap.c (ramap_cxr, ramap_dsubr): Renamed ramap_cxr to
	ramap_dsubr.

	* eval.c (SCM_CEVAL, SCM_APPLY, call_cxr_1), pairs.c
	(scm_init_pairs): Make use of the (now usable) second cell element
	of a scm_tc7_cxr function to implement the cxr family of functions
	more efficiently.
2003-06-01 13:58:42 +00:00
Dirk Herrmann
e757438dc9 * tests/pairs.test: Added. 2003-06-01 13:37:32 +00:00
Dirk Herrmann
7673cf6866 * tests/vectors.test: Added. 2003-06-01 11:17:30 +00:00
Dirk Herrmann
6d63297be2 * tests/guardians.test: Uses module (ice-9 weak-vector). 2003-06-01 11:13:04 +00:00
Dirk Herrmann
2ca0d20720 * eval.c (SCM_CEVAL, SCM_APPLY, scm_trampoline_0,
scm_trampoline_1, scm_trampoline_2): Postpone error cases to the
	end of an if-else-if-sequence of checks.
2003-05-31 07:38:04 +00:00
Dirk Herrmann
9a069bdd77 * eval.c (SCM_CEVAL): Improved readability of call-with-values
execution.  Generalize apply_closure to apply_proc and use that
	for call-with-values.
2003-05-30 14:36:56 +00:00
Dirk Herrmann
e910e9d2eb * eval.c (SCM_CEVAL): Avoid one level of indirection when applying
a non closure.
2003-05-30 11:04:57 +00:00
Dirk Herrmann
e46083d5c5 * lib.scm: Documented the short form for pass-if and expect-fail.
(pass-if, expect-fail): Simplified.
2003-05-30 10:35:05 +00:00
Stefan Jahn
1e498fbd0f 2003-05-30 Stefan Jahn <stefan@lkcc.org>
* configure.in: Checking for unsetenv().

2003-05-30  Stefan Jahn  <stefan@lkcc.org>

        * posix.c (s_scm_putenv): Use the new HAVE_UNSETENV
        appropriately for mingw32 hosts.

        * numbers.h: Defining copysign(), isnan() and finite() to
        be prefixed by a single '_' for mingw32 hosts.
2003-05-30 09:39:34 +00:00
Kevin Ryde
c47e2599cb *** empty log message *** 2003-05-30 00:28:04 +00:00
Kevin Ryde
501da40398 (max, min): Add tests involving NaNs. 2003-05-30 00:24:33 +00:00
Kevin Ryde
713a425913 (z_negative_one): New variable.
(scm_init_numbers): Initialize it.
(scm_logcount): Use it and mpz_hamdist to count zeros for negatives.
2003-05-30 00:23:11 +00:00
Kevin Ryde
5f653c6a56 (Default Ports): Remove duplicate descriptions of
set-current-output-port and set-current-error-port.
2003-05-30 00:17:01 +00:00
Kevin Ryde
ab27fb593a Add substring-move-left! and substring-move-right!. 2003-05-30 00:13:33 +00:00
Stefan Jahn
2e945bccca 2003-05-29 Stefan Jahn <stefan@lkcc.org>
* configure.in: Removed -lm check and added a cached check for
        __libc_stack_end to get it building for mingw32 hosts.

2003-05-29  Stefan Jahn  <stefan@lkcc.org>

        * win32-dirent.c: Use malloc() instead of scm_malloc().

        * stime.c (s_scm_strftime): Add a type cast to avoid compiler
        warning.

        * posix.c (s_scm_putenv): Disable use of unsetenv() for the
        mingw32 build.

        * modules.c (s_scm_module_import_interface): Renamed local
        variable interface to _interface.  Seems like 'interface'
        is a special compiler directive for the mingw32 compiler.

        * mkstemp.c: Provide prototype to avoid compiler warning.

        * load.c (s_scm_search_path): Fixed absolute and relative
        path detections for native Windows platforms.

        * gc.h, threads.h: Export some more symbols using SCM_API
	(necessary to build on mingw32).

        * gc-freelist.c ("s_scm_map_free_list",
        "s_scm_gc_set_debug_check_freelist_x"): Fixed use of FUNC_NAME.

        * fports.c (fport_fill_input): Disable use of
        fport_wait_for_input() on Win32 platforms.

        * filesys.c (s_scm_basename): Fixed __MINGW32__ code.

        * Makefile.am: Modified some rules for cross compiling.

2003-05-29  Stefan Jahn  <stefan@lkcc.org>

        * raw-ltdl.c: Some more modifications for mingw32 platforms.

2003-05-29  Stefan Jahn  <stefan@lkcc.org>

        * Makefile.am (libguile_srfi_srfi_1_la_LDFLAGS,
        libguile_srfi_srfi_4_la_LDFLAGS,
        libguile_srfi_srfi_13_14__la_LDFLAGS): Added the -no-undefined
        option for the mingw32 build.

2003-05-29  Stefan Jahn  <stefan@lkcc.org>

        * standalone/Makefile.am: Setup to build on mingw32.
2003-05-29 14:39:13 +00:00
Dirk Herrmann
42ad901d04 * benchmark-suite/lib.scm: Fix some typos in the documentation.
* 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.
2003-05-27 18:33:19 +00:00
Kevin Ryde
5e25cd3925 *** empty log message *** 2003-05-26 01:00:59 +00:00
Kevin Ryde
74f76d628f (Locales): Clarify setlocale a bit, list all categories,
cross reference to libc.
2003-05-26 01:00:22 +00:00
Dirk Herrmann
ddd8f927d8 * libguile/eval.c (SCM_CEVAL): In case of an application, all checks
for a proper function object and the correct number of arguments are
	now performed in the application part of SCM_CEVAL.

	(scm_badformalsp):  Removed.

	* test-suite/tests/r5rs_pitfall.test: Test 2.1 now passes.
2003-05-25 07:50:23 +00:00