On Thu, Dec 4, 2014 at 2:04 PM, Nick Wellnhofer <[email protected]> wrote:
>> I guess you need need a separate Transformer class because you want to >> exclude concrete methods on Analyzer like Transform_Text()? > > Yes. Why is this a requirement? Why can't the Clownfish version of "interface" allow both abstract and concrete methods? Java 8 allows such methods, called "virtual extension methods", "default methods" or "defender methods". http://viralpatel.net/blogs/java-8-default-methods-tutorial/ Scala also allows such methods in its traits. (Scala traits may also have member variables but that would be much harder to implement and I don't want to go there with Clownfish.) Marvin Humphrey
