Я хочу временно переименовать встроенный символ и использовать его с другим именем, в то же время блокируя основное имя этого символа.Например, я хочу, чтобы следующий код печатал только «2», но не «1» и «3»:
Block[{print = Print, Print}, Print[1]; print[2]; Print[3];]
В действительности вышеприведенный код ничего не печатает.
Можно ли заставить print
работать внутри такого кода, пока полностью блокируется символ Print
?
Решения типа
With[{Print = f, print = Print}, Print[1]; print[2]; Print[3];]
не подходят, поскольку Print
На самом деле не блокируется внутри такого кода.
Вопрос возник, когда думает о способе отключения трассировки Message
внутренних компонентов.