プログラミング言語 MixJuice
MixJuice (以下 MJ と略) は、Java 言語を改良した言語です。
最大の特徴は「差分ベースモジュール」と呼ぶモジュール機構です。
このモジュール機構は、 Java 言語のモジュール機構よりも
はるかにシンプルであるにもかかわらず、
プログラムの再利用性・拡張性・保守性をより向上させます。
具体的には、 MJ のモジュール機構は以下の特長を持ちます。
- 拡張性の高いアプリケーションが簡潔に書ける。
- クラスとモジュールが直交しており、モジュール化の自由度が高い。
例えば複数のクラスを横断するコラボレーションをモジュールとして
切り出すことができる。
- アプリケーションのエンドユーザが、
実装の詳細を知らなくてもモジュールを組み合わせて使うことができる。
詳しくは、下記のドキュメントを御覧ください。
- 「オブジェクトの広場」解説記事
「オブジェクト指向言語は間違っていた!--- 新世紀言語 MixJuice ---」
- 研究発表用スライド
mj-20020830.pdf
- 一杉裕志、田中哲:
「差分ベースモジュール:クラス独立なモジュール機構」
産業技術総合研究所テクニカルリポート AIST01-J00002-1, Dec. 2001.
AIST01-J00002-1.pdf
- MJ ドキュメント
- FAQ
-
MixJuice によるデザインパターン改善カタログ(日本語版) [New !]、
(英語版)
- レイヤードクラス図 lclass-diag-20021030.pdf
- 2003年度作成のソフトウエアおよびドキュメント [New !]
ダウンロード
デモアプレット
ドローツール、コーヒーカップ
掃除ロボット シミュレーション [New !]
大規模ソフトウエアのMixJuiceへの移植実験のレポート
比較的大規模な既存のオープンソースJavaアプリケーション Grappa のMixJuiceへの移植実験を行い、
MixJuice が有する差分ベースモジュールの評価を行いました。
GrappaのMixJuiceへの移植実験レポート [New !]
差分ベースモジュール for emacs-lisp
emacs-lisp 用差分ベースモジュールを作ってみました。
まだ実用的ではありませんが、 Java 言語以外にも差分ベースモジュールが
適用可能であることを示す一例になっています。
dm-elisp
論文
- 一杉裕志、田中哲、渡部卓雄:
「拡張ルール:安全に結合可能なアスペクトの記述ルール」
PPL2003
発表資料, Mar, 2003.
ppl2003.pdf
- Yuuji Ichisugi, Akira Tanaka, Takuo WATANABE:
"Extension Rules: Description Rules for Safely Composable Aspects"
Technical Report of National Institute of Advanced Industrial Science and Technology(AIST), AIST01-J00002-4, Feb 2003.
tr2003.pdf
- 一杉裕志
「pxml plug-in チュートリアル」
つくばテクノロジーショーケース 配布資料, Jan 2003.
pxml20030130.txt
- 一杉裕志、田中哲、渡部卓雄:
「安全に結合可能な mixin を提供するためのルール」,
コンピュータソフトウエア, Vol.20, No.3(2003), pp.80--87.
- 田中哲、一杉裕志:
「MixJuice 言語によるデザインパターンの改善」,
情報処理学会論文誌:プログラミング, Vol.44 No.SIG 4(PRO 17), pp25--46, Mar. 2003.
- 田中哲、一杉裕志:
「MixJuice 言語によるデザインパターンの改善」
情報処理学会プログラミング言語研究会 発表資料, Oct. 2002.
pro200210.pdf
(スライド pro200210slides.pdf)
- 一杉裕志、田中哲、渡部卓雄:
「安全に結合可能なアスペクトを提供するためのルール」
ソフトウエア科学会第19回大会, Sep. 2002.
mj-jssst2002.pdf
(スライド mj-jssst20020911.pdf)
- Yuuji Ichisugi, Akira Tanaka:
"Difference-Based Modules: A Class-Independent Module Mechanism",
In Proc. of ECOOP 2002,
LNCS 2374, June 2002.
ecoop2002-en.pdf
- 一杉裕志:
「シンプルかつ強力なモジュール機構を有する
オブジェクト指向言語 MixJuice の提案」
コンピュータソフトウエア, Vol.18,No.6(2001),pp.54--58.
- 田中哲、一杉裕志:
「プログラミング言語 MixJuice による HTTP server のモジュール化」
ソフトウエア科学会第18回大会, Sep. 2001.
mj-jssst2001.pdf
- 一杉裕志:
「シンプルかつ強力なモジュール機構を有する
オブジェクト指向言語 MixJuice の提案」
ソフトウエア科学会第17回大会, Sep. 2000.
mj-jssst2000.pdf
研究・開発の目的
MJ は「部品化された言語処理系」の実装用言語として開発を始めました。
また、広い意味でのアスペクト指向プログラミングを
支援する汎用言語でもあります。
詳しくは、下記のページを御覧ください。
- 言語処理系の部品化
- アスペクト指向言語、separation of concerns 関連研究メモ
- Aspect-Oriented Software Development http://aosd.net
プロジェクトスタッフ
-
産業技術総合研究所 情報処理研究部門 /
科学技術振興事業団 さきがけ研究21 元 研究員
一杉裕志
- 産業技術総合研究所 情報処理研究部門 田中哲
|
Last updated:
2004-09-03
|