= ClojureCLR

== Current Status

ClojureCLR on CIDER is not great due to the lack of a fully-functional nREPL
server for ClojureCLR. There are currently two options:

- https://github.com/clojure/clr.tools.nrepl[clr.tools.nrepl]: A direct (but incomplete) port of the reference Clojure nREPL server.
- https://github.com/arcadia-unity/Arcadia/blob/master/Editor/NRepl.cs[Arcadia's nREPL]: A basic, but working nREPL implementation in C#.

If you need to use CIDER with ClojureCLR today Arcadia's nREPL is your only usable option. That being said - `clr.tools.nrepl` is a much
more sophisticated project and ideally we should get it over to the finish line.

== Usage

NOTE: Contributions welcome!

As `cider-jack-in` doesn't support ClojureCLR projects out-of-the-box currently, you'll need to start an nREPL server externally and
connect to it with `cider-connect`.

== Plans

In an ideal world we'll achieve the following objectives:

- out-of-the-box ClojureCLR support with `cider-jack-in`
- feature parity between Clojure's nREPL implementation and `clr.tools.nrepl` (the project can use some help)
- adapting `cider-nrepl` for ClojureCLR (some of its codebase is JVM-specific)

Given that Bozhidar's knowledge of CLR and time are limited, it'd be great if we manage to find some volunteers to help with the
work that's needed in this direction. In particular it'd be amazing to complete `clr.tools.nrepl`, as the project needs relatively
little work to be fully usable.
