其中玻璃钢包选择? [关闭](Which FRP package to choose? [clo

2019-06-23 09:02发布

我刚开始寻找到在Haskell功能反应式编程的世界,我想与GUI编程试验(用GTK,因为大量的结合)在reactional设置。

现在,我一直在寻找一个位在葡萄柚,无功,香蕉和巴斯特,我想任何证明使用任何一个或其他包装的快乐/恐怖。

我只有这些初步oppinions:

  • 我不介意做一些玻璃钢包的结合来GTK我自己,因为我对抽象后端想法的ambivalet感觉(即柚子有)..

  • 虽然我觉得类型理论有意思,我也很看重简单的编码为实际的方案,这似乎把grapfruit-记录有点过..

也就是说,除非当然有些人劝我认为并非如此:-)

Answer 1:

如果你只是想用普通玻璃钢,并贴近GUI框架,而不是使用“预发”抽象了它,反应香蕉是最可行的选择,在我看来。 它明确各地结合现有框架的面向,是专为“真实世界”的使用(没有做任何过多的实验,语义,可能导致问题的),等等。

你可以看看反应香蕉-WX ,看看如何绑定基于事件的框架,以无功香蕉。 这是非常简单的; 我写了一个快速结合Gtk2Hs一次(现在失去的代码,不幸),该文件并没有越过50线。 这几乎是无功香蕉WX代码的直接音译。

我会建议不要使用巴斯特,原因很简单,它没有被自2009年更新 ,并没有建立在GHC 7。

其他的“生产型” FRP框架是钠 (类似于反应性香蕉,但它具有动态事件开关 (其即将在反应性香蕉 ,但并不是在又)和并发性“分区”的概念;然而,它刚出来,并没有看到采纳还)和netwire (arrowised FRP,一个完全不同的生物反应性,香蕉和钠)。



Answer 2:

我一直在尝试用FRP自己,迄今只有这对我工作的一个反应是香蕉。 我从来没有看着柚子或其他大部分,因为他们已经过时,似乎并不像他们很可能会被更新或支持在所有。 我简要地看看netwire,但坦率地说所有的箭头理论它把我赶走,我有很多的麻烦搞清楚怎么做,甚至简单的事情。

相反,我得到了一个相当不错的集绑定到SDL写的反应,香蕉,只有沿途几个打嗝。 有利于反应香蕉的另一件事是,Heinreich是在社区非常活跃,当你遇到问题往往会提供有用的答案。 只要看看通过在这里的各种活性香蕉的问题,你会看到他的回应相当多的人,他通常是在Haskell的邮件列表FRP的讨论非常活跃。



文章来源: Which FRP package to choose? [closed]