Saya ingin belajar FRP di Haskell, tetapi agak sulit untuk memutuskan perpustakaan untuk digunakan. Banyak yang tampaknya merupakan upaya mati, beberapa tampaknya telah dibangkitkan (seperti aktivitas terbaru di Yampa).
Dari apa yang saya baca, tampaknya ada dua "jenis" FRP: push-pull FRP (seperti di Reactive-pisang) di satu sisi dan FRP (seperti di Yampa) yang di-panahkan di sisi lain. Tampaknya dulu ada juga "FRP klasik" pada masa Fran dan FrTime, tetapi saya belum melihat adanya kegiatan baru-baru ini.
Apakah kedua (atau tiga) pendekatan FRP ini benar-benar berbeda secara fundamental?
Apakah salah satunya teori yang ketinggalan jaman sedangkan yang lain akan menjadi "barang masa depan"?
Atau apakah mereka harus berkembang secara paralel, menangani tujuan yang berbeda?
Apakah saya menamai perpustakaan yang paling menonjol dari setiap kategori, atau ada pilihan lain untuk dipertimbangkan (Sodium, Netwire, dkk)?
Saya akhirnya menyaksikan ceramah dari Evan Czaplicki yang direkomendasikan dalam komentar oleh J. Abrahamson. Ini sangat menarik dan membantu mengklarifikasi segalanya untuk saya. Saya sangat merekomendasikan ini kepada siapa pun yang menganggap pertanyaan ini menarik.
reactive-banana
pasti berbasis tarik bukan push-pull. reactive
adalah push-pull. Yampa
dan netwire
panah. Ada FRP yang memungkinkan "nilai akumulasi" tetapi tidak mengizinkan "beralih", FRP yang memungkinkan "beralih" tetapi tidak "nilai akumulasi". Keduanya FRP "sederhana". FRP Arrowized memungkinkan perpindahan dan akumulasi serta menggunakan panah untuk mengontrol bahaya menggabungkan fitur-fitur tersebut. FRP monadik menyukai reactive-banana
,, sodium
dan elerea
menggunakan mekanisme hati-hati lainnya untuk memastikan bahwa beralih dan mengakumulasi tidak terlalu banyak berinteraksi.