I tend to agree. However it is worth noting that there are some libraries in the Clojure ecosystem e.g. Om and stuartsierra/component that do expect users to interact directly with protocols as part of the public API. So this doesn't seem to be yet adopted as a universal rule.
On Sunday, 28 December 2014 15:50:06 UTC+8, Jozef Wagner wrote: > > Protocols should never ever be part of public API. Protocols can be part > of the SPI, if custom extensions are to be supported. Otherwise they are an > implementation detail. See Rich's talk at 4:30 http://vimeo.com/100518968 > > Jozef > > On Sun, Dec 28, 2014 at 8:11 AM, Mikera <mike.r.an...@gmail.com > <javascript:>> wrote: > >> That depends if the protocols are part of your user-facing API or not - a >> lot of the time I find that protocols are best hidden as implementation >> details rather than exposed to users. >> >> In core.matrix, for example, users never see the protocols directly: only >> implementers of new matrix libraries need to care >> >> On Sunday, 28 December 2014 02:32:44 UTC+8, Ashton Kemerling wrote: >>> >>> Changing old protocol names should trigger a major revision change in >>> the minimum because it breaks backwards compatibility. >>> >>> --Ashton >>> >>> Sent from my iPhone >>> >>> > On Dec 27, 2014, at 11:18 AM, Michael Klishin <michael....@gmail.com> >>> wrote: >>> > >>> >> On 27 December 2014 at 19:10:38, Jozef Wagner (jozef....@gmail.com) >>> wrote: >>> >> clj-time seems to be naming protocols inconsistently. It uses >>> >> ISomething, Something and SomethingProtocol naming. >>> > >>> > I suspect it is because it has 60 contributors and most users never >>> have to >>> > extend the protocols. >>> > >>> > Feel free to submit a PR that standardises all names on Something. >>> > -- >>> > @michaelklishin, github.com/michaelklishin >>> > >>> > -- >>> > You received this message because you are subscribed to the Google >>> > Groups "Clojure" group. >>> > To post to this group, send email to clo...@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+u...@googlegroups.com >>> > 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 clojure+u...@googlegroups.com. >>> > For more options, visit https://groups.google.com/d/optout. >>> >> > -- 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 --- 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 clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.