Next: Идентификаторы, Previous: Комплексные выражения, Up: Выражения [Contents][Index]
Maxima различает операторы, которые являются невычисляемыми (nouns) и операторы,
который являются вычисляемыми (verbs).
Вычисляемым является оператор, который может быть выполнен.
Невычисляемым является оператор, который встречается как символ в выражении,
без вычисления.
По умолчанию, имена функций является вычисляемыми.
Вычисляемая форма может быть переведена в невычисляемую, экранированием (quoting) имени функции
или применением функции nounify.
Невычисляемая форма может быть переведена в вычисляемую, применением функции verbify.
Флаг вычисления nouns вызывает функцию ev для вычисления невычисляемых
форм в выражении.
Вычисляемая форма отличается первым знаком доллара $ в
соответствующем Lisp-символе.
Невычисляемая форма, наоборот, отличается
первым знаком процента % в соответствующем Lisp-символе.
Некоторые невычисляемые формы, такие как 'integrate и 'derivative
(возвращаемые diff),
имеют специальные свойства вывода, но не всегда.
По умолчанию, невычисляемые и вычисляемые формы функции идентичны при выводе.
Глобальный флаг noundisp вызывает то, что Maxima выводит невычисляемые
формы с предшествующей одиночной кавычкой '.
См. также noun, nouns, nounify и verbify.
Примеры:
(%i1) foo (x) := x^2;
2
(%o1) foo(x) := x
(%i2) foo (42);
(%o2) 1764
(%i3) 'foo (42);
(%o3) foo(42)
(%i4) 'foo (42), nouns;
(%o4) 1764
(%i5) declare (bar, noun);
(%o5) done
(%i6) bar (x) := x/17;
x
(%o6) ''bar(x) := --
17
(%i7) bar (52);
(%o7) bar(52)
(%i8) bar (52), nouns;
52
(%o8) --
17
(%i9) integrate (1/x, x, 1, 42);
(%o9) log(42)
(%i10) 'integrate (1/x, x, 1, 42);
42
/
[ 1
(%o10) I - dx
] x
/
1
(%i11) ev (%, nouns);
(%o11) log(42)
Next: Идентификаторы, Previous: Комплексные выражения, Up: Выражения [Contents][Index]