[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question about declaration
- To: email@example.com
- Subject: Re: Question about declaration
- From: quiroz
- Date: Fri, 11 Dec 87 05:27:16 -0500
- Cc: CL@ACORN.CS.ROCHESTER.EDU
- In-reply-to: Your message of Fri, 11 Dec 87 01:16:00 -0500. <871211011624.0.MILLER@DOUGHNUT.CS.ROCHESTER.EDU>
If (as it seems) `bar' isn't restricted to be anything sharper than
`list', then the only thing we know is that `foo' returns multiple
values. (Indeed, `foo' is just another name for `values-list', but
I assume you are just abstracting here the useful aspects of a real
`foo' of yours.)
I suspect I would write something as uninformative as
(proclaim '(function foo (list) (values &rest list)))
which is marginally better than no declaration at all.
While at this, how do you use the &-markers in a `values' specifier?
For instance, the only things I believe make sense after &rest in a
`values' specifier should be `null' (utterly useless) or `list'
(quite uninformative). Anything more general than `list' would
admit of impossible trash, anything disjoint with list is
unspeakable. Yet, KCL just let me try `...&rest float'. Better not
think what a compiler could do with such.
Cesar Augusto Quiroz Gonzalez
Department of Computer Science ...allegra!rochester!quiroz
University of Rochester or
Rochester, NY 14627 firstname.lastname@example.org