Просто для полноты. Вы можете использовать «лямбда-подобные» (анонимные) функции в R, но если вы хотите использовать их немедленно, вам нужно заключить определение функции в круглые или фигурные скобки:
(function (x) x+1) (1)
{function (x,y) x^y} (2,3)
В случае curve
первый аргумент является либо выражением, либо именем функции, но если это имя функции, то он сначала преобразуется в выражение. (Смотрите первые несколько строк в исходном коде curve
). Поэтому, если это не имя функции, вам понадобится выражение, которое может содержать функцию «лямбда»:
curve((function (x) x^2)(x))
Если вы хотите использовать функцию (в отличие от ее имени) в качестве аргумента, вы можете использовать plot.function:
plot(function(x) x^2)