言語ゲーム

とあるエンジニアが嘘ばかり書く日記

Twitter: @propella

現在、あまり良くない局面にある。
特に制約を中心として色々な物を調査してきたが、その結果以下の状況にある。

  • 本来の趣旨である「楽しいテスト」について何も出来ていない。
  • 楽しいインタフェースが出来ていない。

一方で、ここ1週間の成果物としては、

  • eToys における相対参照の可能性の調査
  • 依存と step の組み合わせによる双方向制約の実装
  • WorldExplorer 開発と Visor パターンの調査
  • mix-in インタフェースと Prolog 制約の関連性

今日NHK大阪宮田さんの取材があった。まだ出来ていないから仕方が無いが、
うまく伝えられたとはとても言えない。デモンストレーションを見据えて
ユーザインタフェースの開発に注力する必要がある。

  • ある数 Any がある。
  • Alias は常にその値と同じである。

a := Any new.
b := a asAlias

a set: 8
b = 8

b set: 16
a = 16

Any>>asAlias = (Alias new init: self)
Alias > value -- Alias はフィールド value を持つ
Alias>>init: x = (value := x)
Alias>>set: x = (value set: x) -- Alias は値を2倍して n に送る
Alias>>return = (value return) -- Alias は n から値を半分にして返す。

Any オブジェクト、Alias オブジェクトは数そのものとまったく同じに使える。(Proxy)

alias(X, Y) := X = Y.