我需要一组键值对来从文件中读取配置。我尝试在Data.Map上使用show,它看起来并不像我想要的那样。这似乎是许多其他人可能已经做过的事情,所以我想知道是否有标准的方法来做它以及使用什么库。
答案 0 :(得分:16)
答案 1 :(得分:6)
Hackage上的配置类别应列出所有相关库: http://hackage.haskell.org/packages/#cat:Configuration
我现在自己研究了这个话题,我的结论是:
其他解决方案看起来并不适合我,我不喜欢API,但每个应用程序(和品味)都不同。
我认为使用JSON不是一个好的解决方案,因为至少在新版本中添加新设置时使用Aeson,没有新版本成员的旧JSON不会加载。此外,我觉得这个解决方案有点冗长。
我的研究结论是我编写了自己的库app-settings,它的目标是键值,读写,尽可能使用succint和类型安全的API。而且你也会在我给出的配置类别的hackage链接中找到它。
总而言之,我认为configurator是只读配置的标准(它也非常强大,你可以用导入拆分配置文件)。对于读写,有许多小型库,有些是未维护的,我认为没有真正的标准。
更新2018年请务必查看dhall
答案 2 :(得分:4)
答案 3 :(得分:3)
configfile package看起来像你想要的。