[SML 7265] メッセージパッシング
AOKI Atsushi
aoki @ sra.co.jp
2007年 2月 8日 (木) 14:12:02 JST
皆さんへ
じゅんのメーリングリストに質問したことを、SMLへの公開質問
にさせてください。message passing の良い日本語訳を捜してます。
------------------------------------------------------------
R2D2 (AOKI Atsushi) http://www.sra.co.jp/people/aoki/
-------- Original Message --------
Subject: [Jun 5807] メッセージパッシング
Date: Wed, 07 Feb 2007 14:17:02 +0900
From: AOKI Atsushi
青木です。
ちょっと術語の日本語訳で助力をお願いします。message passing
も、message sending も、共にメッセージ送信と訳されていると思
いますが、パッシングの意味をより強く表出するような言葉があり
ませんかね?
------------------------------------------------------------
R2D2 (AOKI Atsushi) http://www.sra.co.jp/people/aoki/
-------- Original Message --------
Subject: [Jun 5809] Re: メッセージパッシング
Date: Wed, 7 Feb 2007 14:50:00 +0900
From: Tomohiro Oda
計算モデル寄りの話ならメッセージ送受、
処理系実装寄りの話ならメッセージ配送、
などはどうでしょう。
-------- Original Message --------
Subject: Re: [Jun 5809] Re: メッセージパッシング
Date: Thu, 08 Feb 2007 13:40:47 +0900
From: AOKI Atsushi
Tomohiro Oda wrote:
> 計算モデル寄りの話ならメッセージ送受、
> 処理系実装寄りの話ならメッセージ配送、
> などはどうでしょう。
なかなか!いい感じですね。伝送や推移そして経路や並行などが計
り知れる言葉が好ましいのです。
大胆にも浅岡さんが日経ソフトウエア連載の第6回で、シュード変
数(pseudo variable:模擬変数)の【thisContext】を紹介してい
ます。メッセージパッシングへと誘(いさな)う良い切り口でしょ。
あるオブジェクトがこのメッセージをすでに受信していますか?と
いうプログラミングは以下のようになります。たぶん Java で書き
直そうとするときに嫌われるであろう Smalltalk のプログラム。
has: anObject alreadyReceived: thisMessage
aContext := thisContext.
aBlock := [:context |
(anObject == context receiver and: [thisMessage == context selector])
ifTrue: [^true].
context sender ifNotNil: [:it | aBlock value: it sender]].
aBlock value: aContext sender.
^false
自分の実行環境(実行文脈/実行経緯)=過去をたどって調べあげ、
真偽を答えますので、模擬変数【thisContext】を引いていますね。
上記のプログラムは、調べ上げるスコープを、自分のプロセス(ス
レッド)内に閉じていますが、最近の私は、これまた大胆にも並行
プロセス(マルチスレッド)の実行環境下でも動くようなプログラ
ミングをしました。ターボなスパイダーを実現するプログラミング
でやったのです。ためになりましたよぉ〜!(並行で動作するマル
チスレッドのソースコードデバッガの自作ですから。)
------------------------------------------------------------
R2D2 (AOKI Atsushi) http://www.sra.co.jp/people/aoki/
SML メーリングリストの案内