最近のLispに含まれるパッケージ機能を活用することによって従来の数式処理システムと異なる利用法が期待されるものが作れるのではないかというアイデアを具体的に検討することと、そのようなパッケージを作成する場合の技術的な課題を明確化することの二つについて研究を進めてきた。 まず、これまでに作られてきたLispプログラムを分析することによって、数式処理パッケージに要請される機能を整理した。その結果、主ね多項式(多変数を含む)を扱えればよく、機能の追加や変更が容易でなければならないという結果を得た。また、数式を表現するさまざまな形式に対応できる必要のあることも分った。 次に、そのような機能を持つ数式処理パッケージのプロトタイプをCommon Lispを使って実現することによって、システム作成上の技術的な問題点を考察した。多項式を扱うことから、グレブナー基底の手法を取り入れて数学的に整理した形でパッケージを作り、効率が悪くならないような工夫を行なった。また、数式の表現形式として異なるものの間での変換機能も付加し、利用者インタフェースを良いものとすることも考えた。さらに、実効効率について調べるために、コンパイルを施したパッケージとインタプリティブに動く版の両方を作成し、これらの上で同じ処理を行なう実験を試みた。数メガバイト程度のワークステーションでもコンパイルしたものであれば使えそうな感触を得た。 ただし、利用者による機能の拡張の容易さについてと利用者インタフェースについては問題点も残っているので、数式処理機能の充実と同時に、改めてこれらの点に焦点を置いた研究を続けることが望まれる。
|