クレア(プログラミング言語)


Claire_(programming_language)

クレアは、ハイレベルである機能と、オブジェクト指向 のプログラミング言語とルール処理能力。これは、ブイグのe-Lab研究所のYves Caseauによって設計され、2004年に最終的な定義を受けました。
クレア
パラダイム
マルチパラダイム:関数型、オブジェクト指向(クラスベース)、ルール処理、リフレクション
によって設計された
イヴ・カソー
初登場
1994年 (1994)
安定リリース
3.3.46 / 2009年2月17日 ; 12年前  (2009-02-17)
規律の入力
強力、静的および動的の両方 OS クロスプラットフォーム
ライセンス
パーミッシブフリーソフトウェアライセンス
ファイル名拡張子 .cl Webサイト
www .claire-language .com
主な実装
クレア(リファレンス実装)、WebClaire
に影響を受けた
Smalltalk、SETL、OPS5、Lisp、ML、C、LORE、LAURE
クレアは提供します:
パラメトリック クラスとメソッドを備えたシンプルなオブジェクトシステム
多形およびパラメトリック関数型プログラミング
イベントによってトリガーされるプロダクションルール
システム全体または任意の部分の状態のバージョン管理されたスナップショット。ロールバックと検索スペースの簡単な探索をサポートします。
エンティティ間の明示的な関係。たとえば、2つのエンティティが互いに逆であると宣言される場合があります
セットベースのプログラミングに便利な構文を備えたファーストクラスのセット
2次の 静的型付けと動的型付けの両方を可能にする表現力豊かなセットベースの型システム
インタプリタとコンパイラで構成されるClaireのリファレンス実装は、2009年2月のバージョン3.3.46のリリースで完全にオープンソースになりました。別の実装であるWebClaireは商業的にサポートされています。

概要
クレアは汎用プログラミング言語であり、高度なデータモデリング、ルール処理、または問題解決を必要とするアプリケーションソフトウェアに最適です。WebClaireは、オペレーティングシステムとの完全な統合およびWebアプリケーションのプログラミングのための拡張機能を追加します。
Claireは完全なプロジェクトに使用できますが、C ++またはJavaとスムーズに統合できるように設計されています。ClaireプログラムにはC ++またはJavaコードが含まれる場合があり、ClaireコードはC ++またはJavaプロジェクトで使用するためにC ++またはJavaに変換される場合が
クレアを他のプログラミング言語と区別する主要な機能セットは、複雑な最適化問題を解決した経験によって決定されています。OCaml、Scala、F#など、他の関数型/オブジェクト指向の混合言語には見られない2つの機能は、バージョン管理とプロダクションルールです。
バージョンは、システムの一部のスナップショットのスタックとして表示できます。スナップショットは、必要に応じて大きく(表現力を高めるため)または小さく(効率を高めるため)作成できます。バージョンの作成とロールバックにより、論理プログラミングで見られるようにバックトラックが可能になりますが、クレアのバックトラックは、論理変数のセットだけでなく、ユーザー定義の構造をカバーする場合が
クレアのプロダクションルールは、イベント、条件、および条件が満たされた場合に評価される応答で構成されます。イベントは、オブジェクトのスロットの変更またはクラスのインスタンス化である可能性があり、応答自体がさらなるイベントを開始する可能性がこのような生成ルールは、制約の伝播などのリアクティブアルゴリズムを記述する場合に特に役立ちます。
クレアは、多くのパラダイムを組み合わせた1980年代にカソーによって設計された表現力豊かで複雑な言語であるLAUREの後継として作成されました。Claireは、前任者よりも習得しやすく、C ++に比べてパフォーマンスのオーバーヘッドを課さないことを目的としていました。したがって、これははるかに小さい言語であり、制約や演繹規則などの機能が省略されており、精神と構文の点でCに近いものです。業界での主なユーザーは、ブイグとタレスのグループです。


n番目のフィボナッチ数を計算する関数:
fib(n:integer):整数->(if(n <2)1それ以外の場合、fib(n-1)+ fib(n-2))

外部リンク
公式ウェブサイト
image"   Claireの最新バージョンとそのドキュメントは、「claireprogramminglanguage」Yahoo!から入手できます。グループ、無料登録が必要です。
ClaireとWebClaireのドキュメント。
YvesCaseauとFrançoisLaburtheによる「CLAIREプログラミング言語バージョン3.2の紹介」。
Yves Caseau、François-XavierJosset、FrançoisLaburthe(2002)による「CLAIRE:セット、検索、ルールを組み合わせてより良い表現アルゴリズム」。ベンチマークを含む、学術関係者向けの26ページの概要。”