>>340 この場合 if ワーカーは
boolean1 block1 elseif boolean2 block2 else block3;
のような順にメッセージを受け取ることを考えてました

……ですが、全ての if オブジェクトは単一インスタンスになっているということに気づき、
このままでは入れ子したときに不味い事が判ったので、Smalltalk の ifTrue 形式に変えます
これならば入れ子は問題ないですし

質問ですが、現在オブジェクト指向と言っておきながら、メッセージがオブジェクトに関連付けられてません
仮に Foo オブジェクトの Bar メソッドを実行しようとして Foo Bar; としても、
Bar という名前のニックネーム(変数)が既にある場合、何の問題も無く変数展開されます(cry

関数名と引数を同一視するという構造にも問題があるような気がしますが、
上手く使えば関数名を変数に入れて起動……なんてこともできるかもです

こちらでも色々な事を必死に考えていますが、何か改良案ありましたらお願いいたします
相変わらず長くてすみません
いろいろと整理が付いてきたので、迷惑ならばそろそろ消えようと思います