Commit graph

313 commits

Author SHA1 Message Date
Gary Houston
d8859d6bd8 *** empty log message *** 2000-04-10 21:56:38 +00:00
Gary Houston
bf0e28d8f1 *** empty log message *** 2000-04-09 21:10:33 +00:00
Mikael Djurfeldt
304b56da60 *** empty log message *** 2000-04-04 11:40:49 +00:00
Michael Livshin
b87e3d4d19 * streams.scm (stream-fold, stream-for-each): don't use named let,
because it prevents the gc from junking the stream argument.
2000-04-03 15:38:35 +00:00
Greg J. Badros
df8bb2dc39 *** empty log message *** 2000-03-09 16:21:55 +00:00
Greg J. Badros
e510ed373f *** empty log message *** 2000-03-02 20:44:28 +00:00
Greg J. Badros
0f202d3f36 *** empty log message *** 2000-03-01 21:18:35 +00:00
Greg J. Badros
92540145dd *** empty log message *** 2000-02-14 02:04:20 +00:00
Mikael Djurfeldt
b1c7c8f1ec *** empty log message *** 2000-02-11 04:48:18 +00:00
Gary Houston
bd9e24b301 * strings.h: don't use SCM_P. don't include <string.h>.
* error.c, gh_data.c, ports.c, script.c, strop.c: include <string.h>.

	* strings.c (scm_string_ref): make the 2nd argument compulsory.
	previously it defaulted to zero for no good reason that I can see.
	use a local variable for SCM_INUM (k).  replace
	SCM_VALIDATE_INUM_DEF with SCM_VALIDATE_INUM_COPY.

	(scm_makfromstr): cosmetic changes.

	(scm_string): Accept only chars in the list, not strings, for
	conformance to R5RS (particularly for list->string, which is
	supposed to be the inverse of string->list.)  remove
	SCM_DEFER_INTS/SCM_ALLOW_INTS, which is unnecessary since
	scm_makstr handles the cell allocation.  when reporting wrong-type
	arg, don't report the position as 1.

	* posix.c (scm_init_posix): intern PIPE_BUF if it's defined.

	* boot-9.scm (find-and-link-dynamic-module): pass strings, not symbols,
	to string-append.
2000-01-31 18:29:56 +00:00
Gary Houston
28d77376bc * filesys.c (scm_select, retrieve_select_type, get_element,
fill_select_type, set_element): modified so that Scheme
	"select" tests port buffers for the ability to provide input
	or accept output.  Previously only the underlying file descriptors
	were checked.  Rewrote the docstring.

	* expect.scm (expect): don't call char-ready? before expect-select,
	since select now checks port buffers itself.  don't bother to check
	the time first either, since expect-select does it.
2000-01-29 18:04:38 +00:00
Greg J. Badros
078e909286 *** empty log message *** 2000-01-20 21:01:13 +00:00
Greg J. Badros
7965d98fd6 *** empty log message *** 2000-01-11 18:52:55 +00:00
Marius Vollmer
f73d2411a5 *** empty log message *** 2000-01-10 00:38:02 +00:00
Gary Houston
f353a9e232 * slib.scm (library-vicinity, home-vicinity,
scheme-implementation-type, scheme-implemenation-version):
	use define-public to export from the module.
