Given a method using the "simple" syntax, wouldn't the ambiguity
complained about disappear by making .invoke() mandatory? I still am a
believer that function types should be treated like an object. It's
almost akin to strongly-typed reflection.
void somemethod(int(int) a) {
a.invoke(2);
}