Re: [ANN] CHICKEN 5.4.0 release candidate 2 available

[email protected]
Newsgroups gmane.lisp.scheme.chicken
Message-ID <[email protected]>
> I also have a question about this line in the changelog: "Added support for
> embedded strings and characters in SRFI-4 vector".  this seems very neat!
> But why doesn't it also work in the runtime u8vector constructor? Srfi-4
> vector literals are limited in that they can contain only other literals,
> not arbitrary expressions so I tend to not use them.
>
> #;2> #u8(1 "hello")
> #u8(1 104 101 108 108 111)
> #;3> (u8vector 1 "hello")
> Error: (u8vector-set!) bad argument type: "hello"

Literals like vectors contain <datum>s, which are not arbitrary expressions,
this is just how the language is defined. In normal vectors allowing expressions
would create ambiguities, as a vector can contain any value. For bytevectors
one could argue that this situation does not exist, but I somehow find that
it gets confusing. So consider the string-notation in literals a convience feature,
nothing more. Generalizing this to the constructor procedure just invites type
errors and hides mistakes, I think.


felix
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.