One big thing to consider is that core.match is closed dispatch. If you write a function that uses core.match, I can't extend it inside my code. This is something that is possible with both multi-methods and protocols.
Timothy On Fri, May 15, 2015 at 12:49 PM, Sam Raker <[email protected]> wrote: > The discussion/post-linked-to in > https://groups.google.com/d/msg/clojure/eoAp6QVimYI/iipmEJNKdrIJ have got > me thinking about protocols & multimethods, which I admittedly have > possibly never actually used, now that I think about it. I'm wondering how > they differ from core.match[1]. I realize protocols, specifically, have a > niche for when you have concrete type information about your data and want > better performance. I'm a little less clear about multimethods--in > particular, I just considered using multimethods for something, and then > ended up reaching for core.match because it seemed more closure-friendly. > > What, if any, are the benefits of using protocols/multimethods over > core.match, or vice versa? When would you reach for one and definitely not > the other(s)? > > > [1] https://github.com/clojure/core.match > > -- > 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. > -- “One of the main causes of the fall of the Roman Empire was that–lacking zero–they had no way to indicate successful termination of their C programs.” (Robert Firth) -- 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.
