-
- 香川 考司
- 京都大学数理解析研究所
書誌事項
- タイトル別名
-
- Modeling Local States using Monad Morphisms.
- Monad Morphism ニ ヨル キョクショテキ ジョウタイ ノ ヒョウ
この論文をさがす
抄録
<p>破壊的代入,入出力などの副作用を関数型言語で模倣するプログラムを書く際に,副作用をmonadというある種の条件を満たす型構成子として表現すると,プログラムの可読性,変更のしやすさなどが増すことがわかってきている.しかし,従来では代表的な副作用である"状態"を扱う場合に,1つの(平板な)構造しか状態として扱うことができず,関数型言語の特徴の1つである,組やリストなどの階層的データをその構造を生かして状態として扱うことは難しかった.その結果,状態を扱うプログラムをこれらのデータ型を介して部品化することができないため,あるデータ型の状態を対象として書かれたプログラムの部品を,他のデータ型を状態として持つ場合に再利用することが難しく,関数型言語にmonadを導入する動機の1つである命令的プログラムの書換え,再利用の容易性が達成されたとはいい難かった.例えば,配列を2つ以上扱いたい時に,どのように配列を1つだけ扱うプログラムの部品を再利用してプログラムを書けばいいのか,その方法がわからなかった.この論文では,階層的なデータ型の中の構成要素の"位置"をmonad morphismとして表現し,その位置にあるデータを局所的状態として扱うことにより,複合的,階層的なデータをその構造に自然な形で状態として扱う方法を提案する.その結果,プログラムの部品化を容易に行なうことができるようになる.結果としてのプログラミングのスタイルは,オブジェクト指向プログラミングを思い起こさせるものとなる.ここでは,オブジェクト指向との対応についても述べる.</p>
収録刊行物
-
- コンピュータ ソフトウェア
-
コンピュータ ソフトウェア 11 (5), 5_377-5_386, 1994-09-16
日本ソフトウェア科学会
- Tweet
詳細情報 詳細情報について
-
- CRID
- 1390282763061812480
-
- NII論文ID
- 130007505223
- 110003743830
-
- NII書誌ID
- AN10075819
-
- NDL書誌ID
- 3900026
-
- ISSN
- 02896540
-
- 本文言語コード
- ja
-
- データソース種別
-
- JaLC
- NDL
- CiNii Articles
-
- 抄録ライセンスフラグ
- 使用不可