I added an explanation of this a comment to the documentation on
http://clojuredocs.org

On May 29, 3:01 pm, Sean Corfield <seancorfi...@gmail.com> wrote:
> I also ran into this recently - doing the exact same thing (a log4j
> appender). I was a bit surprised and I wonder if Clojure is
> effectively generating abstract classes rather than concrete classes?
> (Do we have no way to specify the difference? Is that only an artifact
> of the Java compiler, not the JVM bytecode?)
>
> As you say, the fix tends to be easy (read the class API docs and
> implement the missing methods) but the behavior needs to be clearly
> documented (on clojure.org) to help people avoid the problem I
> think...
>
> Sean
>
>
>
> On Sun, May 29, 2011 at 7:04 AM, ckirkendall <ckirkend...@gmail.com> wrote:
> > I ran into this when creating a log4j appender in Clojure.  I extended
> > the AppenderSkeleton, an abstract class. This abstract class
> > implements Appender.  Appender defines two methods that don't appear
> > in the AbstractSkeleton (requiresLayout & close).  I was able to
> > compile the Clojure class, without the two methods in question, with
> > no error.  I then threw a runtime exception when I tried to use the
> > class.  The fix was easy but it seems this should probably be checked
> > at compile time.

-- 
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