This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-04-10
Channels
- # beginners (61)
- # boot (264)
- # cider (125)
- # cljs-dev (3)
- # clojure (118)
- # clojure-gamedev (3)
- # clojure-greece (1)
- # clojure-italy (1)
- # clojure-nl (2)
- # clojure-poland (3)
- # clojure-russia (38)
- # clojure-spain (2)
- # clojure-spec (17)
- # clojure-taiwan (1)
- # clojure-uk (42)
- # clojurescript (118)
- # clojutre (5)
- # cursive (24)
- # datomic (22)
- # emacs (3)
- # events (2)
- # figwheel (19)
- # funcool (1)
- # jobs-discuss (224)
- # jobs-rus (1)
- # klipse (14)
- # luminus (1)
- # lumo (49)
- # off-topic (51)
- # om (34)
- # pedestal (1)
- # perun (1)
- # planck (93)
- # powderkeg (1)
- # re-frame (15)
- # ring (4)
- # rum (9)
- # slack-help (3)
- # spacemacs (2)
- # specter (13)
- # uncomplicate (1)
- # unrepl (22)
- # untangled (10)
- # yada (36)
@pesterhazy I mentioned there’s not an EDN parser I’d use
last updated about 8 years go https://www.emacswiki.org/emacs/peg.el 🙂
I’ve definitely mentioned this to Lars. I told him I’d never add a dependency to any of my packages to something unmaintained that doesn’t even have an official repo.
On a related note - this library should probably live in clojure-emacs
to raise its visibility and maybe attract more developers.
searching in docstrings, genius
@bozhidar: I've noticed a few "click here" to find cider links on tthe github and documentation; is there a price at which you would be able to hack on cider full time for a year?
There’s always a price. 🙂 If I could raise something in the vicinity of 100k for a year, I’d definitely consider doing this. At some point I dreamt of some company seeing the benefits of developing a good tooling for Clojure and hiring me to work on it, but several years down the line this doesn’t seem like something that’s ever going to happen.
@pesterhazy well, the genius idea was Emacs’s and it was afterwards copied by SLIME and eventually by CIDER
haha sorry i meant edn.el needs a bit of rewrite to get into clojure-emacs
but you are right indeed that conversation is kinda about rewrites too…
edn.el
can go to clojure-emacs
even in its current form, I’d just not advice its usage until it’s clear what to do about peg.el
@bozhidar : 100k / year is low end of SV salary; so completely reasonable for full time cider dev
@bozhidar : is there a price you would consider porting cider to some editor that was clj/cljs all the way down? or are you fundamentally stuck with emacs and unwilling to build the core of it in clj/cljs ?
well, I’m an Emacs user and CIDER started off as a very personal project for me - I planned to start doing Clojure professionally and I needed good support for Clojure in Emacs
I’m not opposed to doing something similar for a different editor in principle as I love working on developer tools, but with another editor matching the exact CIDER feature set might be harder (or easier).
Even know a lot of the heavy-lifting is done in cider-nrepl
which is editor-agnostic and implemented in pure Clojure
I think as a community, one of the best investments lcojure devs can make is getting an clojure ide written in clojure
on one hand you’re right, on the other - developing an IDE from scratch is a lot of work. It’s much more than just coming up with support for one particular language. It might be fun to work on such a project, I’m just not sure how feasible it would be to build something like this. Most new IDEs/text editors don’t get very far - e.g. NightCode, LightTable, etc.
yeah, there's annoyances on both parts: every time I try to hack on nightcode/lighttable, it just feels too primitive compared to emacs every time I write elisp, I curse and wish I was using cljs
If, hypothetically, we got you 300k, would you be able to hack on it full time for two years?
I’m not Elisp’s biggest fan myself, but I prefer an editor extensible in some dialect of Lisp, compared to something else. Plus, I’ve been using Elisp for quite a while and it almost feels like a real programming language.
I am having the following problem with helm-imenu. I don't want it to use imenu--create-index. I want to create the indev sia: (imenu--generic-function imenu-generic-expression) how do I pass this to the (helm :sources ( ... :candidates ... )) call ?
Is there a way to get jump to source to work for clojure protocols like clojure.lang.Associative
? Suspecting something is wrong with my javadoc setup because the javadoc like in cider doc doesn’t do anything…
@jfntn I think not - at least it doesn't work for me, since it's implemented as a java class. It'd be great if someone more involved like @bozhidar could provide a definitive answer on this, i.e. if it's possible to navigate to the source code of Clojure's java classes like clojure.lang.PersistenceVector
or clojure.lang.Associative
It should work provided you have sources in your classpath. Same applies for javadoc.
@bozhidar thanks for the tip - what's the easiest way of adding the Clojure sources to classpath? (I'm using leiningen)
I've found following issue: https://github.com/clojure-emacs/cider-nrepl/issues/64
And following seems to work:
:profiles {:dev {:dependencies [[org.clojure/clojure "1.8.0" :classifier "sources"]]}}
1. I have cider-connect working.
2. I can evaluate cider forms in my *.clj file.
3. When I type in M-x cider-apropos <RET> assoc! <RET>, I get:
Wrong type argument: stringp, nil
How do I debug this?
toggle-debug-on-error
is always your friend for things like that
I don't have nrepl-toggle . I only have nrepl-toggle-message-logging . Also, I'm cider-connect -ing to a remote nrepl.
turn that on, do the command that you're doing, looks something to do with docs, and paste those messages here
@dpsutton: in the cider repl what am I supposed to type to emulate looking up info on clojure.core/assoc! ?
see how they each have an id on them? the error message coming back unknown op is keyed to id 14 which is just out of range in the screenshot you sent
just turn on the message logging, do whatever you did to trigger the error and let's look at ti
so let's trigger the error, go look at the nrepl logs, and see what request triggered it
(-->
op "info"
ns "z.mdb"
symbol "n"
session "b9a9b0fe-03fa-427e-9bb5-84c46bc2f3ad"
id "25"
)
(<--
id "25"
op "info"
session "b9a9b0fe-03fa-427e-9bb5-84c46bc2f3ad"
status ("done" "unknown-op" "error")
)
(-->
op "apropos"
ns "z.mdb"
query ""
filter-regexps ("^cider.nrepl" "^refactor-nrepl" "^clojure.tools.nrepl")
session "b9a9b0fe-03fa-427e-9bb5-84c46bc2f3ad"
id "26"
)
(<--
apropos-matches ((dict "doc" "Returns the product of nums." "name" "clojure.core/*" "type" "function") ...)
id "26"
session "b9a9b0fe-03fa-427e-9bb5-84c46bc2f3ad"
status ("done")
)
(-->
op "info"
ns "z.mdb"
symbol "clojure.core/assoc!"
session "b9a9b0fe-03fa-427e-9bb5-84c46bc2f3ad"
id "27"
)
(<--
id "27"
op "info"
session "b9a9b0fe-03fa-427e-9bb5-84c46bc2f3ad"
status ("done" "unknown-op" "error")
)
you know what's relaly fucked up? cider-apropos-documentation
<- will actually show me the docs for assoc! in the helm window
cider-apropos
+ assoc!
+ RET<-- error we get
cider-apropos-documentation
+ assoc!
(no RET) <-- completion window shows the documentation
someone recently added support for some datomic stuff and its possible they borked it a little
that dynamic language is so easy to jump to source to look at something and accidentlaly press a key
for some stupid reason, I always thought emacs packages were read only in /usr/local/... when they're clearly write-able in ~/.emacs.d/....
@dpsutton I was trying to write an interactive function to start a standalone cljs repl. However I couldn’t get it to work since I was trying to access the repl buffer right after invoking cider-jack-in
and the buffer didn’t exist yet. I took this from the sibling repl implementation so I’m not sure why that happened. Anything comes to mind?