Re: [Scheme-reports] some questions on byte vectors + ports
Aubrey Jaffer 27 Jun 2012 21:56 UTC
| Date: Wed, 27 Jun 2012 14:14:02 -0700
| From: Alex Shinn <alexshinn@gmail.com>
|
| On Wed, Jun 27, 2012 at 2:10 PM, Aubrey Jaffer <agj@alum.mit.edu> wrote:
| > | Date: Wed, 27 Jun 2012 10:04:21 -0700
| > | From: Alex Shinn <alexshinn@gmail.com>
| > |
| > | On Wed, Jun 27, 2012 at 9:52 AM, Aubrey Jaffer <agj@alum.mit.edu> wrote:
| > | > ...
| > | > SLIB provides R4RS/R5RS Scheme code to accomplish these conversions in
| > | > a way which is unaffected by host byte-order. See:
| > | > <http://people.csail.mit.edu/jaffer/slib/Byte_002fNumber-Conversions.html#Byte_002fNumber-Conversions>
| > |
| > | Note this is not truly portable in R4/R5 - you do need read-u8
| > | and write-u8 provided by R6/R7.
| >
| > The SLIB conversions between numbers and byte-vectors do not require
| > read-u8 or write-u8.
|
| Oh, I thought you were referring to the I/O operators. In that
| case, it's still not portable R4/R5 because these had no portable
| byte-vectors (without srfi-4 or one of the many array srfi's).
The SLIB default implementation of byte-vectors is as arrays of bytes.
The SLIB default implementation of arrays is portable R4RS/R5RS code
which is included as the example implementation of SRFI-63,
<http://srfi.schemers.org/srfi-63/srfi-63.html>.
The SRFI-63 example code uses records (procedure calls; no macros);
SLIB has a R4RS/R5RS compliant implementation of records at
<http://savannah.gnu.org/cgi-bin/viewcvs/slib/slib/record.scm?rev=HEAD&content-type=text/vnd.viewcvs-markup>
So you see Mr. Shinn, it's R4RS/R5RS-compliance all the way down.
_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports