Alex Shinn
65589e3e26
Fix default coeffs for the degenerate dimension case.
2024-05-22 22:02:27 +09:00
Alex Shinn
7ac3cfebe1
Update to new make-specialized-array signature.
2024-05-14 21:46:25 +09:00
Alex Shinn
2e09a082c8
Fix SRFI 231 tests.
2024-05-13 22:10:49 +09:00
Ekaitz Zarraga
967b888d8c
Reduce iterations in concatenate!
...
This commit should reduce the amount of iterations in concatenate to N
where N is the sum of the lengths of the input lists.
The previous implementation iterated from the beginning in each
concatenation because of `last-pair`.
This implementation is significantly faster in this extreme case:
(concatenate! `(,(iota 50000) ,@(map list (iota 500))))
>> Previous implementation:
real 0m0.671s
user 0m0.658s
sys 0m0.013s
>> This implementation:
real 0m0.175s
user 0m0.174s
sys 0m0.001s
The tests is done using `time`, which is not reliable at all, but using
`(trace last-pair)` shows accurately what happens with the iterations.
2024-01-09 17:18:41 +01:00
Alex Shinn
a67e75926d
Merge pull request #943 from ekaitz-zarraga/master
...
Add srfi-64
2024-01-09 11:14:49 +09:00
Ekaitz Zarraga
70989e0cef
srfi: 1: add tests for append! (and concatenate!)
2024-01-09 01:04:34 +01:00
Ekaitz Zarraga
7bf376b7fb
Fix: concatenate! work with empty lists
2024-01-08 22:56:07 +01:00
Ekaitz Zarraga
43bfac5884
Add srfi-64
2024-01-07 20:58:46 +01:00
Yota Toyama
4a4a1553f5
Fix
2023-09-27 19:13:57 +10:00
Yota Toyama
0e009d6045
Fix bug
2023-09-27 19:11:41 +10:00
Bradley Lucier
e390668961
SRFI 231: Declare char-storage-class, fix interval-projections
2023-08-27 23:22:14 -04:00
Alex Shinn
67fdb283b6
fix init value for make-specialized-array
2023-06-20 22:19:19 +09:00
Alex Shinn
44f8c91931
Fix zero-dimensional array indexing.
2023-06-20 22:16:18 +09:00
Alex Shinn
b06c4cca9d
Merge branch 'master' of github.com:ashinn/chibi-scheme
2023-06-04 06:06:47 +09:00
Alex Shinn
4b5e885f31
Fix coeffs in trivial dimensions to work with BLAS.
2023-06-04 06:05:29 +09:00
Bradley Lucier
7420ba9315
SRFI 231: Add index-* tests
...
lib/srfi/231/base.scm:
1. Add argument checks for index-first, index-last, index-rotate, and index-swap.
lib/srfi/231/test.sld:
1. 1,$s/179/231/g (in vim notation)
2. Add tests for index-first, index-last, index-rotate, and index-swap.
3. Remove trailing spaces.
2023-05-30 13:08:25 -04:00
Bradley Lucier
732078cde4
Fix SRFI 231 install
...
Makefile:
When installing chibi, make installation directory and install files for SRFI 231.
When uninstalling chibi, remove installation directory and files for SRFI 231.
lib/srfi/231/transforms.scm:
Move definition of vector-iota from here to ...
lib/srfi/231/base.scm:
Here.
lib/srfi/231/base.sld:
Export vector-iota to use in both base.scm and transforms.scm.
2023-05-28 17:48:32 -04:00
Bradley Lucier
27ea774e2e
Add index-swap, fix assert in array-append
2023-05-23 15:09:25 -04:00
Alex Shinn
d6c58a7e11
Fix array-append signature.
2023-05-20 16:31:23 +09:00
Lassi Kortela
be22930896
Fix broken import in (srfi 193)
...
Fixes #914
2023-05-04 18:35:59 +03:00
Alex Shinn
1ba5df1fdf
Adding missing length<=? ( closes #909 ).
2023-04-02 22:48:51 +09:00
Alex Shinn
7e511ef8e4
typo s!fx+*/carry!fx*/carry!g (issue #908 )
2023-04-02 22:39:25 +09:00
Alex Shinn
3b8f07b12e
Fix array-stack, interval folds and list*->array.
...
Issue #900 .
2023-03-19 23:56:01 +09:00
Alex Shinn
4dab8b81d4
Implementing array-decurry.
2023-02-16 21:20:37 +09:00
Marc Nieper-Wißkirchen
c6db239882
Provide identifier-syntax and make-variable-transformer through standardized SRFI libraries.
2023-02-01 10:33:09 +01:00
Alex Shinn
49f95dc107
Fix bug in procedure-flags in (chibi ast) (issue #864 )
...
We were incorrectly boxing an already boxed value.
2022-10-05 09:06:51 +09:00
Alex Shinn
1e47c78b8a
Fix reversal of results in rounding all leading 9's (issue #859 ).
2022-09-15 21:24:00 +09:00
Alex Shinn
54d3aafc7b
update test
2022-06-12 16:11:16 +09:00
Alex Shinn
38fc7e0932
Initial SRFI 231 implementation.
2022-06-12 16:04:38 +09:00
Jeronimo Pellegrini
32ce583927
Add some more unit tests to SRFI-144
...
Tests for flmin, flmax, fl-least, fl-epsilon, fl-greatest are
included.
2022-05-15 08:30:27 -03:00
Jeronimo Pellegrini
1ecf7f9c8a
SRFI-144: accept zero arguments for flmax/flmin
...
SRFI-144 requires that (flmin) returns +inf.0 and that
(flmax) returns -inf.0, so these procedures can't really
be aliases to the Chibi implementation of R7RS max and min.
2022-05-14 08:14:08 -03:00
Alex Shinn
42332bb04f
compute least double properly (issue #831 )
2022-05-14 16:30:27 +09:00
Alex Shinn
eb6a2eeb78
fix integer type in object-cmp
2022-02-12 07:48:14 +09:00
Alex Shinn
f6e8e71c41
Merge branch 'master' of github.com:ashinn/chibi-scheme
2021-12-25 10:56:10 +09:00
Alex Shinn
58e9715c2b
handle non-positive numbers in numeric/si (fixes issue #801 )
2021-12-25 10:55:58 +09:00
Alex Shinn
f812bbc96b
Merge pull request #797 from dpk/reference-barrier
...
Fix SRFI 124 imports for reference-barrier
2021-12-15 07:01:43 +09:00
Daphne Preston-Kendal
f9f384c45b
Fix SRFI 124 imports for reference-barrier
2021-12-14 15:45:12 +01:00
Alex Shinn
50188a6668
Merge pull request #796 from dpk/reference-barrier
...
Add reference-barrier to (srfi 124)
2021-12-14 21:36:53 +09:00
Daphne Preston-Kendal
2d8ce631c7
Add reference-barrier to (srfi 124)
2021-12-14 13:04:21 +01:00
Marc Nieper-Wißkirchen
232dc6ef20
Fix SRFI 227 exports
2021-12-11 14:27:20 +01:00
Alex Shinn
9a17254536
guard against opcodes
2021-12-03 08:33:28 +09:00
Alex Shinn
9a48a110b8
add bounds check
2021-12-02 22:07:57 +09:00
Alex Shinn
0da288d053
implement (srfi 229)
2021-12-02 22:03:58 +09:00
Daphne Preston-Kendal
427629a43e
Add support for SRFI 227
2021-11-24 10:24:21 +01:00
Jeronimo Pellegrini
ce97808201
Add missing constants to SRFI-144
...
The following constants were missing from Chibi's SRFI-144
implementation:
fl-1/e
fl-e-pi/4
fl-1/log-2
fl-log-3
fl-log-pi
fl-1/log-10
fl-2pi
fl-pi-squared
fl-degree
fl-gamma-1/2
fl-gamma-1/3
fl-gamma-2/3
2021-09-29 00:57:31 -03:00
Alex Shinn
22e89b168a
fix array-tile
2021-08-19 19:22:29 +09:00
Alex Shinn
57e4652ea6
Assert same domains in array-for-each, as per the spec and implicitly
...
depended on by the implementation.
2021-08-16 20:28:03 +09:00
Alex Shinn
6cafda8916
Decouple syntax-case from the Chibi core.
...
This restores third-party (ab)users of the Chibi macro system such
as in https://gist.github.com/baguette/2632464 , while allowing us
to break those uses in more interesting ways.
It also keeps the core slightly smaller (both in C and Scheme)
and speeds up the macro expansion process.
2021-08-10 23:19:35 +09:00
Alex Shinn
73da0a88d4
scan for appropriate 2nd element to take the mean with when calling vector-find-median on an even length vector (issue #754 )
2021-06-29 21:09:41 +09:00
Alex Shinn
5207bdfde2
Defining list->u8vector (issue #749 ).
2021-06-18 13:04:20 +09:00