Upper page

純粋遅延関数型言語Concurrent Clean
(Pure and lazy functional language : Concurrent Clean)

〜 The most functional language 〜

  Concurrent Cleanは、オランダのネイメーヘン大学で開発している、純粋な関数型言語です。
  メジャーな関数型言語としては、Lisp、Scheme、ML、Haskell等がありますが、それらに決して劣ることのない環境と言語仕様を持つ言語です。効率性・開発環境・言語仕様どれも最高位ではないかと思うくらいです。言語仕様的には、この中では、Haskellに一番似ているとされています(沿革的にはMirandaと言われる純粋関数型言語の中間言語から出発していますので、Mirandaに似ていると言う方が正確でしょうが)。
  ここでは、著作者たるPlasmeijer教授や他の皆さんに許諾を得て、純粋関数型言語CONCURRENT CLEANのマニュアルの翻訳やCleanIDEの使用法等を載せています。翻訳については、内容の正確性は保証できませんので、あしからず。より正確な翻訳についての指摘・助言は大歓迎です。その場合は、池田 聡まで。
  ここに出てくる見慣れない概念については、私の作成している、基礎概念の項を参照してください。最近の明示的型宣言を必要とする命令型言語(C/C++,Java等)の基本が分かっている人には分かる内容にしているつもりです。



関連リンク
Concurrent Clean公式サイト(Concurrent Clean Official Site)
 Concurrent Cleanシステムの公式サイトです。ここから、開発環境や関連文書を取得できます。対応OSは、Windows(95以上)、MacOS(7.1.2以上)、Linux(486以上、要ELF、libc 6)、Solaris(Sparc版)です。
 開発環境の使用形態は、商用と非商用があり、非商用の場合、LGPL(日本語訳はここここ(Japanese Translation))の下で無償使用できます。ソースコードも公開されています(v2.0以降は大部分がCleanで書かれています)。商用の場合、有償で、その詳細は、こちらこちらとか開発環境付属のライセンス情報を参照して下さい。
Hilt BV
 ネイメーヘン大学と共にConcurrent Cleanシステムの開発を行っている所です。商用の場合には交渉を持つところだと思います。何か教育用のコースも開講しているようです。
Sparkle公式サイト(Sparkle Official Site)
 Cleanの統合開発環境に付属する定理証明系です。Cleanプログラムの部分正当性を確かめる為に使用します。或はプログラムの各部分の特性を証明するのに使用してもよいでしょう。
Cleanゲームライブラリ(Clean Game Library)
 Clean v2.x以降のALL版には最初から入っていますが、Object IOライブラリを使用したゲーム作成用のライブラリです。サンプルゲームもいくつか載っています。また、Clean用に、ゲーム作成のマップエディタもありますので、Cleanでゲームを作るときにはここ(Tile Studio)も参照するとよいでしょう。
Gast公式サイト(Gast Official Site)
 Cleanで書かれた自動テストシステムです。仕様に対して実装が正確に動作するかを自動でテストするシステムです。まだ開発段階で、文書もあまり整っていませんが、既にライブラリの形で提供されています。
Clean要望リスト(Clean Wish List)
 Marco Kesseler氏によるConcurrent Cleanの要望を一覧にしたものです。個人的なものらしいですが、実質的には公式的なものだと思います。とりあえず、Cleanの今の状況が分かると思います。
Hacle
 HaskellコードをCleanコードに変換する翻訳系です。全部のコードを翻訳できるわけではありませんが、大半のものは可能だと思います。吐き出されるコードがCleanからすると必ずしも効率的という訳ではありませんが、Haskellコードの移植には有用でしょう。
lethevertの純粋関数型言語Concurrent Clean覚え書き
 Concurrent Cleanシステムを日本語化することを目的としたサイトのようです。Shift_JISベースでCleanの開発環境を使いたい人には、非常に有用なサイトとなるでしょう。



    Cleanで関数プログラミング」日本語訳
    (Japanese translation of Clean Book)

   この文書は、主にv1.3.xに基づいて作成されており、v2.xを使用する場合には、変更点を考慮しなければならない部分があります(といっても追加がほとんどで、目立った変更点はありません)。本来ならば、v2.xに基づいたチュートリアルがあればいいのですが、教授に聞いたところ、当分作る時間がないということでした。変更点の詳細は、下記言語報告の序文を参照して下さい。

      The above-linked documents are translated by Satoshi Ikeda with the permissions of the authors of the original book.



    Clean言語報告」日本語訳
    (Japanese translation of Language Report)
   Clean言語報告です。要するに、言語リファレンスのことです。これが正式な言語リファレンスですので、Cleanのユーザーは見ておく必要があると思います。

      The above-linked document is translated by Satoshi Ikeda with the leaves of the authors of the original document.



    CleanオブジェクトI/Oライブラリ1.2チュートリアル」日本語訳
    (Japanese translation of a tutorial to Object I/O Library)


   Cleanの開発環境にとって重要な、Clean Object I/O Library Version 1.2のチュートリアルです。技術リファレンスではないとしていますが、参照できる最も網羅的な文書ですので、Object I/O Libraryを使用する場合には必須だと思います。

      The above-linked document is translated by Satoshi Ikeda with the permission of the author of the original document.



    Clean統合開発環境の使い方(How to use Clean IDE)

   Cleanは独自の統合開発環境(IDE)を持っています。従って、Cleanの言語構成を知ることの他に、開発環境の使い方も知らないとまずいと思いますので、それを私なりに適当に作ってみました。Cleanをはじめて使う方は、まずこちらを参照してください。

Upper page