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

7511 commits

Author SHA1 Message Date
Kevin Ryde
272f823582 *** empty log message *** 2003-05-03 22:48:47 +00:00
Kevin Ryde
016668fa78 (Integer Operations): Describe how quotient,
remainder and modulo round their results.
2003-05-03 22:45:49 +00:00
Kevin Ryde
b5aa021523 In reduce-right, use @code on "reduce". 2003-05-03 22:39:08 +00:00
Kevin Ryde
1ae7b87851 (SRFI-1 Fold and Map): Fix typo "... variant of fold", add "f" to fold
call shown.
2003-05-03 22:36:36 +00:00
Kevin Ryde
e508c8630c (SRFI-1 Length Append etc): Add count. 2003-05-03 22:27:14 +00:00
Kevin Ryde
004fe2c802 (Processes): Fix typo "hhhh". 2003-05-03 22:24:36 +00:00
Kevin Ryde
218b088e2a Add spaces after some @defun names. 2003-05-03 22:22:51 +00:00
Marius Vollmer
b0780eb1a9 *** empty log message *** 2003-05-03 22:10:05 +00:00
Marius Vollmer
ed6de6e9bd (scm_ithrow): Remove "asm volatile" hack. It used to work around a
bug in GCC 2.95.2 but is now a bug in itself.
2003-05-03 22:09:20 +00:00
Marius Vollmer
d04229df7c *** empty log message *** 2003-05-03 21:34:49 +00:00
Marius Vollmer
4167fc5422 (point++n!, point+-n!): Use substring-move! instead of
substring-move-left! or substring-move-right!.  Thanks to Kevin Ryde.
2003-05-03 21:34:33 +00:00
Marius Vollmer
5b943a3f7f (substring-move-left!, substring-move-right!): New. 2003-05-03 21:34:23 +00:00
Marius Vollmer
6aa536b337 *** empty log message *** 2003-05-03 20:57:40 +00:00
Marius Vollmer
0d5271a27f *** empty log message *** 2003-05-03 20:52:53 +00:00
Marius Vollmer
297775ce69 (display-usage-report): Use keyword->symbol instead of keyword-symbol,
which doesn't exist.  Thanks to Kevon Ryde.
2003-05-03 20:52:31 +00:00
Marius Vollmer
2b24a689f6 *** empty log message *** 2003-05-03 20:41:49 +00:00
Marius Vollmer
f70b2b1e8f (hashq-cons-get-handle): Pass only the expected four arguments to
hashx-get-handle.  Thanks to Kevin Ryde!
2003-05-03 20:41:30 +00:00
Marius Vollmer
1b965c29e7 *** empty log message *** 2003-05-03 20:24:37 +00:00
Marius Vollmer
c7f670b879 (make-line-buffering-input-port) Pass 0 as second argument to
string-ref.  Thanks to Kevin Ryde!
2003-05-03 20:24:22 +00:00
Marius Vollmer
2e5b157d80 New. Thanks to Dale P. Smith for pointing us to these tests. 2003-05-03 19:58:55 +00:00
Marius Vollmer
1cbf4fe9d5 *** empty log message *** 2003-05-01 23:14:02 +00:00
Marius Vollmer
97f28fa42b (scm_rstate, scm_rng, SCM_SLOPPY_CONSP, SCM_SLOPPY_NCONSP,
scm_tc7_ssymbol, scm_tc7_msymbol, scm_tcs_symbols): New.
2003-05-01 23:11:51 +00:00
Neil Jerram
2ce02471a4 Indexing improvements in posix.texi. 2003-04-30 23:44:07 +00:00
Marius Vollmer
096ecbaf7d *** empty log message *** 2003-04-30 14:51:01 +00:00
Marius Vollmer
a0454d7215 (scm_protect_object, scm_unprotect_object, SCM_SETAND_CAR,
SCM_SETOR_CAR, SCM_SET_AND_CDR, SCM_SET_OR_CDR, SCM_FREEP, SCM_NFREEP,
SCM_GC8MARKP, SCM_SETGC8MARK, SCM_CLRGC8MARK, SCM_GCTYP16, SCM_GCCDR,
scm_remember, scm_the_root_module, scm_make_module,
scm_ensure_user_module, scm_load_scheme_module, scm_port,
scm_ptob_descriptor, scm_port_rw_active, scm_close_all_ports_except):
New.
2003-04-30 14:50:53 +00:00
Marius Vollmer
1a61d41b6c *** empty log message *** 2003-04-30 14:45:10 +00:00
Marius Vollmer
c2e1551674 (scm_c_port_for_each): Added. 2003-04-30 14:43:10 +00:00
Marius Vollmer
c536b4b32e * ports.c (scm_c_port_for_each): New function, mostly copied from
scm_port_for_each.
(scm_port_for_each): Reimplemented using scm_c_port_for_each.
* ports.h (scm_c_port_for_each): New prototype.
2003-04-30 14:38:53 +00:00
Neil Jerram
a1a5dfa888 SRFI 34 2003-04-30 00:06:33 +00:00
Mikael Djurfeldt
c8e1d35451 * eval.c (scm_m_atdispatch): Removed until actually needed. (This
macro was introduced in anticipation of GOOPS method compilation
code.)

* goops.c: Removed binding of @dispatch.
2003-04-28 12:43:45 +00:00
Dirk Herrmann
a4aa213486 * eval.c, goops.c (@dispatch, @slot-ref, @slot-set!): Move the
instructions that bind the macros on the scheme level back to
	goops.c in order to make sure again that the bindings go into the
	(oop goops) module and are not visible from the outside.
2003-04-28 06:05:10 +00:00
Dirk Herrmann
9fbee57e8e * eval.c: Non functional change: Separated R5RS and non-R5RS
macros into different sections of the file and ordered the
	memoizers alphabetically.
