Could you explain me how I can obtain exact list
of type that could be the first argument of make-sequence ?
I've tried (subtype 'X 'sequence) but immediately bump into
array which being not a subtype of sequence could be used
with make-sequence.
Some related questions. Could you give me the idea of
lisp::result-type-or-lose CMUCL function ? Is it possible
to get it functionality with CL features only ? Could you give
me the examples of its working when it somehow converts input
type ?
--
Vladimir Zolotykh
Vladimir Zolotykh <······@eurocom.od.ua> writes:
> I've tried (subtype 'X 'sequence) but immediately bump into
> array which being not a subtype of sequence could be used
> with make-sequence.
ARRAY is not a sequence type. VECTOR, a subtype of ARRAY, is a
sequence type.
--
-> -/ - Rahul Jain - \- <-
-> -\ http://linux.rice.edu/~rahul -=- ············@techie.com /- <-
-> -X "Structure is nothing if it is all you got. Skeletons spook X- <-
-> -/ people if [they] try to walk around on their own. I really \- <-
-> -\ wonder why XML does not." -- Erik Naggum, comp.lang.lisp /- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
(c)1996-2002, All rights reserved. Disclaimer available upon request.
> Could you explain me how I can obtain exact list
> of type that could be the first argument of make-sequence ?
No such beast (assuming by "list" you mean in the Lisp sense). There
are an infinite number of types that can be the first argument.
Here's a few:
string
list
(bit-vector 32)
(array bit (32))
(array * (32))
(vector character)
(vector base-character)
(string 0)
(string 1)
(string 2)
(string 3)
...
It would probably be theoretically possible to make a generator that
would make something like that, but I'm not sure.
joelh