joker

Discuss all things joker, the Clojure interpreter/linter on top of Go. https://github.com/candid82/joker
jumar 2019-06-12T05:51:43.015500Z

What's your workflow when writing scripts for Joker? Can I somehow fireup a REPL while developing my scripts and inspect/experiment with joker standard namespaces (https://candid82.github.io/joker/) ?

2019-06-12T07:11:30.016100Z

Ya totally

2019-06-12T07:11:55.016300Z

If you run just joker it drops you in a REPL

2019-06-12T07:12:25.016500Z

But no editor integration, there's no nRepl or Cider for it

2019-06-12T07:13:04.016700Z

It's just Clojure for the most part. clojure.core is almost all there and identical

2019-06-12T07:13:51.017Z

But none of the other namespaces are. Instead it offers its own set of additional namespaces. Which the link you have is the reference for.

2019-06-12T07:14:47.017200Z

In your script, you can also just shebang for joker to run them

2019-06-12T07:15:27.017400Z

Or call joker my-script.joke

2019-06-12T13:54:15.017700Z

Yeah, I use (load-file...) generously, I wish there was something like Cursive for it so that I can edit the code in the IDE and evaluate in the REPL.

richiardiandrea 2019-06-12T14:15:54.017900Z

It has a socket REPL so something like https://github.com/mfikes/tubular should work with Cursive

2019-06-12T16:17:38.018300Z

woah! Thanks for pointing it out!

2019-06-12T16:49:04.018500Z

I'm getting:

<srepl>:6:2: Parse error: Unable to resolve symbol: clojure.lang.Compiler/load
:thinking_face: I'll look more into this

richiardiandrea 2019-06-12T20:17:00.018700Z

Oh maybe that using internal Clojure only stuff...too bad because it should not 😃 maybe open an issue in the project?

richiardiandrea 2019-06-12T20:17:09.018900Z

Mike is always super helpful

jumar 2019-06-13T06:00:53.019100Z

Thanks a lot for all the answers. Really helpful 🙂

pyrmont 2019-06-14T01:52:19.020400Z

Tubular is a socket REPL client. You need Joker to have socket REPL server support for IDE integration, don't you?

2019-06-14T15:57:17.020600Z

It does, joker --repl localhost:5555

pyrmont 2019-06-14T16:07:36.023500Z

My bad. I realise the comment was about middleware that would allow Cursive to talk to Joker. Makes more sense now :)

Candid 2019-06-15T04:29:42.025100Z

Also, I have not tested it, but Joker should work with inf-clojure mode in emacs: https://github.com/clojure-emacs/inf-clojure/pull/160