1999-12-15 18:12:44 +00:00
Greg J. Badros
e18a3a4d23 *** empty log message *** 1999-12-15 16:35:38 +00:00
Greg J. Badros
62b8227439 *** empty log message *** 1999-12-13 03:47:14 +00:00
Greg J. Badros
5622c63001 *** empty log message *** 1999-12-13 02:57:30 +00:00
Gary Houston
afe5177e7f * acconfig.h: add HAVE_ARRAYS.
* configure.in: add --disable-arrays option, probably temporary.

	* the following changes allow guile to be built with the array
	"module" omitted.  some of this stuff is just tc7 type support,
	which wouldn't be needed if uniform array types were converted
	to smobs.

	* tag.c (scm_utag_bvect ... scm_utag_cvect): don't define unless
	HAVE_ARRAYS.
	(scm_tag): don't check array types unless HAVE_ARRAYS.

	* sort.c (scm_restricted_vector_sort_x, scm_sorted_p):
	remove the unused array types.
	* (scm_stable_sort, scm_sort): don't support vectors if not
	HAVE_ARRAYS.  a bit excessive.

	* random.c (vector_scale, vector_sum_squares,
	scm_random_solid_sphere_x, scm_random_hollow_sphere_x,
	scm_random_normal_vector_x): don't define unless HAVE_ARRAYS.

	* gh_data.c (makvect, gh_chars2byvect, gh_shorts2svect,
	gh_longs2ivect,	gh_ulongs2uvect, gh_floats2fvect, gh_doubles2dvect,
	gh_uniform_vector_length, gh_uniform_vector_ref):
	don't define unless HAVE_ARRAYS.
	(gh_scm2chars, gh_scm2shorts, gh_scm2longs, gh_scm2floats,
	gh_scm2doubles):
	don't check vector types if not HAVE_ARRAYS.

	* eq.c (scm_equal_p), eval.c (SCM_CEVAL), print.c (scm_iprin1),
	gc.c (scm_gc_mark, scm_gc_sweep), objects.c (scm_class_of):
	don't support the array types unless HAVE_ARRAYS is defined.

	* tags.h: make nine tc7 types conditional on HAVE_ARRAYS.

	* read.c (scm_lreadr): don't check for #* unless HAVE_ARRAYS is
	defined (this should use read-hash-extend).

	* ramap.c, unif.c: don't check whether ARRAYS is defined.

	* vectors.c (scm_vector_set_length_x): moved here from unif.c.  call
	scm_uniform_element_size if HAVE_ARRAYS.
	vectors.h: prototype too.

	* unif.c (scm_uniform_element_size): new procedure.

	* init.c (scm_boot_guile_1): don't call scm_init_ramap or
	scm_init_unif unless HAVE_ARRAYS is defined.

	* __scm.h: don't define ARRAYS.

	* Makefile.am (EXTRA_libguile_la_SOURCES): unif.c and ramap.c
	moved here from	libguile_la_SOURCES.


	* Makefile.am (ice9_sources): add arrays.scm.

	* boot-9.scm: load arrays.scm if 'array is provided.

	* arrays.scm: new file with stuff from boot-9.scm.
1999-11-19 18:16:19 +00:00
Gary Houston
5c11cc9deb * configure.in: check for hstrerror.
* socket.c (scm_htons, scm_ntohs, scm_htonl, scm_ntohl): new
	functions for network data conversion.

	* numbers.c (scm_num2long, scm_num2longlong):
	throw out-of-range instead of wrong-type-arg if appropriate.
	(scm_iint2str): handle -2^31 correctly.
	(scm_num2long): handle -2^31 bignum correctly.
	(scm_num2long_long): rewrite the bigdig case: basically copied
	from scm_num2long.
	numbers.h: (SCM_BITSPERLONGLONG): deleted.

	* unif.c (rapr1): use sprintf instead of intprint for unsigned
	longs: intprint can't cope with large values.

	* numbers.c (scm_num2ulong): check more consistently that the
	input is not negative.  if it is, throw out-of-range instead of
	wrong-type-arg.

	* ramap.c (scm_array_fill_int): don't limit fill to INUM for
	uvect, ivect or llvect.
	Check that fill doesn't overflow short uniform array.

	* __scm.h: add another long to the definition of long_long and
	ulong_long.

	* unif.c (scm_raprin1): use 'l' instead of "long_long" in the
	print representation of llvect.  read can't handle more than
	one character.
	(scm_dimensions_to_uniform_array): make "fill" an optional argument
	instead of a rest argument.

	* tags.h (scm_tc7_llvect): wasn't defined anywhere, so use the free
	tag 29 for now.

	* __scm.h: don't mention LONGLONGS.

	* unif.c, numbers.c, eq.c, gc.c, print.c, eval.c, ramap.c:
	replace LONGLONGS with HAVE_LONG_LONGS as set by configure.

	* net_db.c (scm_inet_aton): throw errors using the misc-error key
	instead of system-error.  inet_aton doesn't set errno.
	system-error isn't right in gethost either, since it's throwing
	the value of h_errno instead of errno. so:
	(scm_host_not_found_key, scm_try_again_key,
	scm_no_recovery_key, scm_no_data_key): new error keys.
	(scm_resolv_error): new procedure, use the new keys.
	(scm_gethost): call scm_resolv_error not scm_syserror_msg.

	* error.c: (various): use scm_cons instead of scm_listify
	to build short lists.

	* boot-9.scm (read-hash-extend to set up arrays): add 'l' for
	long_long uniform vectors.

	* networking.scm (sethostent, setnetent, setprotoent, setservent):
	take an optional argument STAYOPEN.  default is #f.

	* readline.c (scm_init_readline): set rl_readline_name to Guile,
	to allow conditionals in  .inputrc.
