run64 is a SRFI-64 runner. It generates pretty, readable, colorful output featuring clear diffs between expected and actual values. run64 is meant to work with a SRFI-64 implementation, and is not a SRFI-64 implementation in itself.
Motivation
TLDR: pytest envy
When hacking on Guile projects, I found myself re-inventing auxiliary scripts to present test results. Meanwhile, in Python land, they have beautiful tooling like pytest. Schemers deserve good tooling too! So, here we are.
Download
Download release tarballs.
- 2025-11-17 run64-0.1.0.tar.lz GPG Signature
Download public signing key.
Browse the development version on cgit or on klaus.
Usage
To use run64, invoke it on the command-line passing files containing SRFI-64 tests as arguments. For example,
$ run64 test-file1.scm test-file2.scm
You might want to invoke the run64 executable specific to your scheme implementation. For example, if you are using GNU Guile,
$ guile-run64 test-file1.scm test-file2.scm
Portability
run64 is written in portable R6RS Scheme. It should work in any R6RS Scheme that supports SRFI-1, SRFI-64 and pattern matching, but has been tested well only with GNU Guile. If you use run64 with other Scheme implementations, we would love to hear of your experience.
Contributing
Feedback, suggestions, feature requests, bug reports and patches are all welcome. Please write to run64@systemreboot.net.
License
run64 is free software released under the terms of the GNU General Public License, either version 3 of the License, or (at your option) any later version.
