@Thinkscape We chose to do both interfaces as well as duck typing. Duck typing is often easier to explain and requires less boilerplate than interface usage, while interface usage provides IDE integration and signature validation. We're not throwing away anything; we're trying to support multiple use cases, and specifically the use case of those less versed in OOP.