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/3caceeee-a3e9-4b74-bb86-870d3012fa5e%40gmail.com.

Reply via email to