apteryx

apteryx deleted branch devel/parameterize-parent-constraints at apteryx/guile-lib

9 months ago

apteryx forked a repository to apteryx/cargoless-rust-experiments

10 months ago

apteryx pushed to add-srfi-209 at apteryx/guile

  • 3028ec3395 scripts: Add SRFI documentation HTML -> Texinfo snarfer. * module/scripts/snarfi.scm: New file. * am/bootstrap.am (SOURCES): Register it. * NEWS: Add news entry.
  • e0a8a5c0ea .dir-locals: Add indentation rule for sxml-match syntax. * .dir-locals.el (scheme-mode) <sxml-match>: Add indentation rule.
  • View comparison for these 2 commits »

1 year ago

apteryx pushed to add-srfi-209 at apteryx/guile

  • 3028ec3395 scripts: Add SRFI documentation HTML -> Texinfo snarfer. * module/scripts/snarfi.scm: New file. * am/bootstrap.am (SOURCES): Register it. * NEWS: Add news entry.
  • e0a8a5c0ea .dir-locals: Add indentation rule for sxml-match syntax. * .dir-locals.el (scheme-mode) <sxml-match>: Add indentation rule.
  • a4b636e23c module: Add SRFI 209. Sources retrieved from commit 9d40aaff0b788f3fd611e04a5b6aef4dfd017e8d from https://github.com/scheme-requests-for-implementation/srfi-209/. * module/srfi/srfi-209.sld: New file. * module/srfi/srfi-209/209.scm: Likewise. * module/Makefile.am (SOURCES): Register srfi-209.sld. (NOCOMP_SOURCES): Register 209.scm. * test-suite/tests/srfi-209-test.scm: New file. * test-suite/tests/srfi-209.test: Likewise. * test-suite/Makefile.am (SCM_TESTS): Register test. (EXTRA_DIST): Register test definition. Series-version: 6 Cover-letter: Add SRFI 209 and dependencies; improve support for R7RS libraries 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. END
  • 57f70b6782 module: Add SRFI 178. * module/srfi/srfi-178.sld: New file. * am/bootstrap.am (SOURCES): Register it. * module/srfi/srfi-178/convert.scm * module/srfi/srfi-178/fields.scm * module/srfi/srfi-178/gen-acc.scm * module/srfi/srfi-178/logic-ops.scm * module/srfi/srfi-178/macros.scm * module/srfi/srfi-178/map2list.scm * module/srfi/srfi-178/quasi-ints.scm * module/srfi/srfi-178/quasi-strs.scm * module/srfi/srfi-178/unfolds.scm * module/srfi/srfi-178/wrappers.scm: New module implementation files. * am/bootstrap.am (NOCOMP_SOURCES): Register them. * test-suite/tests/srfi-178.test: New test. * test-suite/Makefile.am (SCM_TESTS): Register it. * test-suite/tests/srfi-178-test/constructors.scm * test-suite/tests/srfi-178-test/conversions.scm * test-suite/tests/srfi-178-test/fields.scm * test-suite/tests/srfi-178-test/gen-accum.scm * test-suite/tests/srfi-178-test/iterators.scm * test-suite/tests/srfi-178-test/logic-ops.scm * test-suite/tests/srfi-178-test/mutators.scm * test-suite/tests/srfi-178-test/quasi-ints.scm * test-suite/tests/srfi-178-test/quasi-string.scm * test-suite/tests/srfi-178-test/selectors.scm: New test implementation files. * test-suite/Makefile.am (EXTRA_DIST): Register them. * doc/ref/srfi-modules.texi (SRFI 178): New subsection. * NEWS: Update news.
  • 93b92efbbf module: Add SRFI 160. * module/srfi/srfi-160/base.sld * module/srfi/srfi-160/base/c128-vector2list.scm * module/srfi/srfi-160/base/c64-vector2list.scm * module/srfi/srfi-160/base/complex.scm * module/srfi/srfi-160/base/f32-vector2list.scm * module/srfi/srfi-160/base/f64-vector2list.scm * module/srfi/srfi-160/base/r7rec.scm * module/srfi/srfi-160/base/s16-vector2list.scm * module/srfi/srfi-160/base/s32-vector2list.scm * module/srfi/srfi-160/base/s64-vector2list.scm * module/srfi/srfi-160/base/s8-vector2list.scm * module/srfi/srfi-160/base/u16-vector2list.scm * module/srfi/srfi-160/base/u32-vector2list.scm * module/srfi/srfi-160/base/u64-vector2list.scm * module/srfi/srfi-160/base/u8-vector2list.scm * module/srfi/srfi-160/base/valid.scm * module/srfi/srfi-160/c128-impl.scm * module/srfi/srfi-160/c128.sld * module/srfi/srfi-160/c64-impl.scm * module/srfi/srfi-160/c64.sld * module/srfi/srfi-160/f32-impl.scm * module/srfi/srfi-160/f32.sld * module/srfi/srfi-160/f64-impl.scm * module/srfi/srfi-160/f64.sld * module/srfi/srfi-160/s16-impl.scm * module/srfi/srfi-160/s16.sld * module/srfi/srfi-160/s32-impl.scm * module/srfi/srfi-160/s32.sld * module/srfi/srfi-160/s64-impl.scm * module/srfi/srfi-160/s64.sld * module/srfi/srfi-160/s8-impl.scm * module/srfi/srfi-160/s8.sld * module/srfi/srfi-160/u16-impl.scm * module/srfi/srfi-160/u16.sld * module/srfi/srfi-160/u32-impl.scm * module/srfi/srfi-160/u32.sld * module/srfi/srfi-160/u64-impl.scm * module/srfi/srfi-160/u64.sld * module/srfi/srfi-160/u8-impl.scm * module/srfi/srfi-160/u8.sld * test-suite/tests/srfi-160-base-test.scm * test-suite/tests/srfi-160-base.test * test-suite/tests/srfi-160-test.scm * test-suite/tests/srfi-160.test: New files. * doc/ref/srfi-modules.texi (SRFI 160 Abstract): New subsection. * test-suite/Makefile.am (SCM_TESTS): Register tests/srfi-160-base.test and tests/srfi-160.test. (EXTRA_DIST): Register tests/srfi-160-base-test.scm and tests/srfi-160-test.scm. * NEWS: Update news. Series-changes: 5 - Generate Texinfo menu entries - Update NEWS

