著者
荻原 剛志 飯田 元 新田 稔 井上 克郎 鳥居 宏次 Ogihara Takeshi Iida Hajimu Nitta Minoru Inoue Katsuro Torii Koji オギハラ タケシ イイダ ハジム ニッタ ミノル イノウエ カツロウ トリイ コウジ
出版者
情報処理学会
雑誌
情報処理学会研究報告プログラミング(PRO) (ISSN:09196072)
巻号頁・発行日
vol.1988, no.94, pp.89-98, 1988-12-09

我々はソフトウェアの開発過程を形式的に記述し,実行するための関数型言語PDL(Process Description Language)およびそのインタプリタを作成した.PDLでは開発過程をツールの起動やウィンドウ操作の系列として記述する.PDLはこれらの操作のための関数や複数の操作を並列実行するための関数を持つ.また,さまざまなマクロ機能があり,定義の記述を容易に行うことができる.PDLインタプリタは,実行中に検出した未定義関数をそのつどユーザに定義させる機能などを持ち,十分詳細化されていない記述も実行可能である.また,デバッグ機能やヒストリ機能,関数定義の画面編集機能などの機能も備えている.我々はすてにJSD(ジャクソンシステム開発法)など,いくつかの開発技法をPDLて記述し,実行している.PDLインタプリタは現在,いくつかのUNIXワークステーション上で稼働中である.
著者
荻原 剛志
出版者
情報処理学会
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21862583)
巻号頁・発行日
vol.2011, no.23, pp.1-8, 2011-03-07
被引用文献数
1

オブジェクト指向を用いない手続き型言語のプログラミングにおいても,機能を提供するコード自体を変更せずに,モジュール間の結合を変更しやすくする方法があれば,独立性,再利用性を高めることができる.本稿では,複数のモジュールが共通して参照する変数を共有変数と呼び,共有変数の変更に伴って,関連するモジュールの手続きを呼び出す仕組みを提案する.モジュール間の連携は動的に変更可能であり,呼び出される手続きの詳細はモジュール内部に隠蔽できる.この仕組みをcovalと呼び,C言語のライブラリとして実装した.Covalを利用したソフトウェアの構築,拡張の例を示し,手続き型プログラミングにおけるデザインパターンの利用可能性について考察する.If some mechanism that can easily change the binding among software modules is provided, it is possible to increase the independency and the reusability of modules, even using procedural programming languages which do not have object-oriented features. This paper proposes a new binding mechanism based on variables shared among modules. The binding mechanism activates functions associated with the shared variable when its value is changed. Binding among modules can be dynamically modified. The concrete information of functions can be hidden inside the modules. This mechanism, coval, is implemented as a library in C. This paper also show some examples of design patterns with coval.