В чем конкретная разница между заменой сокетов Clojure 1.8 и nREPL?

Я читал это, но, похоже, нет учебника/документа о разнице между этими двумя или еще чем-то.

Заменит ли socket repl nrepl?


person Shiva Wu    schedule 15.06.2016    source источник


Ответы (2)


По крайней мере, не сейчас. clojure.core.server/repl — это просто старый добрый REPL, который прослушивает сокет и также выдает вывод через сокет. Я бы предпочел, чтобы этот сокет repl был хорошим и небольшим исправлением для добавления REPL по сети без (большого) изменения кода.

nREPL, с другой стороны, давно отсутствует. Он предоставляет гораздо больше функций, среди которых промежуточное ПО является наиболее заметным. nREPL позволяет редакторам и IDE интерактивно взаимодействовать с JVM, обогащая опыт использования базового REPL.

person Davyzhu    schedule 16.06.2016
comment
Что можно сделать с сокетом, чего нельзя сделать с существующим nREPL? - person ClojureMostly; 16.06.2016
comment
@Андре Боюсь, нет. Он обеспечивает только удобства. - person Davyzhu; 17.06.2016

тлдр;

  • Socket repl — это просто старый repl, обслуживаемый на Socket. Он ориентирован на поток
  • nREPL — это сетевой REPL, хотя название похоже на socket repl, но они очень разные. nREPL — программа, ориентированная на работу с сообщениями, с архитектурой сервер/клиент.

Длинная версия:

person Jiacai Liu    schedule 22.12.2017