protorepl

sparkofreason 2017-08-23T22:43:50.000166Z

Switched to proto-repl this weekend, loving it so far. Actually my second time around with it, definitely much more usable than it was in my first encounter. One question: is there a way to get the sort of static analysis we see with Cursive, e.g. highlighting undefined symbols?

seancorfield 2017-08-23T22:50:42.000068Z

I don't believe anyone has written a package for that (yet)...

seancorfield 2017-08-23T22:51:27.000034Z

TBH, I just hit shift-opt-cmd-b and have it evaluate the current top-level form and see whether it compiles.

rgdelato 2017-08-23T23:09:54.000152Z

@dave.dixon I've been using linter-joker: https://atom.io/packages/linter-joker

sparkofreason 2017-08-23T23:17:02.000314Z

@rgdelato Thanks, will give it a try.

sparkofreason 2017-08-23T23:17:40.000037Z

@seancorfield Are you using something in conjunction with that approach to make exceptions shorter/easier to read?

rgdelato 2017-08-23T23:20:06.000049Z

There are also Atom plugins for eastwood and kibit, but they both use lein so they're both super-slow, and eastwood doesn't work on CLJS, so joker is the best I've been able to find.

seancorfield 2017-08-23T23:20:27.000146Z

From an undefined symbol on compilation? Here's what I see in my REPL for such a thing:

java.lang.RuntimeException: Unable to resolve symbol: foo in this context
clojure.lang.Compiler$CompilerException: java.lang.RuntimeException: Unable to resolve symbol: foo in this context, compiling:(/Developer/workspace/wsmain/clojure/api/test/worldsingles/expectations/mobile/user.clj:381:11)

seancorfield 2017-08-23T23:20:39.000040Z

No stack trace, just the error.

seancorfield 2017-08-23T23:21:00.000055Z

(may be a difference between using Leiningen and Boot? I use the latter)

sparkofreason 2017-08-23T23:23:39.000051Z

That's the kind of thing I see as well (also using boot), just a lot of them when typing with proto-repl active.

seancorfield 2017-08-23T23:30:54.000215Z

Ah, do you have the experimental auto-evaluate feature turned on? I don't find that very productive...

rgdelato 2017-08-23T23:33:50.000062Z

Here's a screenshot from joker. Is this the kind of thing you're looking for?

sparkofreason 2017-08-23T23:34:20.000012Z

Yes, I do have autoeval turned on. I like it, warts and all, but certainly has room for improvement.

sparkofreason 2017-08-23T23:36:14.000031Z

@rgdelato Yes. However, haven't had any luck getting it to run, keep getting an error like "Error running joker - Process timed out". joker is available on my path, can execute from the cmd-line. Using Windows.

seancorfield 2017-08-23T23:40:40.000047Z

@rgdelato I'd seen someone else mention joker and it looks interesting... I might try that!

rgdelato 2017-08-23T23:44:01.000258Z

Created an issue on the repo: https://github.com/rgdelato/linter-joker/issues/4

seancorfield 2017-08-23T23:53:06.000256Z

I'm reminded why I hate Ruby/Homebrew 🤕 goes to StackOverflow to see how to fix his broken brew install crash, bang, wallop searches for reasons that Joker won't install runs brew update -- ah, success this time! finally installs Joker via Homebrew!

seancorfield 2017-08-23T23:54:46.000204Z

Wow, linter-joker causes a lot of dependencies (packages) to be installed... click yes, click yes, click yes...