Comment 2 for bug 894241

Revision history for this message
Nikodemus Siivola (nikodemus) wrote :

I've been thinking of this on and off.

The benefit of our current "defstruct initiargs aren't make-instance initargs" approach is that makes it more likely to pinpoint places where you've left a make-instance in place after switching to structs.

The benefit of allowing defstruct initargs to be used with make-instance is that it makes switching between the two definitions less painful.

Given that our current approach doesn't guarantee catching all such sites anyhow, but adding an error-signaling method on eg. initialize-instance does[*] ... I think I'm in favor of allowing defstruct initargs in make-instance.

Anyone else?

[*] Assuming tests with complete coverage, it's not like either method works statically.