問題タブ [sodiumfrp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactive-programming - ReactFX と Sodium の比較
Sodium に関する本は理解しやすいため、2 つのライブラリ (Sodium と ReactFX) を比較することで、人々は本から学んだことを活用し、その知識を使用して ReactFX に GUI を実装できると期待しています。
これが、この質問を投稿する動機です。
そこで、この目標を達成するのに役立つ 11 の質問をします。
次の 11 のナトリウムの概念に対応する ReactFX の概念は何ですか?
1細胞/行動
2 ストリーム/イベント
3 フィルター
4 マージ
5合体
6 スイッチ
7 決して
8ホールド
9 スナップショット
10 マップ
11リフト
編集:
12 CellLoop/スナップショット ホールド ループ
haskell - Sodium の「動作」を再帰的に更新すると、「スレッドがブロックされました ...」が生成されます
現在の値から動作 (セル/ヴァル) を更新します。
ただし、次のコードは、MVar 操作の例外で無期限にブロックされたスレッドをスローします。
「iの値:」が3回出力されると予想していました。私は何を逃したのですか?- ありがとう。
- GHCi、バージョン 7.8.3
- ナトリウム-0.11.0.3
haskell - ghcjs + ナトリウム: しばらくするとイベントが発生しません
更新: ghcjs に問題があります: https://github.com/ghcjs/ghcjs/issues/296
私はghcjsとsodiumで遊んでいますが、3秒後にアプリケーションがイベントを発行しなくなりました。
最小限の例:
- ボタン: イベントを発行する
- カウンター動作: ボタンのクリック数をカウントします
- a div: カウンターの動作を表示します
- 3 秒後、div は更新されなくなります
- ページをリロードすると、カウンターが再び更新されます - 3 秒間
完全な例はhttps://github.com/j-keck/ghcjs-sodiumにあります
ありがとう
functional-programming - Blackheath の「関数型リアクティブ プログラミング」本、2.6.3 セクションの説明
セクションでは、FRP ストリーム処理におけるマージ操作について説明します ( Sodium ライブラリが使用されます)。Book は、ストリームの組み合わせを示す以下の図を示しており、イベントがストリームを介して FRP ロジックに入ると、トランザクション コンテキストで発生する状態変化のカスケードが発生するため、すべての変更はアトミックであると述べています。
イベントのストリーム - sDeselect
、sSelect
(「+」と「-」の 2 つのイベントを参照) は UI コントロールから発生しています。これは、同じ FRP トランザクション内で発生するため、実行されるイベントは同時と見なされます。それから本は言います
マージの実装では、それ以上入力を受信しないことがわかるまで、イベントを一時ストレージに格納 する必要があります。次に、イベントを出力します。複数のイベントを受け取った場合は、指定された関数を使用してそれらを結合します。それ以外の場合は、受信した 1 つのイベントを出力します。
質問:「これ以上インプットが来ない」時はいつですか?マージ関数はこの瞬間をどのように認識していますか? 特定のダイアグラムの 2 番目の着信ストリームから値を取得するのは単に時間ですか、それとも不足していますか? より良いストリームの例で説明できますか?