並列論理プログラミング言語:デカルトdescartes-0.11.0をリリースします。 今回のリリースで、大きな変更点は、マルチコア対応機能をサポートしたことです。マルチコアシステム上での効率の良い並列コンピューティングが可能となりました。 マルチコアのシステム上で、N個のコアがあれば、N倍以上の速度のプログラムを書くことができます。 変更点を以下に示します。 - マルチコア対応機能の追加 - for, foreach述語の拡張 - findlist述語の追加 - NULLLINE述語の追加 - isObj述語の追加 - cloneObj述語の追加 - object用のテストセットの追加 - object処理の内部処理の見直し 以下のバグを修正した。 - 組み込み述語の引数の評価で異常終了 - make用のファイルのパーミッションの見直し - delArray, delVar述語の引数の処理の異常 - コメントが途中でEOFになったときの処理を修正 - 固有値の計算でSIGSEGVになるのを修正 使用方法については、添付のドキュメントや以下のサイトを参照してください。 http://sourceforge.jp/projects/descartes/wiki/FrontPage ドキュメントの整備が少し遅れていますが、マルチコア機能の使い方など新機能については順次ドキュメントを追加していきます。 今後はマルチコア機能、オブジェクト指向、データ解析および人工知能(AI)風のプログラム例を増やしていきます。 ● ソースパッケージ descartes-src-0.11.0.tar.gz Linux上でコンパイルしてください。 (申し訳ありませんが、今回はWindows上でマルチコア対応ができなかったため、Linux向けのみのリリースとなります。) *** デカルト言語は、論理推論をベースとした並列ロジック言語です。 *** Prolog 言語のように論理的な関係を記述し、それを基に結果を推論することによってプログラムを実行します。 それに加えて、プログラミングの表現力を向上させるために、関数型および手続き的なプログラミングパラダイムを導入しました。また、BNF 記法に準拠した構文解析機能を文法の基本的な要素として導入しています。 決定的なルーチン処理は関数型や手続き型のプロシージャとして記述し、知識集約的な推論が必要な処理には論理型として記述します。 さらに、デカルト言語は、オブジェクト指向の機構を持ちます。このオブジェクト指向機構は、論理的な関係の構造を柔軟に表現し、また、共通に使用するモジュールをライブラリ化するのにも利用しています。 また、マルチコア対応機能を持ち、効率の良い並列コンピューティングが可能です。マルチコアのシステム上で、N個のコアがあれば、N倍以上の速度で処理するプログラムが書けます。