Moreover, following the mailing discussion linked from the clojure.org
site, leads to the following quote from Rich - about 10 years ago :)
/If a protocol comes with Clojure itself, avoid extending it to types //
//you don't own, especially e.g. java.lang.String and other core Java //
//interfaces. Rest assured if a protocol should extend to it, it will, //
//else lobby for it. /
On 30/01/2020 17:58, dimitris wrote:
Well, the official Clojure guidelines are to NOT extend protocols,
unless you own either the protocol of the type(s) [1].
In particular these lines:/
/
/If you are a library developer, you should not extend if you own
neither the protocol nor the target./
/You should take particular care when extending protocols included
with Clojure itself./
/
/
Kind regards,
Dimitris
[1]: https://clojure.org/reference/protocols#_extend_via_metadata
On 30/01/2020 17:50, Sean Corfield wrote:
Is there a reason you’ve mirrored those protocols/implementations
rather than just use Clojure’s built-in versions?
As it stands, your library wouldn’t work with other tooling that
builds on Clojure’s datafy/nav (REBL, for example).
Sean Corfield -- (904) 302-SEAN
An Architect's View -- http://corfield.org/
"If you're not annoying somebody, you're not really alive."
-- Margaret Atwood
*From: *dimitris <mailto:jimpil1...@gmail.com>
*Sent: *Thursday, January 30, 2020 9:05 AM
*To: *Clojure <mailto:clojure@googlegroups.com>
*Subject: *Feedback on datafy/nav project
Hi folks,
I'm looking for honest and constructive feedback on [1] - not so much
about the actual implementation (even though these are welcome too), but
rather about the general idea of basing everything on top of (mirrored
versions) `datafy` and `nav` (in this way). There is a TL;DR section at
the very bottom that describes the approach in 4 short sentences.
Many thanks in advance,
Dimitris
[1]: https://github.com/jimpil/jedi-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
---
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.
To view this discussion on the web visit
https://groups.google.com/d/msgid/clojure/d0db9e09-6419-2e13-3a0b-9bacf2bbf4fd%40gmail.com.
--
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
<mailto:clojure+unsubscr...@googlegroups.com>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/clojure/5e331755.1c69fb81.ff1ad.21cf%40mx.google.com
<https://groups.google.com/d/msgid/clojure/5e331755.1c69fb81.ff1ad.21cf%40mx.google.com?utm_medium=email&utm_source=footer>.
--
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.
To view this discussion on the web visit
https://groups.google.com/d/msgid/clojure/1b80b69a-cd71-0101-d6ff-d3988af29590%40gmail.com.