You can create instances that implement multiple Java interfaces using
`reify` or by declaring them inline of a `defrecord` or a `deftype`.
(See http://clojure.org/reference/datatypes for more.)
Clojure does *not* encourage or support concrete inheritance (other than of
the limited degree provided by `proxy`) and you will generally find that to
be a hard way to go.
On Monday, October 31, 2016 at 3:22:07 PM UTC-5, John Szakmeister wrote:
>
> I'm looking at using Clojure in an application where we make
> fine-grained use of interfaces that help describe the capabilities of
> an object. We need to take several interfaces and bring them
> together, not necessarily in an implementation, but to help define
> what the overall interface for the object needs to support.
>
> In Java, I could use an abstract base class to help:
>
> public abstract class MyGear implements IFoo, IBar {
> // ...
> }
>
> How does one do such a thing in Clojure? Does it even make sense? I
> could see turning some things on their head an using multi-methods for
> this, but I thought I'd ask and see if there is some other approach I
> may be missing.
>
> Thanks!
>
> -John
>
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.