1 year ago

apteryx created new branch add-srfi-209 at apteryx/guile

1 year ago

apteryx pushed to add-srfi-151 at apteryx/guile

  • 3d08eb0d89 module: Add srfi-151. * module/srfi/srfi-151.scm * module/srfi/srfi-151/bitwise-33.scm * module/srfi/srfi-151/bitwise-60.scm * module/srfi/srfi-151/bitwise-other.scm * test-suite/tests/srfi-151.test * test-suite/tests/srfi-151-test.scm: New files. * am/bootstrap.am (SOURCES): Register srfi-151.scm. (NOCOMP_SOURCES): Register srfi-151/bitwise-33.scm, srfi-151/bitwise-60.scm and srfi-151/bitwise-other.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-151.test. (EXTRA_DIST): Register srfi-151-test.scm. * doc/ref/srfi-modules.texi (SRFI 151): Document it. Series-version: 3 Series-changes: 3 - Add SRFI 151
  • 10414a0fe2 module: Add srfi-125. * module/srfi/srfi-125.scm * module/srfi/srfi-125/hash-table.scm * test-suite/tests/srfi-125-test.scm * test-suite/tests/srfi-125.test: New files. * am/bootstrap.am (SOURCES): Register srfi-125.scm. (NOCOMP_SOURCES): Register hash-table.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.test. (EXTRA_DIST): Register srfi-128-test.scm. * doc/ref/srfi-modules.texi (SRFI-125): Document it. Series-changes: 3 - 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
  • f580e84b6d module: Add srfi-128. From upstream commit 62504e3b5b01615297cf65c33ca76a474bd61dd3. * module/srfi/srfi-128.scm * module/srfi/srfi-128/128.body1.scm * module/srfi/srfi-128/128.body2.scm * test-suite/tests/srfi-128-test.scm * test-suite/tests/srfi-128.test: New files. * am/bootstrap.am (SOURCES): Register srfi-128.scm. (NOCOMP_SOURCES): Register 128.body1.scm and 128.body2.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.test. (EXTRA_DIST): Register srfi-128-test.scm. * doc/ref/srfi-modules.texi (SRFI Support): Document it. Series-changes: 2 - Remove string-hash and symbol-hash from exports (they are already listed in #:rename) Series-changes: 3 - Rename SRFI-128 to SRFI 128 in text - Replace srfi-128.scm with upstream srfi/128.sld
  • 0a3df96ec8 ice-9: Fix 'include' when used in compilation contexts. Fix bug #66046. Introduce a 'compilation-source-file-name' fluid that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New fluid. (compile-file): Set it to the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • 1c0857f155 tests: Add new compile-file tests. Add a test for bug #66046. To run just the compiler tests: ./meta/guile -L test-suite -L . test-suite/tests/compiler.test * test-suite/tests/compiler.test (with-temporary-directory): New syntax. (delete-file-recursively): New procedure. ("compile-file: relative include works") ("compile-file: relative include works with load path canonicalization"): New tests.
  • View comparison for these 12 commits »

1 year ago

apteryx pushed to add-srfi-151 at apteryx/guile

  • 1d572633f6 module: Add srfi-151. * module/srfi/srfi-151.scm * module/srfi/srfi-151/bitwise-33.scm * module/srfi/srfi-151/bitwise-60.scm * module/srfi/srfi-151/bitwise-other.scm * test-suite/tests/srfi-151.test * test-suite/tests/srfi-151-test.scm: New files. * am/bootstrap.am (SOURCES): Register srfi-151.scm. (NOCOMP_SOURCES): Register srfi-151/bitwise-33.scm, srfi-151/bitwise-60.scm and srfi-151/bitwise-other.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-151.test. (EXTRA_DIST): Register srfi-151-test.scm. * doc/ref/srfi-modules.texi (SRFI 151): Document it.
  • 2be4fe6958 module: Add srfi-125. * module/srfi/srfi-125.scm * module/srfi/srfi-125/hash-table.scm * test-suite/tests/srfi-125-test.scm * test-suite/tests/srfi-125.test: New files. * am/bootstrap.am (SOURCES): Register srfi-125.scm. (NOCOMP_SOURCES): Register hash-table.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.test. (EXTRA_DIST): Register srfi-128-test.scm. * doc/ref/srfi-modules.texi (SRFI-125): Document it. Series-version: 3 Series-changes: 3 - 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
  • 0f362fdb7e module: Add srfi-128. From upstream commit 62504e3b5b01615297cf65c33ca76a474bd61dd3. * module/srfi/srfi-128.scm * module/srfi/srfi-128/128.body1.scm * module/srfi/srfi-128/128.body2.scm * test-suite/tests/srfi-128-test.scm * test-suite/tests/srfi-128.test: New files. * am/bootstrap.am (SOURCES): Register srfi-128.scm. (NOCOMP_SOURCES): Register 128.body1.scm and 128.body2.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.test. (EXTRA_DIST): Register srfi-128-test.scm. * doc/ref/srfi-modules.texi (SRFI Support): Document it. Series-changes: 2 - Remove string-hash and symbol-hash from exports (they are already listed in #:rename) Series-changes: 3 - Rename SRFI-128 to SRFI 128 in text - Replace srfi-128.scm with upstream srfi/128.sld
  • ef4cea6851 ice-9: Fix 'include' when used in compilation contexts. Fix bug #66046. Introduce a 'compilation-source-file-name' fluid that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New fluid. (compile-file): Set it to the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it. Series-to: 66046@debbugs.gnu.org Series-cc: Daphne Preston-Kendal <dpk@nonceword.org> Series-cc: Timothy Sample <samplet@ngyro.com>
  • afbec5917b tests: Add new compile-file tests. Add a test for bug #66046. To run just the compiler tests: ./meta/guile -L test-suite -L . test-suite/tests/compiler.test * test-suite/tests/compiler.test (with-temporary-directory): New syntax. (delete-file-recursively): New procedure. ("compile-file: relative include works") ("compile-file: relative include works with load path canonicalization"): New tests.
  • View comparison for these 16 commits »

1 year ago

apteryx pushed to include-bug-fix-66046 at apteryx/guile

  • 52f036d51f ice-9: Fix 'include' when used in compilation contexts. Fix bug #66046. Introduce a 'compilation-source-file-name' fluid that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New fluid. (compile-file): Set it to the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • a1bd2ba999 tests: Add new compile-file tests. Add a test for bug #66046. To run just the compiler tests: ./meta/guile -L test-suite -L . test-suite/tests/compiler.test * test-suite/tests/compiler.test (with-temporary-directory): New syntax. (delete-file-recursively): New procedure. ("compile-file: relative include works") ("compile-file: relative include works with load path canonicalization"): New tests.
  • 75cd95060f Update set of decimal zeroes for Unicode 15.1.0 * module/scheme/char.scm (*decimal-zeroes*): Update.
  • 79e836b8cc Fix branch fusing * libguile/jit.c (analyze): Skip over drop and pop, if present, during the analysis phase in addition to the compile phase.
  • 624dd8a17a Improve handling of push/pop/drop in jit Previously, these instructions were compiled directly. However, the JIT also wants to fuse comparisons with branches, and an intervening "drop" breaks that. Instead we take a different approach and rely on the compiler only emitting push/pop/drop in a peephole sort of way, and we can just simulate the temp stack space and dispatch directly. * libguile/jit.c (compile_push, compile_push_slow, compile_pop): (compile_pop_slow, compile_drop, compile_drop_slow): Crash if these are called. (COMPILE_WIDE_OP1, COMPILE_WIDE_OP2, COMPILE_WIDE_OP3, COMPILE_WIDE_OP4) (COMPILE_WIDE_OP5): (COMPILE_WIDE_DOP1, COMPILE_WIDE_DOP2, COMPILE_WIDE_DOP3) (COMPILE_WIDE_DOP4, COMPILE_WIDE_DOP5): New helpers. I didn't manage to share implementation with COMPILE_*. (COMPILE_WIDE_*): New variants of compilers that take their operands from an array instead of parsing the inline operands, relying on convention for how the compiler emits these instructions. (parse_wide_operands): New helper to parse out "wide" operands. (compile1, compile_slow_path): If we see a "push", parse wide operands. (compile): Move label capture for the slow path into compile_slow_path, because wide operands may skip some instructions.

1 year ago

apteryx created new branch include-bug-fix-66046 at apteryx/guile

1 year ago

apteryx pushed to include-fix-v1 at apteryx/guile

  • d0c2d75df3 ice-9: Fix 'include' when used in compilation contexts. Fix bug #66046. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • 22a55c6531 tests: Add new compile-file tests. Add a test for bug #66046. To run just the compiler tests: ./meta/guile -L test-suite -L . test-suite/tests/compiler.test * test-suite/tests/compiler.test (with-temporary-directory): New syntax. (delete-file-recursively): New procedure. ("compile-file: relative include works") ("compile-file: relative include works with load path canonicalization"): New tests.
  • fa09ce84dd ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • 4fc491060e tests: Add new compile-file tests. To run just the compiler tests: ./meta/guile -L test-suite -L . test-suite/tests/compiler.test * test-suite/tests/compiler.test (with-temporary-directory): New syntax. (delete-file-recursively): New procedure. ("compile-file: relative include works") ("compile-file: relative include works with load path canonicalization"): New tests.
  • View comparison for these 4 commits »

1 year ago

apteryx pushed to include-fix-v1 at apteryx/guile

  • fa09ce84dd ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • 4fc491060e tests: Add new compile-file tests. To run just the compiler tests: ./meta/guile -L test-suite -L . test-suite/tests/compiler.test * test-suite/tests/compiler.test (with-temporary-directory): New syntax. (delete-file-recursively): New procedure. ("compile-file: relative include works") ("compile-file: relative include works with load path canonicalization"): New tests.
  • c9ff1bc326 ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • View comparison for these 3 commits »

1 year ago

apteryx pushed to include-fix-v1 at apteryx/guile

  • c9ff1bc326 ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • 894b39cc72 module: Add srfi-151. * module/srfi/srfi-151.scm * module/srfi/srfi-151/bitwise-33.scm * module/srfi/srfi-151/bitwise-60.scm * module/srfi/srfi-151/bitwise-other.scm * test-suite/tests/srfi-151.test * test-suite/tests/srfi-151-test.scm: New files. * am/bootstrap.am (SOURCES): Register srfi-151.scm. (NOCOMP_SOURCES): Register srfi-151/bitwise-33.scm, srfi-151/bitwise-60.scm and srfi-151/bitwise-other.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-151.test. (EXTRA_DIST): Register srfi-151-test.scm.
  • 20170a5713 module: Add srfi-125. * module/srfi/srfi-125.scm * module/srfi/srfi-125/hash-table.scm * test-suite/tests/srfi-125-test.scm * test-suite/tests/srfi-125.test: New files. * am/bootstrap.am (SOURCES): Register srfi-125.scm. (NOCOMP_SOURCES): Register hash-table.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.test. (EXTRA_DIST): Register srfi-128-test.scm. * doc/ref/srfi-modules.texi (SRFI-125): Document it. Series-version: 2
  • 573e4206d7 module: Add srfi-128. From upstream commit 62504e3b5b01615297cf65c33ca76a474bd61dd3. * module/srfi/srfi-128.scm * module/srfi/srfi-128/128.body1.scm * module/srfi/srfi-128/128.body2.scm * test-suite/tests/srfi-128-test.scm * test-suite/tests/srfi-128.test: New files. * am/bootstrap.am (SOURCES): Register srfi-128.scm. (NOCOMP_SOURCES): Register 128.body1.scm and 128.body2.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.test. (EXTRA_DIST): Register srfi-128-test.scm. * doc/ref/srfi-modules.texi (SRFI Support): Document it. Series-changes: 2 - Remove string-hash and symbol-hash from exports (they are already listed in #:rename)
  • 24d6946945 module: Add srfi-126. This is not original work: it merely integrates and formats the work of Taylan Ulrich Bayırlı/Kammer into Guile, with a few adjustments to avoid warnings/fix missing imports. Thank you! * module/srfi/srfi-126.scm: New file. * test-suite/tests/srfi-126.test: New file. * test-suite/tests/srfi-126-test.scm: Likewise. * am/bootstrap.am (SOURCES): Register srfi-126 module. * test-suite/Makefile.am (SCM_TESTS): Register test. (EXTRA_DIST): Register test suite implementation. * doc/ref/srfi-modules.texi (SRFI Support): Document new module. Series-changes: 2 - Remove extraneous (ice-9 hash-table) import - Rename SRFI-69 to SRFI 69, SRFI-125 to SRFI 125 in text

1 year ago

apteryx created new branch include-fix-v1 at apteryx/guile

1 year ago

apteryx pushed to add-srfi-151 at apteryx/guile

  • 2a45e3984e ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/ice-9/boot-9.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • b408ffefee ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/system/base/compile.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • View comparison for these 2 commits »

1 year ago

apteryx pushed to add-srfi-151 at apteryx/guile

  • b408ffefee ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/system/base/compile.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • 01206b179f ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/system/base/compile.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • View comparison for these 2 commits »

1 year ago

apteryx pushed to add-srfi-151 at apteryx/guile

  • 01206b179f ice-9: Fix 'include' when used in compilation contexts. Introduce a 'compilation-source-file-name' parameter that captures the pre-canonicalized file name used when compiling a file, before it gets modified in fport_canonicalize_filename. That reference that can then used directly by 'include', avoiding problems. * module/system/base/compile.scm (compilation-source-file-name): New parameter. (compile-file): Parameterize it with the value of FILE. (compile-and-load): Likewise. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • 561997af59 Revert "ice-9: Allow 'include' to work in more contexts." This reverts commit 785e6b2577a3698ab63fd594de9d673f4308afde.
  • 785e6b2577 ice-9: Allow 'include' to work in more contexts. Introduce a '%file-port-original-rel-name' fluid that references the pre-canonicalized file name modified in fport_canonicalize_filename, that can then be correctly found by 'include', e.g. when using 'compile-file' with #:canonicalize set to 'relative (the default). * libguile/fports.c (sys_file_port_original_rel_name): New variable. (fport_canonicalize_filename): Set it. (scm_init_fports): Define %file-port-original-rel-name. * module/ice-9/psyntax.scm (call-with-include-port): Use it.
  • f9f660cd11 fixup! fixup! module: Add srfi-151.
  • 5b630a762c fixup! module: Add srfi-151.
  • View comparison for these 6 commits »

1 year ago

apteryx pushed to add-srfi-151 at apteryx/guile

  • 5f7ca4128d fixup! module: Add srfi-151.
  • 382dcd9934 module: Add srfi-151. * module/srfi/srfi-151.scm * module/srfi/srfi-151/bitwise-33.scm * module/srfi/srfi-151/bitwise-60.scm * module/srfi/srfi-151/bitwise-other.scm * test-suite/tests/srfi-151.test * test-suite/tests/srfi-151-test.scm: New files. * am/bootstrap.am (SOURCES): Register srfi-151.scm. (NOCOMP_SOURCES): Register srfi-151/bitwise-33.scm, srfi-151/bitwise-60.scm and srfi-151/bitwise-other.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-151.test. (EXTRA_DIST): Register srfi-151-test.scm.
  • 20170a5713 module: Add srfi-125. * module/srfi/srfi-125.scm * module/srfi/srfi-125/hash-table.scm * test-suite/tests/srfi-125-test.scm * test-suite/tests/srfi-125.test: New files. * am/bootstrap.am (SOURCES): Register srfi-125.scm. (NOCOMP_SOURCES): Register hash-table.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.test. (EXTRA_DIST): Register srfi-128-test.scm. * doc/ref/srfi-modules.texi (SRFI-125): Document it. Series-version: 2
  • 573e4206d7 module: Add srfi-128. From upstream commit 62504e3b5b01615297cf65c33ca76a474bd61dd3. * module/srfi/srfi-128.scm * module/srfi/srfi-128/128.body1.scm * module/srfi/srfi-128/128.body2.scm * test-suite/tests/srfi-128-test.scm * test-suite/tests/srfi-128.test: New files. * am/bootstrap.am (SOURCES): Register srfi-128.scm. (NOCOMP_SOURCES): Register 128.body1.scm and 128.body2.scm. * test-suite/Makefile.am (SCM_TESTS): Register srfi-128.test. (EXTRA_DIST): Register srfi-128-test.scm. * doc/ref/srfi-modules.texi (SRFI Support): Document it. Series-changes: 2 - Remove string-hash and symbol-hash from exports (they are already listed in #:rename)
  • 24d6946945 module: Add srfi-126. This is not original work: it merely integrates and formats the work of Taylan Ulrich Bayırlı/Kammer into Guile, with a few adjustments to avoid warnings/fix missing imports. Thank you! * module/srfi/srfi-126.scm: New file. * test-suite/tests/srfi-126.test: New file. * test-suite/tests/srfi-126-test.scm: Likewise. * am/bootstrap.am (SOURCES): Register srfi-126 module. * test-suite/Makefile.am (SCM_TESTS): Register test. (EXTRA_DIST): Register test suite implementation. * doc/ref/srfi-modules.texi (SRFI Support): Document new module. Series-changes: 2 - Remove extraneous (ice-9 hash-table) import - Rename SRFI-69 to SRFI 69, SRFI-125 to SRFI 125 in text

1 year ago

apteryx created new branch add-srfi-151 at apteryx/guile

1 year ago

apteryx pushed to load-verbosely-show-depth at apteryx/guile

  • e5dddb390a load: Display modules depth in output when using %load-verbosely. * NEWS: Update news. * THANKS: Add myself. * doc/guile-api.alist (%load-announce, %load-hook): Add DEPTH argument. * doc/ref/api-evaluation.texi (Loading): Document new DEPTH argument for the primitive-load, primitive-load-path and %load-hook procedures. Update %load-hook example. Document %load-verbosely. * libguile/load.c (scm_loc_load_hook): Update doc. (hook_args_data): New struct. (call_hook_2_body, call_hook_1_handler, call_hook): New procedures. (scm_primitive_load): Modify to accept a single list of arguments, like for scm_primitive_load_path, so to accept an optional DEPTH argument. Call hook via the 'call_hook' procedure. (scm_primitive_load_path): Accept a third optional DEPTH argument. Call hook via the 'call_hook' procedure. Pass depth to the 'scm_primitive_load' procedure call. * libguile/load.h (scm_primitive_load) (scm_primitive_load_path): Add 'depth' to argument name. * module/ice-9/boot-9.scm (%load-announce): Accept the second DEPTH argument, and use it to display the modules loaded hierarchically. Use format instead of display. (%current-module-load-depth): New parameter. (resolve-module): Use it. (try-module-autoload): Call primitive-load-path with it. (load-in-vicinity): Invoke %load-hook with it. Series-to: guile-devel@gnu.org Series-version: 3 Series-changes: 2 - Guard against negative pad count when computing 'visual-depth' Series-changes: 3 - Replace PAD-COUNT with DEPTH in VISUAL-DEPTH guard. Cover-letter: Add module depth information to %load-verbosely output This change was made to support investigating cyclic module dependencies that sometimes happen in GNU Guix and are difficult to comprehend/debug. For more context, see: <https://issues.guix.gnu.org/65716>. END
  • efa798bcf3 guix.scm: Update guile package native inputs. * guix.scm (guile) [native-inputs]: Replace texlive-base with texlive-scheme-basic. Add git:send-email.
  • 27b98ca9ab load: Display modules depth in output when using %load-verbosely. * NEWS: Update news. * THANKS: Add myself. * doc/guile-api.alist (%load-announce, %load-hook): Add DEPTH argument. * doc/ref/api-evaluation.texi (Loading): Document new DEPTH argument for the primitive-load, primitive-load-path and %load-hook procedures. Update %load-hook example. Document %load-verbosely. * libguile/load.c (scm_loc_load_hook): Update doc. (hook_args_data): New struct. (call_hook_2_body, call_hook_1_handler, call_hook): New procedures. (scm_primitive_load): Modify to accept a single list of arguments, like for scm_primitive_load_path, so to accept an optional DEPTH argument. Call hook via the 'call_hook' procedure. (scm_primitive_load_path): Accept a third optional DEPTH argument. Call hook via the 'call_hook' procedure. Pass depth to the 'scm_primitive_load' procedure call. * libguile/load.h (scm_primitive_load) (scm_primitive_load_path): Add 'depth' to argument name. * module/ice-9/boot-9.scm (%load-announce): Accept the second DEPTH argument, and use it to display the modules loaded hierarchically. Use format instead of display. (%current-module-load-depth): New parameter. (resolve-module): Use it. (try-module-autoload): Call primitive-load-path with it. (load-in-vicinity): Invoke %load-hook with it. Series-to: guix-devel@gnu.org Cover-letter: This change was made to support investigating cyclic module dependencies that sometimes happen in GNU Guix and are difficult to comprehend/debug. For more context, see: <https://issues.guix.gnu.org/65716>. END
  • View comparison for these 3 commits »

1 year ago

apteryx pushed to load-verbosely-show-depth at apteryx/guile

  • 27b98ca9ab load: Display modules depth in output when using %load-verbosely. * NEWS: Update news. * THANKS: Add myself. * doc/guile-api.alist (%load-announce, %load-hook): Add DEPTH argument. * doc/ref/api-evaluation.texi (Loading): Document new DEPTH argument for the primitive-load, primitive-load-path and %load-hook procedures. Update %load-hook example. Document %load-verbosely. * libguile/load.c (scm_loc_load_hook): Update doc. (hook_args_data): New struct. (call_hook_2_body, call_hook_1_handler, call_hook): New procedures. (scm_primitive_load): Modify to accept a single list of arguments, like for scm_primitive_load_path, so to accept an optional DEPTH argument. Call hook via the 'call_hook' procedure. (scm_primitive_load_path): Accept a third optional DEPTH argument. Call hook via the 'call_hook' procedure. Pass depth to the 'scm_primitive_load' procedure call. * libguile/load.h (scm_primitive_load) (scm_primitive_load_path): Add 'depth' to argument name. * module/ice-9/boot-9.scm (%load-announce): Accept the second DEPTH argument, and use it to display the modules loaded hierarchically. Use format instead of display. (%current-module-load-depth): New parameter. (resolve-module): Use it. (try-module-autoload): Call primitive-load-path with it. (load-in-vicinity): Invoke %load-hook with it. Series-to: guix-devel@gnu.org Cover-letter: This change was made to support investigating cyclic module dependencies that sometimes happen in GNU Guix and are difficult to comprehend/debug. For more context, see: <https://issues.guix.gnu.org/65716>. END
  • 8442f9f36a load: Display modules depth in output when using %load-verbosely. * NEWS: Update news. * THANKS: Add myself. * doc/guile-api.alist (%load-announce, %load-hook): Add DEPTH argument. * doc/ref/api-evaluation.texi (Loading): Document new DEPTH argument for the primitive-load, primitive-load-path and %load-hook procedures. Update %load-hook example. Document %load-verbosely. * libguile/load.c (scm_loc_load_hook): Update doc. (hook_args_data): New struct. (call_hook_2_body, call_hook_1_handler, call_hook): New procedures. (scm_primitive_load): Modify to accept a single list of arguments, like for scm_primitive_load_path, so to accept an optional DEPTH argument. Call hook via the 'call_hook' procedure. (scm_primitive_load_path): Accept a third optional DEPTH argument. Call hook via the 'call_hook' procedure. Pass depth to the 'scm_primitive_load' procedure call. * libguile/load.h (scm_primitive_load) (scm_primitive_load_path): Add 'depth' to argument name. * module/ice-9/boot-9.scm (%load-announce): Accept the second DEPTH argument, and use it to display the modules loaded hierarchically. Use format instead of display. (%current-module-load-depth): New parameter. (resolve-module): Use it. (try-module-autoload): Call primitive-load-path with it. (load-in-vicinity): Invoke %load-hook with it.
  • View comparison for these 2 commits »

1 year ago