No more Delegate interface


#1

In M13, the kotlin documentation on Deleagtes states that a delegate does not have to implement an interface but must have at least a method get(Any?, PropertyMetadata): T and maybe a method set(Any?, PropertyMetadata, T).

Why get rid of the interfaces ReadOnlyProperty and ReadWriteProperty ?
I know that they still exist but why stop enforcing their usage ?


#2

This opens up the possiblity to use an extension function and let existing classes, which are not under your control, to be used as delegates. So I like the fact it's not enforced.


#3

It was never a requirement to use an interface.