1999-11-18 22:36:28 +00:00
Jim Blandy
0c1221ab9c *** empty log message *** 1999-10-05 20:49:29 +00:00
Gary Houston
52cfc69be6 support new configure options: --disable-posix, --disable-net
and --disable-regex.
1999-09-26 16:00:36 +00:00
Mikael Djurfeldt
09cbffcde1 *** empty log message *** 1999-09-16 23:45:11 +00:00
Mikael Djurfeldt
4c59297c68 *** empty log message *** 1999-09-16 22:42:36 +00:00
Mikael Djurfeldt
b50408e5db *** empty log message *** 1999-09-16 21:26:46 +00:00
Jim Blandy
bbfba54575 *** empty log message *** 1999-09-16 20:10:31 +00:00
Mikael Djurfeldt
5eb548fc54 *** empty log message *** 1999-09-15 15:22:58 +00:00
Mikael Djurfeldt
0fdcbcaad5 *** empty log message *** 1999-09-12 14:56:02 +00:00
Mikael Djurfeldt
30772a346b Fixed typo 1999-09-12 11:42:10 +00:00
Mikael Djurfeldt
03ce8ed182 *** empty log message *** 1999-09-12 11:06:47 +00:00
Mikael Djurfeldt
69fafe4692 *** empty log message *** 1999-09-12 02:26:03 +00:00
Jim Blandy
b142c81de4 *** empty log message *** 1999-09-11 18:51:58 +00:00
Mikael Djurfeldt
f14d3ff8be *** empty log message *** 1999-09-11 18:32:42 +00:00
Jim Blandy
50ff2ecb1f * regex.scm (fold-matches, list-matches): New functions.
(regexp-substitute/global): Rewritten again in terms of
list-matches, to get null match behavior correct.

* regex.scm (regexp-substitute/global): Rewrite so that 'post at
the end of the item list actually causes a tail call.  (Thanks to
Jan Nieuwenhuizen.)
1999-09-11 17:38:31 +00:00
Marius Vollmer
98baa68449 *** empty log message *** 1999-09-11 15:28:16 +00:00
Jim Blandy
e1f20ec6ad *** empty log message *** 1999-09-11 15:08:11 +00:00
Mikael Djurfeldt
1c157c41c5 *** empty log message *** 1999-09-11 14:55:19 +00:00
Mikael Djurfeldt
d61d203926 *** empty log message *** 1999-09-11 13:36:36 +00:00
Mikael Djurfeldt
a48a7629fc *** empty log message *** 1999-08-29 14:24:24 +00:00
Mikael Djurfeldt
6822fe53c9 *** empty log message *** 1999-08-24 02:22:40 +00:00
Jim Blandy
f8c9d4978d *** empty log message *** 1999-08-20 05:14:11 +00:00
Mikael Djurfeldt
1a961d7ef3 Renamed module-modified! --> module-modified 1999-08-05 17:56:15 +00:00
Mikael Djurfeldt
eba968840d *** empty log message *** 1999-08-05 12:08:53 +00:00
Mikael Djurfeldt
2a52b4295e *** empty log message *** 1999-07-29 18:15:24 +00:00
Jim Blandy
59526439d6 *** empty log message *** 1999-07-19 19:07:11 +00:00
Jim Blandy
a3bb43e586 *** empty log message *** 1999-07-19 08:11:28 +00:00
Mikael Djurfeldt
40ed3fe694 *** empty log message *** 1999-06-29 10:36:08 +00:00
Jim Blandy
d21ffe2694 *** empty log message *** 1999-06-18 10:16:40 +00:00
Jim Blandy
8044bbc8dc *** empty log message *** 1999-06-16 08:44:24 +00:00
Jim Blandy
027ffa31f5 *** empty log message *** 1999-06-12 12:45:51 +00:00