Commit | Line | Data |
---|---|---|
3b2ee265 KR |
1 | 2004-12-16 Kevin Ryde <user42@zip.com.au> |
2 | ||
3 | * ramap.c (scm_array_map_x): Check for at least one source argument. | |
4 | ||
e120686a KR |
5 | 2004-12-14 Kevin Ryde <user42@zip.com.au> |
6 | ||
7 | * srfi-13.c (string-any, string-every): Use a scheme wrapper around | |
8 | the C code so for the final call to the predicate procedure is a tail | |
9 | call, per SRFI-13 spec. | |
10 | ||
680b5237 KR |
11 | 2004-12-10 Kevin Ryde <user42@zip.com.au> |
12 | ||
13 | * eq.c (scm_eq_p, scm_eqv_p, scm_equal_p): Update docstrings from | |
14 | recent revision to the reference manual. | |
15 | ||
16 | * numbers.c (scm_modulo): Amend fixme comment about negative divisor | |
17 | with "%", C99 says it's well-defined. | |
18 | ||
19 | * socket.c (scm_from_ipv6): Just use mpz_import. Don't bother trying | |
20 | to fit scm_from_ulong_long, since that uses mpz_import anyway. Don't | |
21 | bother trying to fit scm_from_ulong, not really worth the trouble if | |
22 | addresses are more than 4 bytes usually. | |
23 | ||
446d320c KR |
24 | 2004-11-30 Kevin Ryde <user42@zip.com.au> |
25 | ||
26 | * gc_os_dep.c (NetBSD): Test __m68k__ and __arm__ as well as m68k and | |
27 | arm32. Reported by Greg Troxel. | |
28 | ||
f2654760 MV |
29 | 2004-11-14 mvo <mvo@zagadka.de> |
30 | ||
31 | * unif.c, unif.h (scm_i_cvref): Made non-static for ramap.c. | |
32 | ||
33 | * Makefile.am (INCLUDES): It is "@LTDLINCL@", not "@LTDLINC@". | |
34 | ||
d550e35f MV |
35 | 2004-11-12 Marius Vollmer <marius.vollmer@uni-dortmund.de> |
36 | ||
37 | Enclosed arrays are now their own smob. This has been done to | |
38 | make the code more explicit about them and to prepare for the time | |
f2654760 MV |
39 | when generalized vectors include arbitrary one-dimensional |
40 | arrays. (Uptonow, enclosed arrays have been recognized by their | |
41 | use of an array as their storage 'vector'. When all generalized | |
42 | vectors are allowed as storage, including one-dimensional arrays, | |
43 | this will no longer work.) | |
d550e35f MV |
44 | |
45 | * unif.h, unif.c: (scm_tc16_enclosed_array, SCM_ENCLOSED_ARRAYP): | |
46 | New. | |
47 | (exactly_one_third, singp): Removed. | |
48 | (scm_array_p, scm_array_dimensions, scm_shared_array_root, | |
49 | scm_shared_array_offset, scm_shared_array_increments): Handle | |
50 | enclosed arrays explicitely. | |
51 | (scm_array_rank): Likewise. Also, do not return zero for | |
52 | non-arrays, signal an error instead since arrays with rank zero do | |
53 | exist. | |
54 | (scm_i_make_ra): New, for specifying the tag of the new array. | |
55 | (scm_make_enclosed_array): Use it. | |
56 | (scm_make_ra): Reimplemented in terms of scm_i_make_ra. | |
57 | (scm_make_shared_array): Use scm_c_generalized_vector_length | |
58 | instead of scm_uniform_vector_length. | |
59 | (scm_array_in_bounds_p): Rewritten to be much cleaner. | |
60 | (scm_i_cvref): New, doing the job of scm_cvref. | |
61 | (scm_cvref): Use scm_i_cvref. | |
62 | (scm_array_ref): Do not accept non-arrays when no indices are | |
63 | given. Use scm_i_cvref to do the actual access. | |
64 | ("uniform-array-set1"): Do not register. | |
65 | (scm_array_set_x, scm_uniform_array_read_x, | |
66 | scm_uniform_array_write): Handle enclosed arrays explicitly. | |
67 | (ra2l): Use scm_i_cvref instead of scm_uniform_vector_ref to also | |
68 | handle enclosed arrays. | |
69 | (scm_array_to_list): Handle enclosed arrays explicitly. | |
70 | (rapr1): Removed. | |
71 | (scm_i_print_array_dimension): Use scm_i_cvref to also handle | |
72 | enclosed arrays. | |
73 | (scm_i_print_enclosed_array): New. | |
74 | (tag_proto_table, tag_creator_table): Renamed former to latter. | |
75 | Added "a" and "b" for strings and bitvectors, resp. | |
76 | (scm_i_tag_to_prototype, scm_i_tag_to_creator): Renamed former to | |
77 | latter. Tag "a" is in the table now, no need to handle it as a | |
78 | legacy tag. | |
79 | (scm_raprin1): Just call scm_iprin1. | |
80 | (scm_array_creator, scm_array_prototype): Handle enclosed arrays | |
81 | explicitly. | |
82 | (scm_init_unif): Initialize scm_tc16_enclosed_array smob. | |
83 | Use scm_i_print_array as printer for scm_tc16_array. | |
84 | ||
2ed34885 MV |
85 | 2004-11-10 Marius Vollmer <mvo@zagadka.de> |
86 | ||
823086c1 MV |
87 | * ramap.c (cind): Changed second arg to be pointer to long instead |
88 | of uniform vector. | |
89 | (scm_ramapc): Allocate index vector with scm_malloc and not as | |
d550e35f | 90 | uniform vector. Wrap it in a frame so that it gets properly freed. |
823086c1 MV |
91 | (scm_array_index_map_x): Likewise. |
92 | ||
93 | * unif.c: Changed all uses of scm_array_prototype to | |
94 | scm_array_creator. (scm_i_get_old_prototype): Signal error when no | |
95 | prototype is known. | |
96 | (scm_uniform_array_read_x, scm_uniform_array_write): Reimplemented | |
97 | in terms of scm_uniform_vector_read_x and | |
98 | scm_uniform_vector_write, respectively. Strings and | |
99 | bitvector support has been dropped. | |
100 | ||
2ed34885 MV |
101 | * srfi-4.h, srfi-4.c: Do not include <libguile.h>, include the |
102 | needed files directly. Include config.h, <unistd.h> and <io.h> | |
103 | when available. | |
104 | (scm_uniform_vector_read_x, scm_uniform_vector_write): New. | |
105 | ||
2c72f253 MV |
106 | 2004-11-09 Marius Vollmer <mvo@zagadka.de> |
107 | ||
108 | * gh_data.c (gh_uniform_vector_length): Properly use | |
109 | scm_c_uniform_vector_length instead of scm_uniform_vector_length. | |
110 | ||
3cc0a296 MV |
111 | 2004-11-09 Marius Vollmer <marius.vollmer@uni-dortmund.de> |
112 | ||
113 | * srfi-4.h (scm_c_uniform_vector_ref, scm_c_uniform_vector_set_x): | |
114 | New. | |
115 | (scm_i_uniform_vector_creator): Removed. | |
116 | (scm_i_generalized_vector_creator): New. | |
117 | (scm_uniform_vector_length, scm_uniform_element_size): Do not | |
118 | handle generalized vectors, only uniform numeric vectors. | |
119 | (alloc_uvec): Do length check here... | |
120 | (make_uvec): ...but not here. | |
121 | (coerce_to_uvec): Use new generalized vector functions to handle | |
122 | all kinds of vectors in one go. | |
123 | ||
124 | * tags.h (scm_tc7_bvect): Renamed to scm_tc7_unused7, renaming the | |
125 | remaining scm_tc7_unused tags to get a neatly ordered list. | |
126 | ||
127 | * eq.c, evalext.c, gc-card.c, gc-mark.c, objects.c, print.c: Do no | |
128 | longer handle scm_tc7_bvect bitvectors. | |
129 | ||
130 | * ramap.c: Use the new generalized vector functions to handle all | |
131 | vector like things. | |
132 | ||
133 | * vectors.h, vectors.c (scm_is_vector, scm_c_vector_length, | |
134 | scm_c_vector_ref, scm_c_vector_set_x, scm_generalized_vector_p, | |
135 | scm_generalized_vector_length, scm_generalized_vector_ref, | |
136 | scm_generalized_vector_set_x, scm_generalized_vector_to_list, | |
137 | scm_is_generalized_vector, scm_c_generalized_vector_length, | |
138 | scm_c_generalized_vector_ref, scm_c_generalized_vector_set_x): | |
139 | New. | |
140 | ||
141 | * unif.h, unif.c (scm_bitvector_p, scm_bitvector, | |
142 | scm_make_bitvector, scm_bitvector_length, scm_bitvector_ref, | |
143 | scm_bitvector_set_x, scm_list_to_bitvector, scm_bitvector_to_list, | |
144 | scm_bitvector_fill_x, scm_is_bitvector, scm_c_make_bitvector, | |
145 | scm_c_bitvector_length, scm_c_bitvector_ref, | |
146 | scm_c_bitvector_set_x, scm_bitvector_elements, | |
147 | scm_bitvector_release, scm_frame_bitvector_release, | |
148 | scm_tc16_bitvector, bitvector_free, bitvector_print, | |
149 | bitvector_equalp, count_ones, find_first_one): New. | |
150 | (scm_bit_count, scm_bit_position, scm_bit_set_star_x, | |
151 | scm_bit_count_star, scm_bit_invert_x, scm_istr2bve): Rewritten | |
152 | using the new C API for bitvectors and maybe count_ones or | |
153 | find_first_one, as appropriate. | |
154 | (SCM_I_MAX_LENGTH, SCM_BITVECTOR_P, SCM_BITVECTOR_BASE, | |
155 | SCM_SET_BITVECTOR_BASE, SCM_BITVECTOR_MAX_LENGTH, | |
156 | SCM_BITVECTOR_LENGTH, SCM_MAKE_BITVECTOR_TAG, | |
157 | SCM_SET_BITVECTOR_LENGTH): Removed. Replaced all uses with the | |
158 | new functions from above. | |
159 | (scm_i_proc_make_vector, scm_i_proc_make_string, | |
160 | scm_i_proc_make_bitvector): Made non-static for use in | |
161 | scm_i_generalized_vector_creator. | |
162 | (scm_make_u1vector): Removed, replaced by scm_make_bitvector. | |
163 | (scm_make_uve): Validate that the created object is a generalized | |
164 | vector. | |
165 | (scm_i_legacy_tag): Removed. | |
166 | (scm_i_print_array): Do it here. | |
167 | (scm_raprin1): Only print enclosed arrays. | |
168 | ||
169 | * Makefile.am (DOT_DOC_FILES): Added srfi-4.doc. | |
170 | ||
c24d026b MV |
171 | 2004-11-04 Marius Vollmer <marius.vollmer@uni-dortmund.de> |
172 | ||
1f2328fe MV |
173 | * srfi-4.c (make_uvec): Use SCM_I_SIZE_MAX instead of SIZE_MAX for |
174 | added portability. | |
175 | ||
176 | * chars.c (scm_charnames, scm_charnums): Added "sp" as an alias | |
177 | for "space". Thanks to Bruce Korb! | |
178 | ||
c24d026b MV |
179 | * rw.c (scm_read_string_x_partial): Bugfix, apply offset to dest |
180 | only after dest has been set. Thanks to Hyper Division! | |
181 | ||
182 | * gh_data.c (gh_uniform_vector_length): Use | |
183 | scm_uniform_vector_length instead of SCM_UVECTOR_LENGTH. | |
184 | ||
d4ea47c8 MV |
185 | 2004-11-03 Marius Vollmer <mvo@zagadka.de> |
186 | ||
187 | * unif.h (SCM_UVECTOR_BASE, SCM_SET_UVECTOR_BASE, | |
188 | SCM_UVECTOR_MAXLENGTH, SCM_UVECTOR_LENGTH, SCM_MAKE_UVECTOR_TAG, | |
189 | SCM_SET_UVECTOR_LENGTH): Removed. | |
190 | ||
236288e2 MV |
191 | 2004-11-02 Marius Vollmer <mvo@zagadka.de> |
192 | ||
193 | Content-type: text/html