2003-04-27 12:06:48 +00:00
Dirk Herrmann
12841895dc * eval.c (scm_ilookup): Rewritten to improve readability. 2003-04-27 11:06:14 +00:00
Dirk Herrmann
6a3f13f070 * eval.c (scm_i_call_closure_0, call_closure_1, call_closure_2):
Partially reverted patch from 2003-04-23 in oder to find a better
	compromise between readability and debuggability.
2003-04-27 10:44:08 +00:00
Neil Jerram
d513f5c6b3 Document scm_str2symbol and scm_mem2symbol. 2003-04-26 15:30:59 +00:00
Neil Jerram
63bf8015ab Doc clarification from tomas@fabula.de. 2003-04-26 15:09:18 +00:00
Neil Jerram
a95dbade59 scm_sysmissing doc fix from Kevin Ryde. 2003-04-26 15:02:56 +00:00
Mikael Djurfeldt
56b97da987 * serialize.scm: New file. 2003-04-25 19:49:15 +00:00
Mikael Djurfeldt
ee2a6d9940 Comment fix 2003-04-25 19:48:33 +00:00
Dirk Herrmann
b0c5d67b98 * eval.c, eval.h, goops.c, goops.h (scm_m_atslot_ref,
scm_m_atslot_set_x, scm_m_atdispatch): Move the declarations and
	definitions of the special goops memoizers from goops.[ch] to
	eval.[ch].  Hmm... it seems that scm_m_atdispatch is not used
	throughout guile.
2003-04-25 16:22:47 +00:00
Mikael Djurfeldt
b9ad392e86 * ports.c, ports.h (scm_i_port_table_mutex): New mutex.
* fports.c (scm_evict_ports): Lock/unlock scm_i_port_table_mutex.

* ports.c (scm_close_port, scm_flush_all_ports): Ditto.

* ioext.c (scm_fdes_to_ports): Ditto.

* vports.c (scm_make_soft_port): Changed SCM_DEFER/ALLOW_INTS into
lock/unlock scm_i_port_table_mutex.

* strports.c (scm_mkstrport): Ditto.

* ports.c (scm_void_port, scm_port_for_each): Ditto.

* fports.c (scm_fdes_to_port): Ditto.
2003-04-24 16:02:04 +00:00
Mikael Djurfeldt
359aab2498 * threads.scm (n-for-each-par-map): New procedure. 2003-04-24 10:44:06 +00:00
Dirk Herrmann
4dce3c9645 * tests/syntax.test: Modified some tests to use eval when
providing bad syntax.  Otherwise, the memoizer will report an
	error immediately after reading the form, without even the chance
	to get the pass-if-exception mechanism started.
2003-04-23 19:04:00 +00:00
Dirk Herrmann
9247b5bca6 * tests/guardians.test: Added some more elaborate and
sophisticated tests for the guardian functionality.
2003-04-23 18:47:54 +00:00
Dirk Herrmann
d0b07b5def This set of patches contains no functional changes, only debatable
minor stylistic ones.  Still, in order to prepare a patch between
	my local copy and the CVS version, I decided to submit the changes
	below.  Then, the patch will hopefully only contain relevant
	modifications :-)

	* eval.c (iqq): Added const specifier.

	* eval.c (scm_trampoline_0, scm_trampoline_1, scm_trampoline_2):
	Use NULL instead of 0 to indicate that a pointer is returned.
	Removed some misleading 'fall through' comments.

	* eval.c (scm_i_call_closure_0, call_closure_1, call_closure_2):
	Split up long expressions into smaller ones to be more debugging
	friendly.
2003-04-23 18:27:37 +00:00
Dirk Herrmann
a98e8e985b * eval.h (SCM_ENTER_FRAME_HDLR, SCM_APPLY_FRAME_HDLR,
SCM_EXIT_FRAME_HDLR): Use SCM_PACK to convert data to a SCM value
	rather than casting to SCM.
2003-04-23 17:20:26 +00:00
Dirk Herrmann
c178c3a68b * sort.c, pairs.h: Removed unnecessary includes. 2003-04-23 16:49:30 +00:00
Dirk Herrmann
d339981a5a * test-suite/tests/sort.test: Added. Both tests in that file did
fail (one even with a segfault) with CVS guile before the recent
	changes to libguile/sort.c.

	* libguile/sort.c: Replaced hand-made trampline code by the new
	official mechanism from eval.c.  This fixes a segfault in the new
	test file test-suite/tests/sort.test.

	(quicksort, compare_function, scm_restricted_vector_sort_x,
	scm_sorted_p, scm_merge, scm_merge_list_x, scm_merge_x,
	scm_merge_list_step, scm_sort_x, scm_sort, scm_merge_vector_x,
	scm_merge_vector_step, scm_stable_sort_x, scm_stable_sort,
	scm_sort_list_x, scm_sort_list): Use trampoline mechanism from
	eval.c.

	(subr2less, lsubrless, closureless, applyless, scm_cmp_function,
	cmp_fun_t): Removed.

	(compare_function): Added.

	* libguile/sort.c (quicksort, SWAP, stack_node): Replaced pointer
	arithmetics with index arithmetics.  Changed quicksort to work on
	an array of SCM values instead of an array of characters.  Avoid
	bytewise copying of SCM elements.  Avoid allocating memory on the
	stack with alloca.  Fixed some comments.
2003-04-22 23:32:40 +00:00
Marius Vollmer
2d2f76fc5f *** empty log message *** 2003-04-22 22:41:39 +00:00
Marius Vollmer
2a3264974b Removed stray "o" from exports list. 2003-04-22 22:41:19 +00:00