程序员常刷题介绍JsonGrammar JsonGrammar是一个Haskell库,用于在Haskell数据类型和AST之间进行转换。确实已经有一些JSON库了。但是,这些库要求您分别编写fromJsontoJson。同样,如果我向您展示toJson的实现,您可以编写随附的fromJson。把同一件事写两次很乏味,而且很可能会犯错误。这些库中的大多数都提供了模板Haskell支持,可以为您完成这项工作,但他们也为您做出关于数据类型应如何映射到JSON的所有选择。通常他们假设您的记录字段的名称直接映射到JSON属性名称。您的数据类型系列的形状需要与JSON中对象的嵌套方式相对应。这些库为您提供了选择:要么您手动编写fromJsontoJson并完全控制映射,要么您放弃这种控制并让模板处理。