Marius Vollmer
399aba0a2b
Use the new generalized vector functions to handle all
...
vector like things.
2004-11-09 16:14:33 +00:00
Marius Vollmer
241b64d63f
Do no longer handle scm_tc7_bvect bitvectors.
2004-11-09 16:14:22 +00:00
Marius Vollmer
6cf0f51de8
(scm_tc7_bvect): Renamed to scm_tc7_unused7, renaming the
...
remaining scm_tc7_unused tags to get a neatly ordered list.
2004-11-09 16:14:09 +00:00
Marius Vollmer
811eb6d0ee
(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.
2004-11-09 16:13:58 +00:00
Marius Vollmer
1d227e527a
(DOT_DOC_FILES): Added srfi-4.doc.
2004-11-09 13:55:20 +00:00
Marius Vollmer
1f2328fec2
*** empty log message ***
2004-11-04 17:08:37 +00:00
Marius Vollmer
66842ba3d5
(scm_charnames, scm_charnums): Added "sp" as an alias for "space".
...
Thanks to Bruce Korb!
2004-11-04 17:08:26 +00:00
Marius Vollmer
b0780bc595
(make_uvec): Use SCM_I_SIZE_MAX instead of SIZE_MAX for added
...
portability.
2004-11-04 17:07:42 +00:00
Marius Vollmer
c24d026b3b
*** empty log message ***
2004-11-04 14:04:35 +00:00
Marius Vollmer
a9d13d445b
(scm_read_string_x_partial): Bugfix, apply offset to dest
...
only after dest has been set. Thanks to Hyper Division!
2004-11-04 14:01:18 +00:00
Marius Vollmer
6697f945b9
(gh_uniform_vector_length): Use scm_uniform_vector_length instead of
...
SCM_UVECTOR_LENGTH.
2004-11-04 13:53:31 +00:00
Marius Vollmer
d4ea47c8da
*** empty log message ***
2004-11-03 22:02:13 +00:00
Marius Vollmer
219592225f
(SCM_UVECTOR_BASE, SCM_SET_UVECTOR_BASE,
...
SCM_UVECTOR_MAXLENGTH, SCM_UVECTOR_LENGTH, SCM_MAKE_UVECTOR_TAG,
SCM_SET_UVECTOR_LENGTH): Removed.
2004-11-03 21:55:43 +00:00
Marius Vollmer
236288e205
*** empty log message ***
2004-11-02 22:50:19 +00:00
Marius Vollmer
09c6d80a27
(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.
2004-11-02 22:49:14 +00:00
Marius Vollmer
5e1e20c89c
(scm_cell, scm_double_cell): Don't use C99 variable
...
declarations.
2004-11-02 22:47:36 +00:00
Marius Vollmer
7dab4b370c
(scm_i_chase_pairs): Replace scm_t_bits with scm_t_uint32 to fix the
...
mismatch between the function declaration and definition.
2004-11-02 22:47:14 +00:00
Marius Vollmer
1938c6dab7
(quicksort): Don't use C99 variable declarations.
2004-11-02 22:46:42 +00:00
Marius Vollmer
28d4aef1f0
(uvec_fast_ref): Avoid a compiler warning by returning
...
SCM_BOOL_F if no type matches.
2004-11-02 22:46:26 +00:00
Marius Vollmer
a95ba079dc
(thread_print): Cast a pointer to size_t when printing
...
with scm_uintprint.
2004-11-02 22:45:36 +00:00
Marius Vollmer
72d05aa477
(scm_i_tag_to_prototype): Make sure that "instead" gets defined.
...
(scm_array_prototype): Deprecated.
2004-11-02 22:45:22 +00:00
Marius Vollmer
5d1015ec8c
*** empty log message ***
2004-11-02 20:15:42 +00:00
Marius Vollmer
d44ff083ea
* 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.
2004-11-02 20:15:32 +00:00
Marius Vollmer
034486df89
*** empty log message ***
2004-11-02 19:52:26 +00:00
Marius Vollmer
067f092233
(scm_tc7_llvect, scm_tc7_uvect, scm_tc7_fvect, scm_tc7_dvect,
...
scm_tc7_cvect, scm_tc7_svect, scm_tc7_byvect, scm_tc7_ivect): Renamed
to scm_tc7_unused_1 to scm_tc7_unused_8.
2004-11-02 19:52:16 +00:00
Marius Vollmer
8536884437
* eq.c, evalext.c, gc-card.c, gc-mark.c, objects.c, print.c,
...
ramap.c, unif.c: Do no longer handle old-style uniform vectors.
* unif.c (scm_bit_set_star_x, scm_bit_count_star_x): Use u32vectors
instead of old-sytle uvectors.
2004-11-02 19:50:11 +00:00
Marius Vollmer
b7a7750adf
Do no longer handle old-style uniform vectors.
2004-11-02 19:47:20 +00:00
Marius Vollmer
df47dca314
(SCM_VALIDATE_VECTOR_OR_DVECTOR): Accept f64vectors instead of the
...
old-style dvectors.
2004-11-02 19:46:29 +00:00
Marius Vollmer
bbe6ba2366
Use new-style uniform arrays in place of old-style ones.
2004-11-02 19:44:49 +00:00
Marius Vollmer
948972893c
Rewritten completely, using scm_any_to_u8vector, etc and other
...
new-style uniform vector functions.
2004-11-02 19:38:55 +00:00
Marius Vollmer
e911caec2b
(scm_random_solid_sphere_x, scm_random_hollow_sphere_x): Do not
...
validate vector argument, this is already done elsewhere.
2004-11-02 19:36:50 +00:00
Marius Vollmer
90d4368c88
(coerce_to_uvec, scm_any_to_u8vector, etc): New.
...
(scm_uniform_element_size, scm_uniform_vector_length): Do no longer
handle old-style uniform vectors.
2004-11-02 19:34:30 +00:00
Marius Vollmer
f738b51d25
*** empty log message ***
2004-11-02 15:59:47 +00:00
Marius Vollmer
c35092e670
(scm_lreadr): Bugfix: include the last bit in the bit vector.
2004-11-02 15:53:53 +00:00
Marius Vollmer
327114a26a
*** empty log message ***
2004-10-29 15:41:54 +00:00
Marius Vollmer
ab1be174c2
* unif.h, unif.c (scm_array_creator): New.
...
(scm_i_get_old_prototype): New.
(scm_array_prototype): use it to return old-style prototype, never
return creators.
(scm_make_uve): Use scm_call_1 instead of scm_call_2 with a second
arg of SCM_UNDEFINED. The latter is wrong.
2004-10-29 15:41:26 +00:00
Marius Vollmer
c0fc64c806
(scm_i_print_array): It's "ndim", not "rank". D'Oh!
2004-10-29 14:50:13 +00:00
Marius Vollmer
5e9c05a174
*** empty log message ***
2004-10-29 14:47:29 +00:00
Marius Vollmer
eb42ff2564
(scm_lreadr): Call scm_i_read_array for all characters followinf '#'
...
that can start an array. Explicitely disambiguate 'i' and 'e' between
introducing numbers and uniform vectors. Do not call
scm_i_read_homogenous_vector, since that is also handled by
scm_i_read_array now.
2004-10-29 14:45:19 +00:00
Marius Vollmer
bfad4005d2
(scm_make_u1vector): New, but only temporary.
...
(make_uve): Removed.
(scm_i_proc_make_vector, scm_i_proc_make_string,
scm_i_proc_make_u1vector): New.
(scm_init_unif): Initialize them.
(scm_i_convert_old_prototype): New.
(scm_make_uve): Use it to get the creator procedure. Removed all
old code that created old-style uniform vectors.
(scm_array_p): Handle generic vectors.
(scm_dimensions_to_uniform_array): Do not fill new array with
prototype when that is a procedure.
(scm_list_to_uniform_array): Also accept a list of lower bounds as
the NDIM argument.
(scm_i_print_array): Print rank for shared or non-zero-origin
vectors.
(tag_proto_table, scm_i_tag_to_prototype, scm_i_read_array): New.
(scm_raprin1): Do not call scm_i_array_print for enclosed arrays,
which I do not understand yet.
(scm_array_prototype): Explicitely handle generic vectors.
2004-10-29 14:41:14 +00:00
Marius Vollmer
7a1aba42cf
(scm_i_print_complex, icmplx2str): New.
...
(iflo2str): Use icmplx2str for complex numbers.
2004-10-29 14:17:20 +00:00
Marius Vollmer
cbdc837976
(scm_i_read_homogenous_vector,
...
scm_i_uniform_vector_prototype): Removed.
(scm_i_uniform_vector_creator): New.
(SCM_UVEC_C32, scm_c32vector, scm_make_c32vector, etc,
SCM_UVEC_C64, scm_c64vector, scm_make_c64vector, etc): New.
Updated all tables and generic functions to support them.
(scm_i_proc_make_u8vector, scm_i_proc_make_s8vector, etc): New.
(scm_init_srfi_4): Initialize them.
2004-10-29 14:10:49 +00:00
Marius Vollmer
d2759570ac
(scm_take_u8vector, etc): use uvec_sizes instead of
...
sizeof(CTYPE) as explained in the comment.
2004-10-29 14:06:02 +00:00
Marius Vollmer
f984af077b
*** empty log message ***
2004-10-27 19:32:41 +00:00
Marius Vollmer
d1d2f0941c
* convert.i.c: Convert srfi-4 style uniform vectors when
...
requested.
* convert.c (scm_c_scm2chars, scm_c_chars2scm,
scm_c_chars2byvect): Use a s8vector instead of a scm_tc7_byvect.
2004-10-27 19:32:11 +00:00
Marius Vollmer
46d25cffa8
(vector_scale, vector_scale_x): Renamed former to the
...
latter, since it modifies its argument.
(vector_scale_x, vector_sum_squares, scm_random_normal_vector_x):
Do not use scm_universal_vector_length for non-uniform vectors.
Use scm_f64vector_elements to access innards of uniform vectors.
2004-10-27 19:28:05 +00:00
Marius Vollmer
faa0036593
* srfi-4.c (take_uvec): New.
...
(alloc_uvec): Use it.
* srfi-4.h, srfi-4.i.c (scm_take_u8vector, etc): New.
2004-10-27 19:25:14 +00:00
Marius Vollmer
2a7bd73833
(gh_chars2byvect): Reimplemented with scm_make_s8vector.
...
(gh_scm2chars): Handle s8vectors, removed code for scm_tc7_byvect.
2004-10-27 18:29:20 +00:00
Marius Vollmer
d315ee57b4
* print.c (iprin1): Removed code for scm_tc7_byvect.
...
* objects.c (scm_class_of): Likewise.
* gc-mark.c (scm_gc_mark_dependencies): Likewise.
* gc-card.c (scm_i_sweep_card): Likewise.
* evalext.c (scm_self_evaluating_p): Likewise.
* eq.c (scm_equal_p): Likewise.
2004-10-27 18:21:43 +00:00
Marius Vollmer
b4bdaddeed
(scm_ra_matchp, scm_array_fill_int, racp, scm_array_index_map_x,
...
raeql_1, scm_array_equal_p): Handle srfi-4 uniform vectors. Removed
code for scm_tc7_byvect
2004-10-27 18:16:26 +00:00