[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 00/16] Add SRFI 209 and dependencies; improve support for R7RS
From: |
Maxim Cournoyer |
Subject: |
[PATCH v6 00/16] Add SRFI 209 and dependencies; improve support for R7RS libraries |
Date: |
Sat, 2 Dec 2023 20:37:01 -0500 |
This series add the SRFI 209 enumerators library and its dependencies.
It fixes a few problems that prevented using the corresponding R7RS
upstream libraries as-is on the way.
Changes in v6:
- Add SRFI 209
Changes in v5:
- Generate Texinfo menu entries
- Update NEWS
Changes in v4:
- Mention Expat license of SRFI 126 in guile.tex copying section
- Fix invalid module references (e.g. (srfi 69) -> (srfi srfi-69))
- Use .sld for srfi-128 library file extension
- Mention Expat license of SRFI 128 in guile.tex copying section
- Add copyright line in srfi-modules.texi
- Mention Expat license of SRFI 125 in guile.tex copying section
- Rename srfi-125.scm to srfi-125.sld and use upstream copy
- Streamline import of (srfi srfi-125)
- Use R7RS 'import' for srfi-125-test.scm
- Mention Expat license of SRFI 151 in guile.tex copying section
- Update copyright line for John Cowan in srfi-modules.texi
- Rename srfi/srfi-151.scm to srfi/srfi-151.sld
Changes in v3:
- Rename SRFI-126 to SRFI 126 in text
- Rename SRFI-128 to SRFI 128 in text
- Replace srfi-128.scm with upstream srfi/128.sld
- Add menu entries.
- Rename SRFI-125 to SRFI 125 in text
- Rename included file to upstream name (125.body.scm)
- Add copyright/license header 125.body.scm
- Add SRFI 151
Changes in v2:
- Remove extraneous (ice-9 hash-table) import
- Rename SRFI-69 to SRFI 69, SRFI-125 to SRFI 125 in text
- Remove string-hash and symbol-hash from exports (they are already
listed in #:rename)
Maxim Cournoyer (15):
ice-9: Fix 'include' when used in compilation contexts.
r7rs-libraries: Add support for 'else' clause in cond-expand.
r7rs-libraries: Better support R7RS SRFI library names.
(scheme base): Support non-negative SRFI integer names in cond-expand.
Share features tested by cond-expand library declarations and
expressions.
build: Register '.sld' as an alternative extension to '.scm'.
module: Add SRFI 126.
module: Add SRFI 128.
module: Add (scheme comparator).
module: Add (scheme sort).
module: Add SRFI 125.
module: Add SRFI 151.
module: Add SRFI 160.
module: Add SRFI 178.
module: Add SRFI 209.
Timothy Sample (1):
Use R7RS 'rename' syntax for exports.
.gitignore | 1 +
NEWS | 20 +
am/bootstrap.am | 75 +-
configure.ac | 7 +-
doc/ref/guile.texi | 25 +-
doc/ref/srfi-modules.texi | 5347 ++++++++++++++++-
libguile/fports.c | 41 +-
module/ice-9/boot-9.scm | 123 +-
module/ice-9/endianness.scm.in | 1 +
module/ice-9/psyntax.scm | 8 +-
module/ice-9/r6rs-libraries.scm | 88 +-
module/ice-9/r7rs-libraries.scm | 68 +-
module/scheme/base.scm | 15 +-
module/scheme/comparator.sld | 33 +
module/scheme/features.scm | 44 +
module/scheme/sort.sld | 21 +
module/srfi/srfi-125.sld | 96 +
module/srfi/srfi-125/125.body.scm | 589 ++
module/srfi/srfi-126.scm | 396 ++
module/srfi/srfi-128.sld | 61 +
module/srfi/srfi-128/128.body1.scm | 361 ++
module/srfi/srfi-128/128.body2.scm | 146 +
module/srfi/srfi-151.sld | 56 +
module/srfi/srfi-151/bitwise-33.scm | 108 +
module/srfi/srfi-151/bitwise-60.scm | 70 +
module/srfi/srfi-151/bitwise-other.scm | 62 +
module/srfi/srfi-160/base.sld | 67 +
.../srfi/srfi-160/base/c128-vector2list.scm | 18 +
module/srfi/srfi-160/base/c64-vector2list.scm | 18 +
module/srfi/srfi-160/base/complex.scm | 111 +
module/srfi/srfi-160/base/f32-vector2list.scm | 18 +
module/srfi/srfi-160/base/f64-vector2list.scm | 18 +
module/srfi/srfi-160/base/r7rec.scm | 11 +
module/srfi/srfi-160/base/s16-vector2list.scm | 18 +
module/srfi/srfi-160/base/s32-vector2list.scm | 18 +
module/srfi/srfi-160/base/s64-vector2list.scm | 18 +
module/srfi/srfi-160/base/s8-vector2list.scm | 18 +
module/srfi/srfi-160/base/u16-vector2list.scm | 18 +
module/srfi/srfi-160/base/u32-vector2list.scm | 18 +
module/srfi/srfi-160/base/u64-vector2list.scm | 18 +
module/srfi/srfi-160/base/u8-vector2list.scm | 18 +
module/srfi/srfi-160/base/valid.scm | 26 +
module/srfi/srfi-160/c128-impl.scm | 600 ++
module/srfi/srfi-160/c128.sld | 48 +
module/srfi/srfi-160/c64-impl.scm | 600 ++
module/srfi/srfi-160/c64.sld | 48 +
module/srfi/srfi-160/f32-impl.scm | 600 ++
module/srfi/srfi-160/f32.sld | 48 +
module/srfi/srfi-160/f64-impl.scm | 600 ++
module/srfi/srfi-160/f64.sld | 48 +
module/srfi/srfi-160/s16-impl.scm | 600 ++
module/srfi/srfi-160/s16.sld | 48 +
module/srfi/srfi-160/s32-impl.scm | 600 ++
module/srfi/srfi-160/s32.sld | 48 +
module/srfi/srfi-160/s64-impl.scm | 600 ++
module/srfi/srfi-160/s64.sld | 48 +
module/srfi/srfi-160/s8-impl.scm | 600 ++
module/srfi/srfi-160/s8.sld | 48 +
module/srfi/srfi-160/u16-impl.scm | 600 ++
module/srfi/srfi-160/u16.sld | 48 +
module/srfi/srfi-160/u32-impl.scm | 600 ++
module/srfi/srfi-160/u32.sld | 48 +
module/srfi/srfi-160/u64-impl.scm | 600 ++
module/srfi/srfi-160/u64.sld | 48 +
module/srfi/srfi-160/u8-impl.scm | 600 ++
module/srfi/srfi-160/u8.sld | 48 +
module/srfi/srfi-178.sld | 105 +
module/srfi/srfi-178/convert.scm | 83 +
module/srfi/srfi-178/fields.scm | 88 +
module/srfi/srfi-178/gen-acc.scm | 25 +
module/srfi/srfi-178/logic-ops.scm | 105 +
module/srfi/srfi-178/macros.scm | 26 +
module/srfi/srfi-178/map2list.scm | 27 +
module/srfi/srfi-178/quasi-ints.scm | 54 +
module/srfi/srfi-178/quasi-strs.scm | 88 +
module/srfi/srfi-178/unfolds.scm | 44 +
module/srfi/srfi-178/wrappers.scm | 285 +
module/srfi/srfi-209.sld | 60 +
module/srfi/srfi-209/209.scm | 690 +++
test-suite/Makefile.am | 25 +
test-suite/tests/r7rs-cond-expand.test | 35 +
test-suite/tests/rnrs-libraries.test | 12 +-
test-suite/tests/srfi-125-test.scm | 890 +++
test-suite/tests/srfi-125.test | 45 +
test-suite/tests/srfi-126-test.scm | 289 +
test-suite/tests/srfi-126.test | 49 +
test-suite/tests/srfi-128-test.scm | 321 +
test-suite/tests/srfi-128.test | 47 +
test-suite/tests/srfi-151-test.scm | 381 ++
test-suite/tests/srfi-151.test | 46 +
test-suite/tests/srfi-160-base-test.scm | 167 +
test-suite/tests/srfi-160-base.test | 47 +
test-suite/tests/srfi-160-test.scm | 262 +
test-suite/tests/srfi-160.test | 48 +
.../tests/srfi-178-test/constructors.scm | 88 +
.../tests/srfi-178-test/conversions.scm | 108 +
test-suite/tests/srfi-178-test/fields.scm | 98 +
test-suite/tests/srfi-178-test/gen-accum.scm | 72 +
test-suite/tests/srfi-178-test/iterators.scm | 150 +
test-suite/tests/srfi-178-test/logic-ops.scm | 125 +
test-suite/tests/srfi-178-test/mutators.scm | 79 +
test-suite/tests/srfi-178-test/quasi-ints.scm | 41 +
.../tests/srfi-178-test/quasi-string.scm | 62 +
test-suite/tests/srfi-178-test/selectors.scm | 13 +
test-suite/tests/srfi-178.test | 147 +
test-suite/tests/srfi-209-test.scm | 465 ++
test-suite/tests/srfi-209.test | 50 +
107 files changed, 21463 insertions(+), 448 deletions(-)
create mode 100644 module/ice-9/endianness.scm.in
create mode 100644 module/scheme/comparator.sld
create mode 100644 module/scheme/features.scm
create mode 100644 module/scheme/sort.sld
create mode 100644 module/srfi/srfi-125.sld
create mode 100644 module/srfi/srfi-125/125.body.scm
create mode 100644 module/srfi/srfi-126.scm
create mode 100644 module/srfi/srfi-128.sld
create mode 100644 module/srfi/srfi-128/128.body1.scm
create mode 100644 module/srfi/srfi-128/128.body2.scm
create mode 100644 module/srfi/srfi-151.sld
create mode 100644 module/srfi/srfi-151/bitwise-33.scm
create mode 100644 module/srfi/srfi-151/bitwise-60.scm
create mode 100644 module/srfi/srfi-151/bitwise-other.scm
create mode 100644 module/srfi/srfi-160/base.sld
create mode 100644 module/srfi/srfi-160/base/c128-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/c64-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/complex.scm
create mode 100644 module/srfi/srfi-160/base/f32-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/f64-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/r7rec.scm
create mode 100644 module/srfi/srfi-160/base/s16-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/s32-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/s64-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/s8-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/u16-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/u32-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/u64-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/u8-vector2list.scm
create mode 100644 module/srfi/srfi-160/base/valid.scm
create mode 100644 module/srfi/srfi-160/c128-impl.scm
create mode 100644 module/srfi/srfi-160/c128.sld
create mode 100644 module/srfi/srfi-160/c64-impl.scm
create mode 100644 module/srfi/srfi-160/c64.sld
create mode 100644 module/srfi/srfi-160/f32-impl.scm
create mode 100644 module/srfi/srfi-160/f32.sld
create mode 100644 module/srfi/srfi-160/f64-impl.scm
create mode 100644 module/srfi/srfi-160/f64.sld
create mode 100644 module/srfi/srfi-160/s16-impl.scm
create mode 100644 module/srfi/srfi-160/s16.sld
create mode 100644 module/srfi/srfi-160/s32-impl.scm
create mode 100644 module/srfi/srfi-160/s32.sld
create mode 100644 module/srfi/srfi-160/s64-impl.scm
create mode 100644 module/srfi/srfi-160/s64.sld
create mode 100644 module/srfi/srfi-160/s8-impl.scm
create mode 100644 module/srfi/srfi-160/s8.sld
create mode 100644 module/srfi/srfi-160/u16-impl.scm
create mode 100644 module/srfi/srfi-160/u16.sld
create mode 100644 module/srfi/srfi-160/u32-impl.scm
create mode 100644 module/srfi/srfi-160/u32.sld
create mode 100644 module/srfi/srfi-160/u64-impl.scm
create mode 100644 module/srfi/srfi-160/u64.sld
create mode 100644 module/srfi/srfi-160/u8-impl.scm
create mode 100644 module/srfi/srfi-160/u8.sld
create mode 100644 module/srfi/srfi-178.sld
create mode 100644 module/srfi/srfi-178/convert.scm
create mode 100644 module/srfi/srfi-178/fields.scm
create mode 100644 module/srfi/srfi-178/gen-acc.scm
create mode 100644 module/srfi/srfi-178/logic-ops.scm
create mode 100644 module/srfi/srfi-178/macros.scm
create mode 100644 module/srfi/srfi-178/map2list.scm
create mode 100644 module/srfi/srfi-178/quasi-ints.scm
create mode 100644 module/srfi/srfi-178/quasi-strs.scm
create mode 100644 module/srfi/srfi-178/unfolds.scm
create mode 100644 module/srfi/srfi-178/wrappers.scm
create mode 100644 module/srfi/srfi-209.sld
create mode 100644 module/srfi/srfi-209/209.scm
create mode 100644 test-suite/tests/r7rs-cond-expand.test
create mode 100644 test-suite/tests/srfi-125-test.scm
create mode 100644 test-suite/tests/srfi-125.test
create mode 100644 test-suite/tests/srfi-126-test.scm
create mode 100644 test-suite/tests/srfi-126.test
create mode 100644 test-suite/tests/srfi-128-test.scm
create mode 100644 test-suite/tests/srfi-128.test
create mode 100644 test-suite/tests/srfi-151-test.scm
create mode 100644 test-suite/tests/srfi-151.test
create mode 100644 test-suite/tests/srfi-160-base-test.scm
create mode 100644 test-suite/tests/srfi-160-base.test
create mode 100644 test-suite/tests/srfi-160-test.scm
create mode 100644 test-suite/tests/srfi-160.test
create mode 100644 test-suite/tests/srfi-178-test/constructors.scm
create mode 100644 test-suite/tests/srfi-178-test/conversions.scm
create mode 100644 test-suite/tests/srfi-178-test/fields.scm
create mode 100644 test-suite/tests/srfi-178-test/gen-accum.scm
create mode 100644 test-suite/tests/srfi-178-test/iterators.scm
create mode 100644 test-suite/tests/srfi-178-test/logic-ops.scm
create mode 100644 test-suite/tests/srfi-178-test/mutators.scm
create mode 100644 test-suite/tests/srfi-178-test/quasi-ints.scm
create mode 100644 test-suite/tests/srfi-178-test/quasi-string.scm
create mode 100644 test-suite/tests/srfi-178-test/selectors.scm
create mode 100644 test-suite/tests/srfi-178.test
create mode 100644 test-suite/tests/srfi-209-test.scm
create mode 100644 test-suite/tests/srfi-209.test
base-commit: d8df317bafcdd9fcfebb636433c4871f2fab28b2
--
2.41.0
- [PATCH v6 00/16] Add SRFI 209 and dependencies; improve support for R7RS libraries,
Maxim Cournoyer <=
- [PATCH v6 02/16] Use R7RS 'rename' syntax for exports., Maxim Cournoyer, 2023/12/02
- [PATCH v6 03/16] r7rs-libraries: Add support for 'else' clause in cond-expand., Maxim Cournoyer, 2023/12/02
- [PATCH v6 04/16] r7rs-libraries: Better support R7RS SRFI library names., Maxim Cournoyer, 2023/12/02
- [PATCH v6 01/16] ice-9: Fix 'include' when used in compilation contexts., Maxim Cournoyer, 2023/12/02
- [PATCH v6 05/16] (scheme base): Support non-negative SRFI integer names in cond-expand., Maxim Cournoyer, 2023/12/02
- [PATCH v6 07/16] build: Register '.sld' as an alternative extension to '.scm'., Maxim Cournoyer, 2023/12/02
- [PATCH v6 06/16] Share features tested by cond-expand library declarations and expressions., Maxim Cournoyer, 2023/12/02
- [PATCH v6 08/16] module: Add SRFI 126., Maxim Cournoyer, 2023/12/02
- [PATCH v6 09/16] module: Add SRFI 128., Maxim Cournoyer, 2023/12/02
- [PATCH v6 10/16] module: Add (scheme comparator)., Maxim Cournoyer, 2023/12/02