3 ms·
They would be, but it's also unlikely you would be able to write something useful using only the id and value such that you might confuse something. There's so
by morelisp 7y ago
They would be, but it's also unlikely you would be able to write something useful using only the id and value such that you might confuse something.
There's some "self-limiting" - the smaller the interface, the more likely you get accidental implementation, but also the less likely you are to confuse them in a way that typechecks but actually does something unexpected.
A practical example might be io.Closer - I am certain I implemented this in a dozen types I never intend to pass to any io functions. But no io functions actually take just a Closer, and if I did write some generic cleanup routine that only requires a Closer, it's probably fine and maybe even good if it works on byte IO and gRPC connections and Kafka streams. (Especially without generics, it might be the best I can do.)