セクションでは、FRP ストリーム処理におけるマージ操作について説明します ( Sodium ライブラリが使用されます)。Book は、ストリームの組み合わせを示す以下の図を示しており、イベントがストリームを介して FRP ロジックに入ると、トランザクション コンテキストで発生する状態変化のカスケードが発生するため、すべての変更はアトミックであると述べています。
イベントのストリーム - sDeselect
、sSelect
(「+」と「-」の 2 つのイベントを参照) は UI コントロールから発生しています。これは、同じ FRP トランザクション内で発生するため、実行されるイベントは同時と見なされます。それから本は言います
マージの実装では、それ以上入力を受信しないことがわかるまで、イベントを一時ストレージに格納 する必要があります。次に、イベントを出力します。複数のイベントを受け取った場合は、指定された関数を使用してそれらを結合します。それ以外の場合は、受信した 1 つのイベントを出力します。
質問:「これ以上インプットが来ない」時はいつですか?マージ関数はこの瞬間をどのように認識していますか? 特定のダイアグラムの 2 番目の着信ストリームから値を取得するのは単に時間ですか、それとも不足していますか? より良いストリームの例で説明できますか?