The compiler needs to inform the user that they
NEED to implement all of the contracts defined in an interface when they implement that interface within a struct.
The problem is the compiler tries to turn a struct abstract, which is invalid; this is because classes are normally marked abstract if they do not implement all of an interfaces contracts.
The following code should exhibits this bad behavior.
import System
struct test(IComparable):
pass