[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] Add preliminary versions of the R7RS libraries along with docume
[PATCH] Add preliminary versions of the R7RS libraries along with documentation and tests
Thu, 9 Mar 2017 22:13:12 +0100
I've written preliminary versionf of all the R7RS libraries along with
documentation and unit tests for most of the procedures I had to add
(none for those that were re-exports/renames of existing procedures in
Guile). Sorry for the bad timing (right before the 2.2 release).
I was inspired by the work in the r7rs-wip branch
figured it would be a lot of work to get that branch up to date since
the last commit was in mid 2014, so I decided to write just the
libraries themselves but not work on adding any of the R7RS syntax
that hasn't already been added by others to the master branch. I wrote
the libraries in pure scheme and did not modify any other scheme
modules or C code to simplify inclusion (they won't have side effects
on other modules or code). Note that I did grab Mark H Weaver's
implementation of the load procedure/syntax. I didn't copy more code
because I wanted to make adding this to Guile not dependent on any
changes to the parts in C or other scheme modules (would have taken a
long time to sort out which changes in r7rs-wip branch depend on such
modifications and which do not).
The tests for what I added check out and the documentation compiles to
info and html (compiling texinfo to pdf is broken on my computer for
all projects so I wasn't able to test that).
Note, I was not able to make unit tests for load, include, and
include-ci. file-error? and read-error? are not 100% reliable, and my
implementation of the bytevector output ports is a bit of a hack job.
Also, I did not update cond-expand or include the R7RS syntax for
declaring libraries. Those things are still missing.
Patch is rather large.
Description: Text Data
- [PATCH] Add preliminary versions of the R7RS libraries along with documentation and tests,
Freja Nordsiek <=