I disagree currently this is a compile time checks provided by javac. On May 30, 11:42 am, Meikel Brandmeyer <m...@kotka.de> wrote: > 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