Alex Shinn
eb6a2eeb78
fix integer type in object-cmp
2022-02-12 07:48:14 +09:00
Daphne Preston-Kendal
abda243d21
Add identifier macro tests to syntax-test.scm
2022-02-04 11:28:31 +01:00
Daphne Preston-Kendal
920ba20a8c
Document the addition of identifier-syntax to core
...
[skip ci]
2022-02-04 11:00:27 +01:00
Daphne Preston-Kendal
51b0203dc5
Ditch the syntax-case version of identifier-syntax now it’s in core
2022-02-04 10:40:21 +01:00
Daphne Preston-Kendal
d6b13db503
Attempt to improve readability of syntax-template-transformer uses
...
Lipstick on a pig, but seems to be the best option available
2022-02-04 10:40:21 +01:00
Daphne Preston-Kendal
aef1a1b358
Use a less confusing term in the error message for invalid clauses
...
Since ‘template’ is technically the second part
2022-02-04 10:40:21 +01:00
Daphne Preston-Kendal
bddbdc801d
Use the exact set! syntactic-closure from the identifier-syntax form
...
Without this, set! isn’t recognized correctly as a literal and the
set! form erroneously matches any application form with two arguments
2022-02-04 10:39:34 +01:00
Alex Shinn
e4766f8cac
Merge branch 'master' of github.com:ashinn/chibi-scheme
2022-02-04 12:35:14 +09:00
Alex Shinn
07358ff8b7
don't allow trailing data after the number in string->number, even if a valid delimiter (fixes issue #811 )
2022-02-04 12:34:55 +09:00
Daphne Preston-Kendal
d55d6c619c
Implement identifier-syntax in init-7.scm
2022-02-01 11:57:59 +01:00
Alex Shinn
f126c47c3e
Merge pull request #809 from dpapavas/use-malloc
...
Build fails with SEXP_USE_MALLOC
2022-01-10 08:01:45 +09:00
Dimitris Papavasiliou
c2a0bdb2c6
Partially fix SEXP_USE_MALLOC.
2022-01-09 14:44:02 +02:00
Alex Shinn
a127a332ac
use 0 (configurable) for the C++ size of flexible arrays ( fixes #808 )
2022-01-09 21:29:00 +09:00
Alex Shinn
4d45583637
removing unused sexp_cpointer_body
2022-01-09 21:19:57 +09:00
Alex Shinn
d642f34f25
Merge pull request #807 from lubgr/docs/small-fixes
...
Minor documentation improvements (C API)
2022-01-07 00:04:53 +09:00
Lukas Böger
1f2b534be9
Small documentation improvements
2022-01-05 12:19:32 +00:00
Daphne Preston-Kendal
d769a7970c
Wrap identifier-syntax output in make-transformer
2022-01-03 09:50:07 +01:00
Daphne Preston-Kendal
eb8582f5b1
Use sexp_make_procedure to sexp_make_variable_transformer_op
2022-01-03 08:28:40 +01:00
Dimitris Papavasiliou
87637c0a0b
Expose construction of foreign procedures.
2022-01-02 20:45:39 +02:00
Daphne Preston-Kendal
f32d89175c
Typo fix.
...
[skip ci]
2022-01-02 09:37:37 +01:00
Daphne Preston-Kendal
f63348a4d1
Iteratively expand variable-transformer set!
2022-01-02 08:06:38 +01:00
Daphne Preston-Kendal
83f61aecd2
Document the addition of identifier macros
2021-12-30 11:18:39 +01:00
Daphne Preston-Kendal
4a3c7eaf1f
Support identifier-syntax in (chibi syntax-case)
2021-12-30 10:58:26 +01:00
Daphne Preston-Kendal
d17764be29
Add variable transformers
2021-12-30 10:34:54 +01:00
Daphne Preston-Kendal
e97a2debe1
Friendlier error message for misuse of standard macros
2021-12-30 00:12:18 +01:00
Daphne Preston-Kendal
770b4d367b
Add basic support for identifier macros
2021-12-29 23:52:46 +01:00
Alex Shinn
6615a74609
undoing unintended commit
2021-12-29 14:27:49 +09:00
Alex Shinn
b769a318ef
use unsigned char* in sexp_update_string_index_lookup (fixes issue #804 )
2021-12-29 11:55:58 +09:00
Alex Shinn
ab29a2b973
skip common prefix/suffix in diff
2021-12-28 16:07:43 +09:00
Alex Shinn
9cd9ec1cda
fix mapn error message
2021-12-28 15:19:10 +09:00
Alex Shinn
92499731bc
show procedure arity in primitive write
2021-12-28 08:26:20 +09:00
Alex Shinn
fc9cf93796
type checks on identifier=?
2021-12-28 08:19:05 +09:00
Daphne Preston-Kendal
9dcda90e2e
Merge branch 'string-ref-cache' into string-ref-cache-backwards
2021-12-27 19:24:20 +01:00
Daphne Preston-Kendal
9419fb19ed
Merge branch 'master' into string-ref-cache
2021-12-27 19:13:39 +01: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
Alex Shinn
f51f61098c
Merge pull request #795 from ashinn/srfi-227
...
Fix SRFI 227 exports
2021-12-11 22:42:14 +09:00
Marc Nieper-Wißkirchen
232dc6ef20
Fix SRFI 227 exports
2021-12-11 14:27:20 +01:00
Daphne Preston-Kendal
a746370431
Make the string cursor able to run backwards as well as forwards
2021-12-11 11:43:23 +01:00
Daphne Preston-Kendal
4e0f10ad21
Use the cursor cache to speed up string-cursor->index as well
2021-12-11 10:44:26 +01:00
Daphne Preston-Kendal
c09897c449
Add a feature to cache the most recent string index->cursor result
...
This is lighter-weight than building a full index->cursor table for
the string, adding a constant two words to the memory required to
store a string, as opposed to one word for every n characters. The
cached cursor is used for any string-ref operation requesting an index
after the most-recently-requested index, making potentially quadratic
repeated string-ref procedures run in linear time. In theory, it could
also use a heuristic to speed up moving backwards through the string
when it thinks that moving the old cursor backwards would be faster
than starting again at the start of the string. In practice, my
logging of when the cached cursor is actually reused during the Chibi
compilation and startup process shows that the most common case of
moving backwards is going back to the start of the string anyway.
Benchmarks to follow.
2021-12-10 21:24:05 +01:00
Alex Shinn
3080087d8c
stop after first compile error in an if ( fixes #792 )
2021-12-05 09:18:54 +09: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
Alex Shinn
71cc9b0d3c
add make-procedure to (chibi ast)
2021-12-02 22:02:03 +09:00