在acid-state
tutorial中,所有示例都使用Template Haskell。但是,由于some reasons我不太热衷于使用它。
我知道没有模板haskell就可以使用酸状态,如下所示:
http://mirror.seize.it/acid-state/examples/HelloWorldNoTH.hs
但是如果有任何便利包装或库来帮助更容易地使用酸状态(不使用模板haskell),我会徘徊吗?
P.S。:我的目的是为网络应用程序实现数据库层。
答案 0 :(得分:4)
你不能写一个派生某个实例的函数,这就是Acid-State使用Template Haskell的原因。
Acid-State的开发人员之前曾提到,如果GHC添加了对自动派生类的支持(非常像data SomeData = Foo | Bar deriving (Show)
)
在您链接的帖子中列出反对 TH的许多要点仅适用于特定情况(例如,您可以非常确定Acid-State的TH功能不会发射任何导弹)< / p>
我真的不认为你应该过分担心使用TH - 它有时会很有帮助!