Re: [ANN] CHICKEN 5.4.0 release candidate 2 available

Marc Feeley <[email protected]>
Newsgroups gmane.lisp.scheme.chicken
Message-ID <[email protected]>
It would be an error to do otherwise, as explained in this paragraph of the SRFI-4 spec:

This external representation is also available in program source code. For example, (set! x '#u8(1 2 3)) will set x to the object #u8(1 2 3). Literal homogeneous vectors must be quoted just like heterogeneous vectors must be. Homogeneous vectors can appear in quasiquotations but must not contain unquote or unquote-splicing forms (i.e. `(,x #u8(1 2)) is legal but `#u8(1 ,x 2) is not). This restriction is to accommodate the many Scheme systems that use the read procedure to parse programs.

Marc



> On Jul 7, 2024, at 2:37 PM, John Cowan <[email protected]> wrote:
> 
> Not so much intentional as simply never considered at the time.
> 
> On Sun, Jul 7, 2024 at 5:25 AM Kristian Lein-Mathisen <[email protected]> wrote:
> 
> From my reading, R7RS does not support quasiquoted u8vectors either, the
> formal grammer refers to "<qq template>" which seems to be allowed to
> be only a list, a vector or a datum, the latter not being processed any further.
> 
> I hope this makes sense.
> 
> It does, thank you for explaining Felix. From my understanding, if you want to construct u8vectors mixing and matching expressions and raw literals then the run-time constructors is your only option. And this seems to be intensional by the language designers then.
> 
> K.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.