This patch series addresses the problem that `get-datum' is using the global reader options, even for those options that have to have fixed values to make the reader behave in an R6RS-compatible way.
* [PATCH 1/3] Split r6rs-ports.c according to module boundaries Needed by the last patch, since we want to add a private helper function for use in `(rnrs io ports)' there. * [PATCH 2/3] Add internal API to specify reader options at reader This provides the basic mechanism, a.k.a. `scm_i_read()'. * [PATCH 3/3] Make `get-datum' conform more closely to R6RS semantics And finally, this makes use of `scm_i_read()' to implement `get-datum'.