This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-03-11
Channels
- # architecture (3)
- # beginners (41)
- # boot (7)
- # cider (16)
- # cljs-dev (8)
- # cljsrn (2)
- # clojure (214)
- # clojure-austin (4)
- # clojure-russia (52)
- # clojure-spec (8)
- # clojure-taiwan (1)
- # clojure-uk (10)
- # clojurescript (87)
- # cursive (14)
- # datascript (34)
- # datomic (11)
- # dirac (55)
- # emacs (12)
- # hoplon (44)
- # luminus (6)
- # lumo (24)
- # off-topic (1)
- # om (8)
- # onyx (7)
- # overtone (2)
- # pedestal (1)
- # protorepl (4)
- # re-frame (7)
- # reagent (1)
- # ring (4)
- # rum (2)
- # slack-help (1)
- # spacemacs (2)
- # specter (32)
- # unrepl (131)
- # untangled (14)
- # yada (3)
Hi, I am interested in contributing to specter. Just for fun/learning. But I am not sure which issue I should pick. I don't know where to begin with the issues already opened. Can someone point me to a good starting bug? Thanks
@firesofmay thanks for the contribution you already made
@nathanmarz thanks for your contributions to so many projects 🙂
there's not too much to be added to specter at the moment, I took care of most of the open issues for 1.0
this is probably the most self-contained issue: https://github.com/nathanmarz/specter/issues/183
the most important improvement I'm targeting for next version is https://github.com/nathanmarz/specter/issues/72
but that one is pretty difficult due to needing to have some understanding of what's going on in the inline compiler
plus the complexity of targeting three platforms simultaneously
this one would be nice too: https://github.com/nathanmarz/specter/issues/149
probably won't be very much code, but will require understanding some of the inline compiler
oh, and this one: https://github.com/nathanmarz/specter/issues/39
that one is much easier than the ones that deal with the inline compiler
just need to re-implement protocol paths in terms of primitives shared between cljs and clj
I haven't tried protocol for cljs. Any reference doc?
that lists the differences
Also in Regex navigator
Can you share input output examples?
the main difference is lack of extend
function, which is what Specter currently uses for protocol paths
(setval (regex-all #"aa*") "Q" "aaabcaad") ;; => "QbcQd"
and this too: (setval (regex-first #"aa*") "Q" "aaabcaad") ;; => "Qbcaad"
This looks interesting. And a bit more easy to do I guess. So to implement this functionality where should I start looking at? setval
fn?
it would just be a new navigator
using defnav
look at the implementation of existing navigators to see how it works
Great. I'll check it out 🙂
awesome
@nathanmarz Btw I had a question. I noticed in your project.clj
file you have (def VERSION (.trim (slurp "VERSION")))
and (defproject com.rpl/specter VERSION
What benefit does this provide?
@firesofmay if I have submodules in the project, that makes it easy to have them all share the same version
like if there were a specter-graph
module with navigators for working with graphs
@nathanmarz Ah they all just point to the same file and you just have to bump one single file. Make sense