Fork me on GitHub

@ericihli What’s your CIDER version?

Eric Ihli14:05:20

I don’t have that machine available at the moment, but I updated all my melpa packages as one of my first troubleshooting steps, so I have whatever version was latest yesterday.


@bozhidar thinking about AST based solutions vs REPL loaded code solutions for finding references and the like and caching. I know we cache the AST in refactor-nrepl but we could cache results for operations instead. they would still go stale but would be more effective maybe with a smaller footprint. also thinking about used locals for a given form: perhaps building the ast for the enclosing first level form is a small enough task so you don’t need the cache at all


For small scale operations I’d just build the AST on the fly. I’d probably also build the AST client-side with parseclj.


that is the elisp analyzer by plexus, right?


i still need to properly dig into that. my only worry would be that we loose the editor agnostic nature


True that, but you get a very comfortable API optimized for our editor. 😉


Not to mention that this opens up the possibility to do a lot of things with clojure-mode without a REPL connection.


i am sure it is a joy to work with


so would a “static” (non-evaling) analyzer 😉


i am working on a PoC around this — probably mentioned already


what does it take for me to "link" a clj buffer to a particular cider repl?


back in the day I could eval things in random clojure buffers and it'd run in whatever cider repl happened to be running, and I'd like to get some of that behavior back I think now it wants to only associate things in the same project


look at the sesman-link* functions


there's buffer, folder, project, etc


I got a Wrong type argument: stringp, nil 😂 okay now I'm ready to throw out my old clojure config I think


> back in the day I could eval things in random clojure buffers and it’d run in whatever cider repl happened to be running, and I’d like to get some of that behavior back


Yeah, currently connections are always associated with some (usually project) context so it’s easier to deal with multiple projects. We’ll likely relax this down the road for the case of a single connection.


yeah it seems like a sensible direction to go


okay, I cleared basically all of my clojure emacs cfg and still get Wrong type argument: stringp, nil for M-x sesman-link-with-project


trying sesman-link-with-directory but I'm not sure how to use it


I try to enter the directory where I launched the cider repl, and the minibuffer says [No match]