Sorry John, “Interfaces is not something about subtypes” is only your idea, and it looks very strange to me.

If you’re a Lisp guy, then “SICP” must be some kind of authoroty to you. Please see chapter 2, on data. As for me, it clearly defines data type as a set of values and (nb) operations.
If an operation of that type can be applied to object, it is of that type. This means .NET interfaces are absolutely data types.

John, generally, I’d appreciate if you were more polite.
I clearly see that you didn’t read the post attentively: I state that it is an explicit implementation and gave a descrition to it.
Same about closures: did you see the words “Please note variables visibility scope”? This is the essence of the post’s message, and it is clearly identified.