Another option is to use Clojure's built-in socket server (requires Clojure 1.8) it is really nothing more than a TCP socket attached to a normal Clojure repl, so you'll be loading no extra middleware or really anything at all that could slow it down. http://clojure.org/reference/repl_and_main#_launching_a_socket_server
On your local box you can use netcat to connect this all to inferior-lisp. It's a stripped down experience for sure, but it's also going to be about the lightest remote repl you can get. On Wed, Aug 31, 2016 at 11:39 AM, Sean Corfield <s...@corfield.org> wrote: > My understanding is that, by default, CIDER loads quite a bit of > middleware when it connects so that’s likely the cause of the slowdown. You > can override the middleware to provide a more stripped-down experience (but > you’ll lose a lot of CIDER’s functionality) – check the CIDER docs for that. > > > > Sean Corfield -- (970) FOR-SEAN -- (904) 302-SEAN > An Architect's View -- http://corfield.org/ > > "If you're not annoying somebody, you're not really alive." > -- Margaret Atwood > > > > On 8/31/16, 10:28 AM, "Gregg Reynolds" <clojure@googlegroups.com on > behalf of d...@mobileink.com> wrote: > > > > Hi, > > > > I'm having some trouble connecting from a Mac to an nREPL running on an > Intel Edison. I'm using boot to launch the nREPL on the Edison; it's > *very* slow to launch (~2 minutes 15 seconds), which is not too surprising > since the Edison is a relatively constrained device (1 Mb RAM, Atom CPU at > 500 MHz). But connecting to the nREPL with cider-connect is also painfully > slow (~75 seconds). By contrast, connecting via ssh is quite fast. > > > > Does it make sense that connecting is so slow? I would think that once > the JVM and Clojure are up and running connecting should not be so sluggish. > > > > I'm not sure where to direct this question which is why I'm posting to the > general list. At first I thought is was a Cider problem but now I'm not so > sure. Maybe its an nREPL issue? Any suggestions? > > > > I'm using Clojure 1.7. Would upgrading make any difference? > > > > Note that there are three ways to connect to an Edison. It has two USB > ports; one functions as a serial line you can use to connect using screen, > the other functions as an IP-over-USB line (192.168.2.15 on if usb0; this > works out-of-the-box on OS X, might need some configuration on other > platforms). If you connect it to a WiFI network you get a third IP on > interface wlan0. > > > > If I cider-connect to edison2.local (I named my device 'edison2'), cider > tries to establish a direct connection. If I cider-connect to 192.168.2.15 > it tries direct connection; using WiFi IP (e.g. 192.168.1.206), cider tries > to establish an ssh tunnel. In all cases I get the spinning beachball for > well over a minute. > > > > I can cancel the spinning beachball so it isn't totally hung. > > > > Once a connection is established, the nREPL is quite snappy. > > > > ## Steps to reproduce the problem > > > > Connect to the Edison via the serial line (i.e. screen -L > /dev/cu.usbserial... 115200 -l) and launch the nREPL using boot (details > below). > > > > On the Mac host, open a simple clj file in Emacs, cider-connect (C-c M-c) > using any of the hosts mentioned above. > > > > Thanks, > > > > Gregg > > > > ## Environment & Version information > > > > ### CIDER version information > > > > ``` > > ;; Connected to nREPL server - nrepl://localhost:8088 > > ;; CIDER 0.13.0 (California), nREPL 0.2.12 > > ;; Clojure 1.7.0, Java 1.8.0-internal > > ``` > > > > ### Boot version > > > > ~/.boot/profile.boot: > > > > (deftask cider "CIDER profile" > > [] > > (require 'boot.repl) > > (swap! @(resolve 'boot.repl/*default-dependencies*) > > concat '[[org.clojure/tools.nrepl "0.2.12"] > > [cider/cider-nrepl "0.13.0"] > > #_[refactor-nrepl "2.2.0"]]) > > (swap! @(resolve 'boot.repl/*default-middleware*) > > concat '[cider.nrepl/cider-middleware > > #_refactor-nrepl.middleware/wrap-refactor]) > > identity) > > > > Launch cmd: `$ boot cider repl` (this takes a long time, like a couple > of minutes) > > > > nREPL startup msg: > > > > nREPL server started on port 8088 on host 127.0.0.1 - nrepl:// > 127.0.0.1:8088 > > REPL-y 0.3.7, nREPL 0.2.12 > > Clojure 1.7.0 > > OpenJDK Server VM 1.8.0-internal-neck_2016_06_06_15_38-b00 > > > > ### Emacs version > > > > Emacs 24.5.1 (x86_64-apple-darwin13.4.0, NS apple-appkit-1265.21) > > > > clojure-mode-display-version: clojure-mode (version 5.5.2) > > > > ### Operating system > > > > Emacs running on OS X 10.11.5 > > > > nREPL running on Intel Edison: > > > > edison2:~/nrepl$ uname -a > > Linux edison2 3.10.98-poky-edison+ #1 SMP PREEMPT Mon Jun 6 14:32:08 PDT > 2016 i686 GNU/Linux > > > > -- > 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. > For more options, visit https://groups.google.com/d/optout. > -- “One of the main causes of the fall of the Roman Empire was that–lacking zero–they had no way to indicate successful termination of their C programs.” (Robert Firth) -- 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. For more options, visit https://groups.google.com/d/optout.