Подтвердить что ты не робот

Почему `: =` работает как инфиксный оператор?

Почему в R?

выполняется следующее:
> `:=` <- function(x, y) x + y
> 1 := 2
[1] 3

Мое понимание заключалось в том, что % требуется для пользовательских операторов infix. Существуют ли другие (возможно, более простые для ввода) варианты?

4b9b3361

Ответ 1

Это потому, что :=, как <- или <<-, определяется как LEFT_ASSIGN для парсера R.
См. http://svn.r-project.org/R/trunk/src/main/gram.y

Это означает, что := является особым случаем, и вы также можете не ожидать, что доступны другие параметры.