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]