Marius Vollmer [Wed, 22 Dec 2004 14:50:56 +0000 (14:50 +0000)]
(module-make-local-var!): When creating a new variable, initialize it
to the value of any imported variable with the given name. This
allows code like (define round round) to work as expected.
Mikael Djurfeldt [Mon, 20 Dec 2004 21:38:23 +0000 (21:38 +0000)]
expect.texi (Expect): Removed backslash escapes of regexp
operators ( and ) in code example for expect-strings.
Mikael Djurfeldt [Mon, 20 Dec 2004 21:20:52 +0000 (21:20 +0000)]
Update, document available SRFIs.
Kevin Ryde [Thu, 16 Dec 2004 00:41:39 +0000 (00:41 +0000)]
*** empty log message ***
Kevin Ryde [Wed, 15 Dec 2004 23:01:32 +0000 (23:01 +0000)]
(scm_array_map_x): Check for at least one source argument.
Kevin Ryde [Tue, 14 Dec 2004 00:23:52 +0000 (00:23 +0000)]
*** empty log message ***
Kevin Ryde [Tue, 14 Dec 2004 00:21:25 +0000 (00:21 +0000)]
(string-any, string-every): Use a scheme
wrapper around the C code so for the final call to the predicate
procedure is a tail call, per SRFI-13 spec.
Kevin Ryde [Mon, 13 Dec 2004 22:40:08 +0000 (22:40 +0000)]
*** empty log message ***
Kevin Ryde [Mon, 13 Dec 2004 22:37:31 +0000 (22:37 +0000)]
(Regexp Functions): Revise regex-substitute and
regex-substitute/global for clarity, add some examples.
Kevin Ryde [Mon, 13 Dec 2004 22:29:45 +0000 (22:29 +0000)]
(lambda* Reference): Revise for clarity, note
how #:rest works with #:key, note previous bindings available to
default expressions.
Kevin Ryde [Fri, 10 Dec 2004 00:49:51 +0000 (00:49 +0000)]
More of:
(scm_eq_p, scm_eqv_p, scm_equal_p): Update docstrings from
recent revision to the reference manual.
Kevin Ryde [Fri, 10 Dec 2004 00:42:42 +0000 (00:42 +0000)]
*** empty log message ***
Kevin Ryde [Fri, 10 Dec 2004 00:42:20 +0000 (00:42 +0000)]
(inet-pton): New tests.
Kevin Ryde [Fri, 10 Dec 2004 00:41:33 +0000 (00:41 +0000)]
(scm_from_ipv6): Just use mpz_import. Don't bother trying
to fit scm_from_ulong_long, since that uses mpz_import anyway. Don't
bother trying to fit scm_from_ulong, not really worth the trouble if
addresses are more than 4 bytes usually.
Kevin Ryde [Fri, 10 Dec 2004 00:00:27 +0000 (00:00 +0000)]
(scm_modulo): Amend fixme comment about negative divisor
with "%", C99 says it's well-defined.
Kevin Ryde [Thu, 9 Dec 2004 23:49:46 +0000 (23:49 +0000)]
(scm_eq_p, scm_eqv_p, scm_equal_p): Update docstrings from
recent revision to the reference manual.
Kevin Ryde [Wed, 8 Dec 2004 23:09:15 +0000 (23:09 +0000)]
Let the string->number documented? test say "documented?".
Kevin Ryde [Mon, 6 Dec 2004 00:51:00 +0000 (00:51 +0000)]
*** empty log message ***
Kevin Ryde [Mon, 6 Dec 2004 00:44:44 +0000 (00:44 +0000)]
*** empty log message ***
Kevin Ryde [Mon, 6 Dec 2004 00:41:41 +0000 (00:41 +0000)]
(break): New tests.
Kevin Ryde [Mon, 6 Dec 2004 00:39:27 +0000 (00:39 +0000)]
(break): Change to a tail-recursive form.
Kevin Ryde [Mon, 6 Dec 2004 00:34:53 +0000 (00:34 +0000)]
(span): Change to a tail-recursive form.
Kevin Ryde [Mon, 6 Dec 2004 00:33:40 +0000 (00:33 +0000)]
(span): New tests.
Kevin Ryde [Mon, 6 Dec 2004 00:12:00 +0000 (00:12 +0000)]
(alist-delete): New tests.
Kevin Ryde [Mon, 6 Dec 2004 00:09:14 +0000 (00:09 +0000)]
(alist-delete): Change to a tail-recursive form.
Kevin Ryde [Sun, 5 Dec 2004 23:53:20 +0000 (23:53 +0000)]
(alist-delete): Correction to equality proc call argument
order, spec is for given KEY param first.
Kevin Ryde [Sun, 5 Dec 2004 21:57:44 +0000 (21:57 +0000)]
*** empty log message ***
Kevin Ryde [Sun, 5 Dec 2004 21:49:48 +0000 (21:49 +0000)]
(alist-copy): New tests.
Kevin Ryde [Sun, 5 Dec 2004 21:44:53 +0000 (21:44 +0000)]
*** empty log message ***
Kevin Ryde [Sun, 5 Dec 2004 21:44:18 +0000 (21:44 +0000)]
(alist-copy): Change to a tail-recursive form.
Kevin Ryde [Sun, 5 Dec 2004 00:56:26 +0000 (00:56 +0000)]
*** empty log message ***
Kevin Ryde [Sat, 4 Dec 2004 23:18:17 +0000 (23:18 +0000)]
*** empty log message ***
Kevin Ryde [Sat, 4 Dec 2004 23:16:52 +0000 (23:16 +0000)]
(append-map, append-map!): Rewrite as simple "concatenate map" forms,
for tail recursiveness.
Kevin Ryde [Sat, 4 Dec 2004 23:10:39 +0000 (23:10 +0000)]
(append-map): New tests.
Kevin Ryde [Sat, 4 Dec 2004 23:05:04 +0000 (23:05 +0000)]
(append-map, append-map!): Rewrite as simple "apply append" forms, for
tail recursiveness.
Kevin Ryde [Sat, 4 Dec 2004 22:47:12 +0000 (22:47 +0000)]
(filter-map): New tests.
Kevin Ryde [Sat, 4 Dec 2004 22:43:51 +0000 (22:43 +0000)]
(SRFI-1 Length Append etc): In concatenate, note equivalence to "apply append".
Kevin Ryde [Sat, 4 Dec 2004 22:37:03 +0000 (22:37 +0000)]
*** empty log message ***
Kevin Ryde [Sat, 4 Dec 2004 22:35:30 +0000 (22:35 +0000)]
(filter-map): Change to a tail-recursive form.
Marius Vollmer [Wed, 1 Dec 2004 00:02:47 +0000 (00:02 +0000)]
*** empty log message ***
Marius Vollmer [Wed, 1 Dec 2004 00:02:24 +0000 (00:02 +0000)]
* boot-9.scm (app, %app): Renamed former to the latter.
Previously, 'app' was reserved in every module. Now '%app' is
reserved, which is slightly better. The real fix is to not use
'local-ref' etc to find modules. Changed all uses.
* syncase.scm: Changed 'app' to '%app'.
Kevin Ryde [Mon, 29 Nov 2004 21:16:54 +0000 (21:16 +0000)]
*** empty log message ***
Kevin Ryde [Mon, 29 Nov 2004 21:13:57 +0000 (21:13 +0000)]
(NetBSD): Test __m68k__ and __arm__ as well as m68k and
arm32. Reported by Greg Troxel.
Kevin Ryde [Sat, 27 Nov 2004 20:06:23 +0000 (20:06 +0000)]
*** empty log message ***
Kevin Ryde [Sat, 27 Nov 2004 20:05:52 +0000 (20:05 +0000)]
(AC_SUBST): Correction, LTDLINC should be LTDLINCL, the
latter is what libtool defines.
Marius Vollmer [Sun, 14 Nov 2004 00:25:10 +0000 (00:25 +0000)]
*** empty log message ***
Marius Vollmer [Sun, 14 Nov 2004 00:23:08 +0000 (00:23 +0000)]
(scm_i_cvref): Made non-static for ramap.c.
Marius Vollmer [Sun, 14 Nov 2004 00:18:26 +0000 (00:18 +0000)]
(INCLUDES): It is "@LTDLINCL@", not "@LTDLINC@".
Marius Vollmer [Fri, 12 Nov 2004 19:00:36 +0000 (19:00 +0000)]
*** empty log message ***
Marius Vollmer [Fri, 12 Nov 2004 19:00:22 +0000 (19:00 +0000)]
Replaced uniform-array-set1! with just array-set!. Do not check
improper index lists, which can't arise with uarray-set!. Use
"#s16()" instead of "#h()".
Marius Vollmer [Fri, 12 Nov 2004 18:57:12 +0000 (18:57 +0000)]
Do not use prototypes, use creator functions.
Marius Vollmer [Fri, 12 Nov 2004 18:55:25 +0000 (18:55 +0000)]
(scm_tc16_enclosed_array, SCM_ENCLOSED_ARRAYP):
New.
(exactly_one_third, singp): Removed.
(scm_array_p, scm_array_dimensions, scm_shared_array_root,
scm_shared_array_offset, scm_shared_array_increments): Handle
enclosed arrays explicitely.
(scm_array_rank): Likewise. Also, do not return zero for
non-arrays, signal an error instead since arrays with rank zero do
exist.
(scm_i_make_ra): New, for specifying the tag of the new array.
(scm_make_enclosed_array): Use it.
(scm_make_ra): Reimplemented in terms of scm_i_make_ra.
(scm_make_shared_array): Use scm_c_generalized_vector_length
instead of scm_uniform_vector_length.
(scm_array_in_bounds_p): Rewritten to be much cleaner.
(scm_i_cvref): New, doing the job of scm_cvref.
(scm_cvref): Use scm_i_cvref.
(scm_array_ref): Do not accept non-arrays when no indices are
given. Use scm_i_cvref to do the actual access.
("uniform-array-set1"): Do not register.
(scm_array_set_x, scm_uniform_array_read_x,
scm_uniform_array_write): Handle enclosed arrays explicitly.
(ra2l): Use scm_i_cvref instead of scm_uniform_vector_ref to also
handle enclosed arrays.
(scm_array_to_list): Handle enclosed arrays explicitly.
(rapr1): Removed.
(scm_i_print_array_dimension): Use scm_i_cvref to also handle
enclosed arrays.
(scm_i_print_enclosed_array): New.
(tag_proto_table, tag_creator_table): Renamed former to latter.
Added "a" and "b" for strings and bitvectors, resp.
(scm_i_tag_to_prototype, scm_i_tag_to_creator): Renamed former to
latter. Tag "a" is in the table now, no need to handle it as a
legacy tag.
(scm_raprin1): Just call scm_iprin1.
(scm_array_creator, scm_array_prototype): Handle enclosed arrays
explicitly.
(scm_init_unif): Initialize scm_tc16_enclosed_array smob.
Use scm_i_print_array as printer for scm_tc16_array.
Marius Vollmer [Wed, 10 Nov 2004 16:00:17 +0000 (16:00 +0000)]
Updated cross reference to Arrays.
Marius Vollmer [Wed, 10 Nov 2004 01:57:37 +0000 (01:57 +0000)]
More harsh words about non-compatibilities...
Marius Vollmer [Wed, 10 Nov 2004 01:57:04 +0000 (01:57 +0000)]
*** empty log message ***
Marius Vollmer [Wed, 10 Nov 2004 01:55:26 +0000 (01:55 +0000)]
Changed all uses of scm_array_prototype to
scm_array_creator. (scm_i_get_old_prototype): Signal error when no
prototype is known.
(scm_uniform_array_read_x, scm_uniform_array_write): Reimplemented
in terms of scm_uniform_vector_read_x and
scm_uniform_vector_write, respectively. Strings and
bitvector support has been dropped.
Marius Vollmer [Wed, 10 Nov 2004 01:47:44 +0000 (01:47 +0000)]
(cind): Changed second arg to be pointer to long instead
of uniform vector.
(scm_ramapc): Allocate index vector with scm_malloc and not as
uniform vector. Wrap it in a frameso that it gets properly freed.
(scm_array_index_map_x): Likewise.
Marius Vollmer [Wed, 10 Nov 2004 01:03:43 +0000 (01:03 +0000)]
*** empty log message ***
Marius Vollmer [Wed, 10 Nov 2004 01:03:23 +0000 (01:03 +0000)]
(uniform-vector-read!, uniform-vector-write):
Removed.
Marius Vollmer [Wed, 10 Nov 2004 01:02:32 +0000 (01:02 +0000)]
Do not include <libguile.h>, include the
needed files directly. Include config.h, <unistd.h> and <io.h>
when available.
(scm_uniform_vector_read_x, scm_uniform_vector_write): New.
Marius Vollmer [Tue, 9 Nov 2004 22:12:33 +0000 (22:12 +0000)]
*** empty log message ***
Marius Vollmer [Tue, 9 Nov 2004 22:10:59 +0000 (22:10 +0000)]
(gh_uniform_vector_length): Properly use scm_c_uniform_vector_length
instead of scm_uniform_vector_length.
Marius Vollmer [Tue, 9 Nov 2004 16:17:20 +0000 (16:17 +0000)]
*** empty log message ***
Marius Vollmer [Tue, 9 Nov 2004 16:16:19 +0000 (16:16 +0000)]
(scm_bitvector_p, scm_bitvector,
scm_make_bitvector, scm_bitvector_length, scm_bitvector_ref,
scm_bitvector_set_x, scm_list_to_bitvector, scm_bitvector_to_list,
scm_bitvector_fill_x, scm_is_bitvector, scm_c_make_bitvector,
scm_c_bitvector_length, scm_c_bitvector_ref,
scm_c_bitvector_set_x, scm_bitvector_elements,
scm_bitvector_release, scm_frame_bitvector_release,
scm_tc16_bitvector, bitvector_free, bitvector_print,
bitvector_equalp, count_ones, find_first_one): New.
(scm_bit_count, scm_bit_position, scm_bit_set_star_x,
scm_bit_count_star, scm_bit_invert_x, scm_istr2bve): Rewritten
using the new C API for bitvectors and maybe count_ones or
find_first_one, as appropriate.
(SCM_I_MAX_LENGTH, SCM_BITVECTOR_P, SCM_BITVECTOR_BASE,
SCM_SET_BITVECTOR_BASE, SCM_BITVECTOR_MAX_LENGTH,
SCM_BITVECTOR_LENGTH, SCM_MAKE_BITVECTOR_TAG,
SCM_SET_BITVECTOR_LENGTH): Removed. Replaced all uses with the
new functions from above.
(scm_i_proc_make_vector, scm_i_proc_make_string,
scm_i_proc_make_bitvector): Made non-static for use in
scm_i_generalized_vector_creator.
(scm_make_u1vector): Removed, replaced by scm_make_bitvector.
(scm_make_uve): Validate that the created object is a generalized
vector.
(scm_i_legacy_tag): Removed.
(scm_i_print_array): Do it here.
(scm_raprin1): Only print enclosed arrays.
Marius Vollmer [Tue, 9 Nov 2004 16:14:46 +0000 (16:14 +0000)]
(scm_is_vector, scm_c_vector_length, scm_c_vector_ref,
scm_c_vector_set_x, scm_generalized_vector_p,
scm_generalized_vector_length, scm_generalized_vector_ref,
scm_generalized_vector_set_x, scm_generalized_vector_to_list,
scm_is_generalized_vector, scm_c_generalized_vector_length,
scm_c_generalized_vector_ref, scm_c_generalized_vector_set_x): New.
Marius Vollmer [Tue, 9 Nov 2004 16:14:33 +0000 (16:14 +0000)]
Use the new generalized vector functions to handle all
vector like things.
Marius Vollmer [Tue, 9 Nov 2004 16:14:22 +0000 (16:14 +0000)]
Do no longer handle scm_tc7_bvect bitvectors.
Marius Vollmer [Tue, 9 Nov 2004 16:14:09 +0000 (16:14 +0000)]
(scm_tc7_bvect): Renamed to scm_tc7_unused7, renaming the
remaining scm_tc7_unused tags to get a neatly ordered list.
Marius Vollmer [Tue, 9 Nov 2004 16:13:58 +0000 (16:13 +0000)]
(scm_c_uniform_vector_ref, scm_c_uniform_vector_set_x): New.
(scm_i_uniform_vector_creator): Removed.
(scm_i_generalized_vector_creator): New.
(scm_uniform_vector_length, scm_uniform_element_size): Do not
handle generalized vectors, only uniform numeric vectors.
(alloc_uvec): Do length check here...
(make_uvec): ...but not here.
(coerce_to_uvec): Use new generalized vector functions to handle
all kinds of vectors in one go.
Marius Vollmer [Tue, 9 Nov 2004 13:55:20 +0000 (13:55 +0000)]
(DOT_DOC_FILES): Added srfi-4.doc.
Marius Vollmer [Tue, 9 Nov 2004 13:54:32 +0000 (13:54 +0000)]
*** empty log message ***
Marius Vollmer [Tue, 9 Nov 2004 13:54:22 +0000 (13:54 +0000)]
(process-multiline-directive): Allow the fname attribute to a sequence
of strings and append them all to form the fname. This is needed for
string literals like "u8""vector?".
Marius Vollmer [Tue, 9 Nov 2004 13:48:14 +0000 (13:48 +0000)]
More stuff about arrays and vectors.
Marius Vollmer [Tue, 9 Nov 2004 13:44:54 +0000 (13:44 +0000)]
Synchronized from libguile/guile.texi
Marius Vollmer [Tue, 9 Nov 2004 13:44:14 +0000 (13:44 +0000)]
*** empty log message ***
Marius Vollmer [Tue, 9 Nov 2004 13:43:47 +0000 (13:43 +0000)]
Minor updates.
Marius Vollmer [Tue, 9 Nov 2004 13:43:14 +0000 (13:43 +0000)]
(Generalized Vectors): New.
(Bit Vectors): More docs.
(Uniform Vectors): Call them Uniform numeric vectors.
Marius Vollmer [Fri, 5 Nov 2004 15:31:31 +0000 (15:31 +0000)]
*** empty log message ***
Marius Vollmer [Fri, 5 Nov 2004 15:31:23 +0000 (15:31 +0000)]
Use @ifnottex instead of @ifinfo around the "Top" node declaration so
that html can be generated. Use only lower case inside @sc. Move
editors outside of author table, which looks better in html.
Marius Vollmer [Fri, 5 Nov 2004 14:50:16 +0000 (14:50 +0000)]
*** empty log message ***
Marius Vollmer [Fri, 5 Nov 2004 14:49:56 +0000 (14:49 +0000)]
Do not add "." to %load-path. 'load' will still be able to load files
in the current directory, but 'use-modules' etc will not.
Marius Vollmer [Thu, 4 Nov 2004 17:08:37 +0000 (17:08 +0000)]
*** empty log message ***
Marius Vollmer [Thu, 4 Nov 2004 17:08:26 +0000 (17:08 +0000)]
(scm_charnames, scm_charnums): Added "sp" as an alias for "space".
Thanks to Bruce Korb!
Marius Vollmer [Thu, 4 Nov 2004 17:07:42 +0000 (17:07 +0000)]
(make_uvec): Use SCM_I_SIZE_MAX instead of SIZE_MAX for added
portability.
Marius Vollmer [Thu, 4 Nov 2004 14:04:35 +0000 (14:04 +0000)]
*** empty log message ***
Marius Vollmer [Thu, 4 Nov 2004 14:01:18 +0000 (14:01 +0000)]
(scm_read_string_x_partial): Bugfix, apply offset to dest
only after dest has been set. Thanks to Hyper Division!
Marius Vollmer [Thu, 4 Nov 2004 13:53:31 +0000 (13:53 +0000)]
(gh_uniform_vector_length): Use scm_uniform_vector_length instead of
SCM_UVECTOR_LENGTH.
Marius Vollmer [Wed, 3 Nov 2004 22:02:13 +0000 (22:02 +0000)]
*** empty log message ***
Marius Vollmer [Wed, 3 Nov 2004 21:55:43 +0000 (21:55 +0000)]
(SCM_UVECTOR_BASE, SCM_SET_UVECTOR_BASE,
SCM_UVECTOR_MAXLENGTH, SCM_UVECTOR_LENGTH, SCM_MAKE_UVECTOR_TAG,
SCM_SET_UVECTOR_LENGTH): Removed.
Marius Vollmer [Tue, 2 Nov 2004 22:50:19 +0000 (22:50 +0000)]
*** empty log message ***
Marius Vollmer [Tue, 2 Nov 2004 22:49:14 +0000 (22:49 +0000)]
(scm_display_backtrace_with_highlights): Join the
first and the second line of the SCM_DEFINE macro call, since old
preprocessors cannot handle definitions that are split into two
lines.
Marius Vollmer [Tue, 2 Nov 2004 22:47:36 +0000 (22:47 +0000)]
(scm_cell, scm_double_cell): Don't use C99 variable
declarations.
Marius Vollmer [Tue, 2 Nov 2004 22:47:14 +0000 (22:47 +0000)]
(scm_i_chase_pairs): Replace scm_t_bits with scm_t_uint32 to fix the
mismatch between the function declaration and definition.
Marius Vollmer [Tue, 2 Nov 2004 22:46:42 +0000 (22:46 +0000)]
(quicksort): Don't use C99 variable declarations.
Marius Vollmer [Tue, 2 Nov 2004 22:46:26 +0000 (22:46 +0000)]
(uvec_fast_ref): Avoid a compiler warning by returning
SCM_BOOL_F if no type matches.
Marius Vollmer [Tue, 2 Nov 2004 22:45:36 +0000 (22:45 +0000)]
(thread_print): Cast a pointer to size_t when printing
with scm_uintprint.
Marius Vollmer [Tue, 2 Nov 2004 22:45:22 +0000 (22:45 +0000)]
(scm_i_tag_to_prototype): Make sure that "instead" gets defined.
(scm_array_prototype): Deprecated.
Marius Vollmer [Tue, 2 Nov 2004 20:16:06 +0000 (20:16 +0000)]
More docs.
Marius Vollmer [Tue, 2 Nov 2004 20:15:42 +0000 (20:15 +0000)]
*** empty log message ***
Marius Vollmer [Tue, 2 Nov 2004 20:15:32 +0000 (20:15 +0000)]
* srfi-4.h, srfi-4.c (scm_frame_uniform_vector_release): New.
* unif.c (scm_bit_set_star_x, scm_bit_count_star_x): Use it to get
more efficient access to the u32vector.