Можно ли получить встроенную оценку, аналогичную Clojure, в Ruby? - PullRequest
1 голос
/ 14 января 2020

В Clojure можно оценить встроенную форму и распечатать результат. Реализации различаются для разных редакторов, но вот как это выглядит при использовании Visual Studio Code с Calva:

enter image description here

Возможно ли в любом редакторе сделать такой же (или что-то похожее) с Ruby?

Ответы [ 3 ]

2 голосов
/ 14 января 2020

В некотором смысле это тривиально возможно в любом редакторе с возможностями плагинов / сценариев. Это просто вопрос того, сколько работы вы готовы вкладывать.

Например, этот блог описывает, как это сделать в Vim. Указанный метод c не очень важен, суть в том, что он возможен из-за особенностей, которыми обладает Vim:

  • , он имеет сценарии, так что вы можете читать / записывать в переменные и объединять операции в строки
  • он может оценивать произвольные системные команды
  • имеет настраиваемые привязки клавиш

Таким образом, он может в основном автоматизировать то, что вы будете делать вручную: скопировать некоторый исходный код, вставить это код в интерпретатор, запустите его, захватите результат в виде текста, вставьте его обратно в редактор.

2 голосов
/ 15 января 2020

Да!

Этот инструмент интегрируется с кучей редакторов.

Авди Гримм, автор Ruby скринкастов Tapas, часто его использует. Пример

1 голос
/ 14 января 2020

Полагаю, эта функция очень распространена для функциональных языков (по крайней мере, Elm, Haskell тоже поддерживает это), но я не думаю, что это возможно в Ruby. Но вы можете использовать REPL (например, IRB или Pry), чтобы получить возвращаемое значение оператора, который вы ввели после нажатия клавиши ввода.

Если есть расширение IDE, поддерживающее эту функцию, я очень хочу услышать об этом.

...