Mark,


It turned out to be pretty easy to add it as a standalone test file (patch is attached). Chibi's (chibi test) and (chibi term ansi) just had to be copy and pasted into the top of the file, a few things added at the top to import the modules and enable the right read and print options, and a few modifications applied and it runs. Note that I enabled the r7rs-bytevectors reader and print options in the patch I submitted last night ( https://lists.gnu.org/archive/html/guile-devel/2017-06/msg00035.html ). Also note that the (test-exit) command I added at the end is commented out so that this test failing due to some failed tests doesn't stop all the non-standalone tests from running. Two tests have to be disabled which cause the script to break when they are reached, which are

    (test-write-syntax "|\"|" '|\"|)

and

    (let ()
      (define 7 1)
      (let-syntax ()
        (define x 2)
        #f)
      (test 1 x))


Overall, the test results are pretty good. They are, as printed by the test-suite at the end,

    1110 out of 1145 (96.9%) tests passed in 1.3156378269195557 seconds.
    32 failures (2.8%).
    3 errors (0.3%).
    15 out of 18 (83.3%) subgroups passed.


Weak areas are Strings, Read Syntax, and Numeric Syntax.


Freja Nordsiek


On Mon, Jun 19, 2017 at 7:25 AM, Mark H Weaver <mhw@netris.org> wrote:
Hi Freja,

Freja Nordsiek <fnordsie@gmail.com> writes:

> On Mark Weaver's suggestion, I looked up the Kawa and Chibi R7RS-small
> test suites. Kawa uses Chibi's test-suite, though it is wrapped in a
> bit of extra code at the top. Kawa's license is not likely to be a
> problem, as it is a MIT license (
> https://www.gnu.org/software/kawa/Software-License.html ). But,
> Chibi's license is a modified BSD license (
> http://synthcode.com/license.txt ), which is compatible with the GPL (
> https://www.gnu.org/licenses/license-list.html#ModifiedBSD ).

Sounds good, thanks for checking it!

> So, we could realistically take the Chibi test-suite (possibly with
> the Kawa modifications) and incorporate it into the r7rs-wip
> branch. The only question is whether to incorporate them as is or to
> modify them to use the same unit testing code as the rest of the unit
> tests in the guile test suite.

I would prefer to use Chibi's test suite with minimal changes.  I
suppose that we will need to add some code at the top, and it is
possible that we'll need to make some other modifications.

    Thanks!
      Mark