We can add new behaviour to classes with the ExpandoMetaClass, but we can do the same for interfaces. We can add new methods to interfaces through the metaClass property.
interface Nothing { }
class Simple implements Nothing { }
Nothing.metaClass.groovyShoutOut = { -> "Groovy is awesome!" }
def s = new Simple()
assert 'Groovy is awesome!' == s.groovyShoutOut()