chlorine-clover

About Chlorine for Atom and Clover for VS Code: https://atom.io/packages/chlorine and https://marketplace.visualstudio.com/items?itemName=mauricioszabo.clover
mauricio.szabo 2019-11-07T00:33:25.263100Z

Okay, that's really strange

mauricio.szabo 2019-11-07T00:33:54.264100Z

There is a way, but the "discovery" part happens before all machinery is ready to evaluate request/response

mauricio.szabo 2019-11-07T00:34:57.265700Z

It would complicate a little bit the code, so I suggest you add some prn commands and check what's happening on the socket... (provided that you want to debug this issue, of course ;))

mauricio.szabo 2019-11-07T00:35:14.266300Z

BTW, I'm installing Arcadia to check what's happening

2019-11-07T01:04:01.268800Z

thanks for the info -- may be you know already, but i think the port to connect to for the socket is by default 32770: https://github.com/arcadia-unity/Arcadia/wiki/REPL also, there is typically a configuration.edn file in Assets/Arcadia/ where one can override this port like this:

:socket-repl {:address "::"
               :port 37228}
i do auto-detection of this port in some custom code for another editor inspired by your shadow-cljs socket repl port detection 😉

mauricio.szabo 2019-11-07T01:05:07.269300Z

I didn't know that 😉 I'm still installing Arcadia... my internet is really really slow today 😞

2019-11-07T01:05:41.269500Z

ah sorry to hear about the slow connection -- for some reason it has been slow for me recently too

mauricio.szabo 2019-11-07T01:06:36.269700Z

There's an open issue (ideas) on github page to make some APIs public, like the connection, so people could implement their own "auto-detect ports" or even an "automatic connect" 🙂

2019-11-07T01:09:44.269900Z

ah, that sounds good -- i'll go look. btw, for jvm clojure, i learned about jcmd the other day. i guess it can list the pids of jvms -- so i thought one might use jcmd to find all jvm pids and then use something like netstat or lsof to find candidate ports to connect to. then an editor might show some possible ports to connect to. though i don't know quite how to do the port stuff on windows.

2019-11-07T01:11:54.270200Z

may be you were referring to this? https://github.com/mauricioszabo/atom-chlorine/issues/94

mauricio.szabo 2019-11-07T01:15:07.270600Z

Yes, that one 🙂 There were also discussions on #88

2019-11-07T01:17:55.270800Z

reading #88 reminds me of the idea of project-specific settings

2019-11-07T01:18:14.271Z

it would be nice if there were editor-independent ways to store such things

mauricio.szabo 2019-11-07T01:19:48.271300Z

I am really considering the possibility to add somekind of "edn file with configurations" on some configurable path, to be honest. Maybe even add a view to configure the package, so it would bypass the Atom configuration settings' limitations

mauricio.szabo 2019-11-07T01:20:00.271500Z

(but this is really low on priority, TBH)

2019-11-07T01:21:01.271700Z

very much interested in discussing such a file -- since i use multiple editors, it would be nice to have it work in more than one place

2019-11-07T01:21:52.271900Z

have also thought whether shadow-cljs' approach of a directory with separate files for different pieces of info might not be a bad idea

2019-11-07T01:22:52.272100Z

anyway, hope to talk about it more at some point 🙂

mauricio.szabo 2019-11-07T01:25:12.272300Z

Well, if you have any ideas, sketch it and we can talk, maybe it's not that hard to implement something. Just out of curiosity, what do you mean by multiple editors? Multiple Atom instances?

2019-11-07T01:31:08.272500Z

no, sorry, i mean i use different editors altogether, atom, emacs, vim

mauricio.szabo 2019-11-07T01:42:02.272700Z

Ah, ok 🙂

2019-11-07T04:59:11.273800Z

i'm failing to find the definition for inline/set-content! that is used here: https://github.com/mauricioszabo/atom-chlorine/blob/master/src/chlorine/socket_repl.cljs#L53 -- am i missing something obvious?

2019-11-07T05:03:50.274400Z

ah, i guess may be that's part of some stuff that's getting removed?

mauricio.szabo 2019-11-07T13:57:29.274600Z

You just found a dead namespace 😄

mauricio.szabo 2019-11-07T13:58:29.275100Z

chlorine.socket-repl is not used anymore, I'll delete this file 🙂

2019-11-07T15:15:44.277400Z

ah thanks for the clarification :)

👍 1
2019-11-07T21:59:00.279300Z

i put the following in a file (say "test"):

#?(:cljs :using-cljs-repl :clj :using-clj-repl :cljr :using-cljr-repl :joker :using-joker-repl :bb :using-bb-repl)
:using-unknown-repl

and did cat test | nc ::1 37220 here to test with arcadia (on some linuxes, clojure clr seems to like using ipv6 by default) the evaluation result of the first form comes back ok, but not the second one so may be there are timing issues?

mauricio.szabo 2019-11-07T22:10:59.280Z

Yes, it can be. These "small issues" are kinda bad to deal with...

2019-11-07T22:17:30.280500Z

i'll bug the arcadia folks a bit about it