Next: Identifiers, Previous: Introduction to Expressions, Up: Expressions [Contents][Index]
Maximaは「名詞(Noun)」演算子と「動詞(Verb)」演算子を区別します。
動詞は実行される演算子です。
名詞は式の中で、実行されずシンボルとして現れる演算子です。
デフォルトでは、関数名は動詞です。
動詞は、関数名をクォートすることで、また、nounify関数を適用することで、
名詞に変えることができます。
名詞は、verbify関数を適用することで動詞に変えることができます。
評価フラグnounsは、evを式の中の名詞を評価するようにします。
動詞形は、対応するLispシンボル上では、先頭のドル記号$で区別されます。
対照的に、
名詞形は、対応するLispシンボル上では、先頭のパーセント記号%で区別されます。
'integrateや(diffが返す)'derivativeのように、
いくつかの名詞は特別な表示プロパティを持ちますが、ほとんどは特別な表示を持ちません。
デフォルトでは、表示される時、関数の名詞と動詞形は同一です。
グローバルフラグ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: Identifiers, Previous: Introduction to Expressions, Up: Expressions [Contents][Index]