やっぱり無名アクタには惹かれるなぁ

状態を持たないアクタ Add に 1 と 2 を渡し、その結果をアクタ Receiver に送信してもらうメッセージ式は、

Add 1 2 [Receiver result]

みたいになるのかな。意味は Receiver.result(Add(1, 2)) みたいな感じ。
次に、Timeout アクタを実装してみる。まずは使い方から。

Add 1 2 [Timeout.newSecond(10, [Receiver result])]

10 秒待って何もメッセージが来なかったら、Receiver.result(void) を起動する。
そして、この実装はこんな感じになるはず。

actor Timeout is
    constructor newSecond(Time, Redirect) is
        @Redirect = Redirect
        Delay on Time [This timeout]
    end
    procedure timeout is
        void >> @Redirect
    end
    procedure Value is
        Value >> @Redirect
    end
end

……たぶん動くんじゃないのかな……。