Hi,

I think, clojure just generates a class with stubs for all methods, which 
check whether an implementing function exists. If yes, they call it. If no, 
they pass on to super. If there is no such method in super, they throw a 
reasonable exception. Eg. I get the following for a class implementing 
Iterable without defining -iterator:
UnsupportedOperationException iterator (foo.Bar/-iterator not defined?)  
foo.Bar.iterator (:-1)

What might be a problem though, is that your superclass claims to implement 
a given interface without actually doing so. Then clojure sees the 
"implemented" methods, but calling them will fail.

My gut feeling is, that the abstract class should document, that you have to 
implement these methods. Having javac point you to such a fact is not 
good-style, IMHO.

Sincerely
Meikel

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to