[plt-scheme] Names in signatures
Robby Findler wrote:
> Jens Axel Søgaard:
...
> > (define-signature catenable-double-ended-list^
> > ((open double-ended-list)
> > (open catenable-list)))
>
> > The last signature is giving me problems. The syntax checker
> > says that some names are defined multple times, and that's
> > true. But in this case it on purpose.
>
> > NB: I am sitting on a computer without Scheme, so the
> > above is not syntax-checked.
> Yeah, you just cannot do that. You'd have to write something like this:
>
> (define-signature catenable-list-extensions^
> (append))
>
> (define-signature catenable-list^
> ((open list^)
> (open catenable-list-extensions^)))
>
Thanks, that works. It just feels akward.
Is there a technical reason not to the union of the sets of imported names
from the opened signatures (such as the signatures need to be a DAG).
For those cases where the clash is not intentional it is a good thing to
get an error here though.
--
Jens Axel Søgaard