Next: , Previous: Introduction to Expressions, Up: Expressions   [Contents][Index]

6.2 Nouns and Verbs

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)
Evaluation ·Nouns and verbs ·

Next: , Previous: Introduction to Expressions, Up: Expressions   [Contents][Index]