Looks super interesting! Some quick thoughts/questions:

Why is it a goal to write an editor in Clojure? Would this editor be a
general one, or would it be a Clojure editor?

I am of course happy you see Calva as a good option for Clojure coding. I
think the major thing lacking from it is Socket REPL support. That makes me
think about Clover, from the same author as Chlorine for Atom. Chlorine
ticks off a lot of your boxes. Clover is currently of a much more limited
use than Chlorine, because reasons. One of which is that Clojure coding is
about more than the REPL, and some of that is a lot of work and Calva is a
bit of a monolith making its formatter and stuff part of the Calva package
only. I have tried to refactor Calva some to make it less monolithic so
that Clover could benefit from some of the work that has been put into
making Calva nice. But I got stuck, or rather ran out of time. One way
forward for mult could be to pick up Clover + help in refactoring Calva to
make parts of it usable by Clover users.

Another way forward could be to start porting more of Calva to
ClojureScript (it is partly written in CLJS, actually). I have made several
attempts at this, but always found my time to be too limited to not spend
on actually making Calva more usable instead.

I think (and maybe it is me being biased) that beginning Clojurians benefit
from one clear option for VS Code, so I think the second way forward there
is the best.

I'm plugging the Tao of Calva here, for easy comparison between the goals
of mult and the goals of Calva:
https://github.com/BetterThanTomorrow/calva/wiki

Regards,
/Peter

On Tue, Aug 11, 2020 at 8:29 AM Sergei Udris <sergei.ud...@gmail.com> wrote:

> # mult: hypothetical clojure(script) extension for vscode
>
> https://github.com/cljctools/mult
>
> ## rationale
>
> - clojure(script) IDE experience is no minor issue - it's the thing
> between you and programs
>
> - the editor and the extension
>   - should be long-term satisfactory, enjoyable and even inspiring
>   - should be open source
>   - should be written in clojure, or at least the extension should be written 
> in clojure(script)
>     - for simplicity
>     - for asynchrony done via processes
> - the extension should
>   - support multiple repl connections from one editor window
>   - have a file configuration (for user and projects), where connections and 
> repls can be specified (to not depend on key-combo connection sequences)
>   - be simpler, code-wise and feature-wise
> - making an editor in clojure is, no doubt, a goal, but the extension for an 
> existing editor is a logical first step
>   - the work of making an extension is trasferrable even into an editor 
> written in clojure, so the work won't be lost
> - existing editor + extension combos
>   - Emacs + Cider
>     - perfect, if you're into it
>   - IntelliJ + Cursive
>     - both closed source, Cursive comes with conditions
>   - VSCode + Calva
>     - can be considered the current best option
>     - VSCode is the undeniable best open source editor
>     - Calva works perfectly, but is written in typescript
>     - nodejs runtime is undesirable, but not a problem
>
>
> Should mult be made ? Critique, comments are appreciated.
>
>
> Rationale can also be found here(same):
>
> https://github.com/cljctools/mult/blob/master/docs/design.md#rationale
>
> Same post can be found on a separate mailing list:
>
> https://groups.google.com/g/cljctools/c/Qyz0qCxVC-Y
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/clojure/CA%2Bq3MLzN-X9GNyGqwPT9aHg0YNJHC_YrUR098ukhbqwWdSFcgg%40mail.gmail.com
> <https://groups.google.com/d/msgid/clojure/CA%2Bq3MLzN-X9GNyGqwPT9aHg0YNJHC_YrUR098ukhbqwWdSFcgg%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/clojure/CAMX9Yz_brhY_mGVjx8%2BUXjkG2E%3Dfq%3DrRJXiU18qCYKsT%3D6L3Pg%40mail.gmail.com.

Reply via email to