Maxima はじめに
Maxima > はじめに
はじめに
[編集]Maxima とは
[編集]Maximaは、Gnu Public License の元で配布されている数式処理システムである。
この文書は、Maxima を使い始めようとする人達のために、Maximaのインストールから基本的な使い方までを説明するために書かれた。
Maxima は、無料で配布されており、誰でも入手することができる。しかし、無料であることは必ずしも品質が悪いことを意味するわけではなく、市販の数式処理システムと比較して機能が劣るわけでもない。また、一般的な市販の数式処理システムが大変高価であることを考えると、特に個人で数式処理システムを使いたい場合には、有力な選択肢と言えるだろう。
なお、Maxima のインストールは、利用する環境によってはやや難しいかもしれない。それは、Maxima が LISP の一方言である Common Lisp という比較的知名度の低い言語によって書かれているためである。そのため、Maxima をインストールするためには、まず Common Lisp の処理系をインストールすることから始めなければならない。
Maxima の歴史
[編集]Maxima は1968年に MIT における Mac プロジェクト[1]の一つとして開発され始めて、1982年に DOE Maxima として MIT のエネルギー学部でテキサス大学の William F Schelter 教授がメンテナンスをしていた。1998年に Schelter 教授が MIT のエネルギー学部から Gnu Public License の元で配布する事を許可され、2000年から sourceforge.net にて Maxima として配布とメンテナンスがされている。
なお、Schelter 教授は2001年に死去された。Maxima を起動した直後に表示される「Dedicated to the memory of William Schelter.」の一文は Schelter 教授の功績を称えるものである。
LISPとは
[編集]LISP とはラムダ計算を実現する関数型プログラミング言語で、CLOSのような埋め込み型のオブジェクト指向言語も利用出来る事からもわかるようにマルチパラダイム言語へと進化している。1958年に開発された世界で2番目に古い高級言語としても知られている。現在スクリプト言語で有名な Perl や Python、Ruby などの源流になっているものである。源流だからといってスクリプト言語ではなくて、処理系の中にコンパイル機能とインタプリタ機能を混在させており、処理速度はネイティブコンパイラを持っている処理系ならば一般的に C++ より少し遅く Java よりは速いというくらいになっている。使い方によっては C より速くなる場合もある事は知られている。また、Maximaで用いられているCommon Lispは言語仕様(ANSI)にコンパイラに関する記述がある唯一の言語である(インタプリタに関する記述はない)。
LISP の特徴として、以下のものが挙げられる。
- 前置記法
- S式
- 言語仕様を自由に拡張出来る柔軟さ
- 動的な言語
- 強力なマクロ機能
前置記法とは、例えば、
1 + 2
の演算に相当する記法を
(+ 1 2)
のように演算子(ここでは +)を前に、被演算子(ここでは 1 と 2)を後に記す記法である。
外部リンク
[編集]- 公式ホームページ (英文)
- マニュアルMaxima 5.9.1 (英文)
- 日本語に翻訳中のマニュアル
日本語の解説
- 数式処理システム Maxima - 入門的な解説。
- Maximaで遊ぼう - マニュアルの日本語翻訳者による解説。