I’m trying to come up with a typology of eval messages, so far I identified four kinds: 1/ regular repl 2/ eval selection (in file buffer) and update repl (`*1` and friends are impacted), serialized with evals of type #1; switch and restore ns as required 3/ eval selection (in file buffer) but displays output in a transient buffer, not serialized with type #1, doesn’t update bindings 4/ out-of-the-blue eval for tooling purposes (doesn’t change bindings)
#4 and #3 may be the same
maybe interprocess remote control?
Also might be just #4
hey, so it's pretty featureless and not yet documented, but rep
, a single-shot nREPL client, is here: https://github.com/eraserhd/rep/tree/develop
Building with Graal will be documented. It's painful and requires a patched Clojure and patched spec.alpha.
Not sure the purpose of the typology, but one use I've overheard is processes talking to each other. There's a bit in the nREPL about using the protocol to notify another server that it's alive and on what port, for example.
I can't delete my DynamoDBs which back my Datomic databases from my laptop, so my restore-dev-environment-from-prod-back script runs datomic.api/delete-database via the socket REPL (over SSH).
Is this tooling for purposes of your typology?
yes becaue it’s not tied to a user session (a user session being embodied by a repl buffer with history etc.)
Rendering is half broken but remote browsing in action
\o/