Вы также можете просто ввести свой код в виде строки:
code = %{
lambda {"hello ruby code".split(" ").each{|e| puts e + "!"}}
}
затем выполните его с помощью eval
eval code
, который вернет рубиновую лямду.
с использованием формата %{}
экранирует строку, но закрывается только на непревзойденную фигурную скобку. то есть вы можете вкладывать фигурные скобки, как это %{ [] {} }
, и они все еще закрыты.
большинство текстовых подсветок синтаксиса не понимают, что это строка, поэтому все равно отображают обычную подсветку кода.