利用する際には)「すべてはオブジェクト」というよりは「すべてはメッセージング」であることを意識すべし...という話をうけての、結城さんの、sumimさんの「すべてがメッセージングということに注目してほしいな」というエントリ(タイトル勝手に付けました)を読んで、ふと「Smalltalkでの代入は?」と思いました。手法を用い、実際にメッセージングで代入を行なえるように細工をしてみました。こんなふうな実際動作するコードとして記述できます。xなお、メッセージングに置き換えたのは代入のみで、参照のほうは簡単のため従来通りとしました。ような記述こそ(コンパイラをいじれば別ですが、普通は...)許されないものの、代わりに全角の「++」を使うことで、同様の手法にて“インクリメント”も実現可能です。ようなメッセージの)メッセージング...という解釈での実現方法もありえるでしょう。value」や「++」の送信)として記述可能です。頃への“先祖返り”の様相を呈してきますね(^_^;)。おいては、メソッド定義におけるメッセージパターン(メソッド定義の一行目。メソッド名やパラメータ変数名の宣言を兼ねている)や一時変数の宣言、返り値の指定、リテラルの記述など、その記述がメッセージングのスタイルになっていない“例外”は確かに存在します。これらの多くは内部的にはメッセージングで表現し直されている(あるいは、メッセージングによりしかるべく処理されている)場合が多いので、利便性などの理由があって、あえてそうしていると考えるのがよさそうです。ような)が送られたり、それに対応するメソッド(同、#ifTrue:ifFalse:)が起動されることはない...といったような逆のパターンの“例外”も存在します。これらは、当該メソッドの定義に手を入れるときやメタプログラミングの際に、思わぬ落とし穴になりがちなので、知って注意しておく必要がありそうです。Smalltalkで変態的に末尾再帰最適化をする。box」(turtleにplace追加、squareとboxの定義)月別アーカイブはてなブログをはじめよう!sumimさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。