more comments Peter McGoron (17 May 2026 04:39 UTC)
Re: more comments Wolfgang Corcoran-Mathe (17 May 2026 20:33 UTC)
Re: more comments Peter McGoron (17 May 2026 21:21 UTC)
Re: more comments Wolfgang Corcoran-Mathe (18 May 2026 00:54 UTC)
Re: more comments Shiro Kawai (18 May 2026 11:52 UTC)
Re: more comments John Cowan (18 May 2026 13:46 UTC)
Re: more comments Shiro Kawai (18 May 2026 17:21 UTC)
Re: more comments Wolfgang Corcoran-Mathe (18 May 2026 18:03 UTC)
Re: more comments Peter McGoron (18 May 2026 15:33 UTC)
Re: more comments Vincent Manis (he/him) (18 May 2026 16:41 UTC)
Re: more comments Shiro Kawai (18 May 2026 17:13 UTC)
Re: more comments Peter McGoron (18 May 2026 18:28 UTC)
Re: more comments Shiro Kawai (18 May 2026 18:42 UTC)
Re: more comments Peter McGoron (19 May 2026 02:12 UTC)
Re: more comments Shiro Kawai (19 May 2026 03:16 UTC)
Re: more comments Wolfgang Corcoran-Mathe (18 May 2026 16:59 UTC)
Re: more comments Shiro Kawai (18 May 2026 17:08 UTC)
Re: more comments John Cowan (18 May 2026 06:17 UTC)
Re: more comments Peter McGoron (18 May 2026 11:30 UTC)
Re: more comments John Cowan (18 May 2026 13:21 UTC)
Re: more comments Wolfgang Corcoran-Mathe (18 May 2026 17:19 UTC)

Re: more comments Peter McGoron 18 May 2026 11:29 UTC

On 5/18/26 02:17, John Cowan wrote:
> Is there a reason to allow any other representation?  Bytevectors are
> universal.  If the internal representation is allowed to be an
> arbitrary datum, you need to use `write` and `read` to persist it; if
> it's a bytevector, persistence in binary or textual formats is
> trivial. Of course, the library can convert from the bytevector to a
> bunch of 64-bit integers or whatever it needs.

Bytevectors are universal but encoding states in bytevectors requires
considerations (like endianness) that a datum representation doesn't
need to consider. I don't see why needing `read` and `write` is a bad
thing, it's in every Scheme.

One could write their own serializer/deserializer for Scheme datum
values (the standard ones, anyways) that fits into whatever larger
binary/textual format they are using, in a nicer way than just embedding
a binary blob.

 > That seems plausible, but it's the library, not the port, that should
provide this predicate, because we don't allow ports to be
reinitialized; they are initialized when created.

Yes.

-- Peter McGoron