Next: Functions and Variables for Structures, Previous: Structures, Up: Structures [Contents][Index]
Maximaは構造体と呼ばれる簡単なデータ集合体を提供します。 構造体は 引数が名前(フィールド名)によって識別され、式全体が演算子(構造体名)によって識別される式です。 フィールド名は任意の式を取り得ます。
構造体はdefstruct関数によって定義されます;
グローバル変数structuresはユーザー定義の構造体のリストです。
関数newは構造体のインスタンスを生成します。
@演算子はフィールドを参照します。
kill(S)は構造体定義Sを取り除き、
kill(x@ a)は
構造体インスタンスxのフィールドaをアンバインドします。
(display2dをtrueで使う)プリティプリンティングのコンソール表示では、
構造体インスタンスは、
左辺側にフィールド名、右辺側に値の式として表されたそれぞれのフィールドの値と一緒に
表示されます。
(等式は単に表示物です; 値だけが実際に保存されます。)
(grindを介してか、display2dをfalseで使う)1次元表示では
構造体はフィールド名ないで表示されます。
フィールド値はラムダ式でありえますが、フィールド名を関数名として使う方法はありません。 フィールドの値はあるタイプに制約することもできません; 任意のフィールドにはどんな種類の式に割り当てることができます。 フィールドを、違った文脈でアクセス可能にしたり不可能する方法はありません; すべてのフィールドはいつも可視です。
Next: Functions and Variables for Structures, Previous: Structures, Up: Structures [Contents][Index]