Download List

Project Description

The descartes language is designed as a computer language that centered on the logical reasoning.

It is logical inferences and search functions that I aims. Moreover, the object group with the functional programming function is the intellectual system that works in parallel at the multi core. In addition, this language operates by I/F of the syntax that closes to human beings.

The descartes language is named commemorating the Descartes. René Descartes is a famous philosopher and a mathematician.

System Requirements

System requirement is not defined
descartes-win

Released at 2010-02-07 14:12
descartes-src ソースパッケージ descartes-src-0.17.0.tar.gz (1 files Hide)

Release Notes

並列論理プログラミング言語:デカルトdescartes-0.17.0をリリースします。


今回のリリースには、デカルト言語で記述したlispインタプリターを
例題として付けました。
これは、解説用に作成したシンプルなlispなのですが、lambda関数を以下のように
書けるLispです。

λx (car x) '(a b c)
λxyz (* x (+ y z)) 9 8 7
λx λy λz (+ x (* y z)) 7 40 3
λxyz (* x (+ y z)) 9 8 7
(define f λx (* x 2))
(define (f x) (* x 2))
(define f (λ(x) (* x 2)))

どうでしょうか?興味あるかたは、ぜひ試してみてください。
リリースパッケージのexample/lispディレクトリの中のReadme.txtに説明
を書きました。また、以下のサイトにも解説記事を載せていきます。

 http://sourceforge.jp/projects/descartes/wiki/FrontPage


その他、変更点を以下に示します。

- デカルトLisp/λを例題として追加。
- デバッグ用トレース出力をONにする、-tオプション, --traceオプションを追加。
- 実行結果表示を行わない-rオプションを追加。
- オブジェクト名に変数を指定できるようにした。
- sysモジュールにseq述語を追加
- {}ループに、ループ内の結果を収集する変数を指定できるようにした。
- 符号付の整数と浮動小数点数の構文解析述語SNUMとSFNUMを追加。

以下のバグを修正しました。

- cygwin環境でncurses.hがなかった場合の対処
- オブジェクトのメソッドの動的削除ができない。
- string.hヘッダのインクルードの不足
- getline述語の再実行時に引数の変数がクリアされなかった。
- 長いリストの表示でSIGSEGV。
- NULLLINE述語の再実行時にファイルポインタが戻らない。


使用方法については、添付のドキュメントや以下のサイトを参照してください。

 http://sourceforge.jp/projects/descartes/wiki/FrontPage

今後もマルチコア機能、オブジェクト指向、データ解析および人工知能(AI)風のプログラム例を増やしていきます。


● ソースパッケージ
descartes-src-0.17.0.tar.gz 

  Linux上では、以下のようにコンパイルします。
$ ./configure; make
Cygwin上では以下のようにコンパイルします。
$ make -f Makefile.cygwin
Mingwでは、以下のようにcygwin上でコンパイルします。
$ make -f Makefile.mingw

● Windows用バイナリパッケージ 
descartes-win-0.17.0.zip

Changelog

変更点を以下に示します。

- デカルトLisp/λを例題として追加。
- デバッグ用トレース出力をONにする、-tオプション, --traceオプションを追加。
- 実行結果表示を行わない-rオプションを追加。
- オブジェクト名に変数を指定できるようにした。
- sysモジュールにseq述語を追加
- {}ループに、ループ内の結果を収集する変数を指定できるようにした。
- 符号付の整数と浮動小数点数の構文解析述語SNUMとSFNUMを追加。

以下のバグを修正しました。

- cygwin環境でncurses.hがなかった場合の対処
- オブジェクトのメソッドの動的削除ができない。
- string.hヘッダのインクルードの不足
- getline述語の再実行時に引数の変数がクリアされなかった。
- 長いリストの表示でSIGSEGV。
- NULLLINE述語の再実行時にファイルポインタが戻らない。