#!/usr/bin/env bb ;; Based on: ;; https://book.babashka.org/#_interacting_with_an_nrepl_server (ns nrepl-client (:require [bencode.core :as b])) (defn nrepl-eval [port expr] (println (clojure.string/trim expr)) (let [s (java.net.Socket. "localhost" port) out (.getOutputStream s) in (java.io.PushbackInputStream. (.getInputStream s)) _ (b/write-bencode out {"op" "eval" "code" expr}) bytes (get (b/read-bencode in) "value")] (println ";;" (String. bytes)))) (nrepl-eval 1667 (slurp *in*))