首页 文章
  • 2 votes
     answers
     views

    为Text.PrettyPrint.Doc派生Typeable

    我有一个AST类型,我想导出为Typeable,所以我可以做Scrap-your-boilerplate泛型遍历 . 但是,该树使用漂亮包中的Text.PrettyPrint库的 Doc 类型中的消息进行注释 . 要派生Typeable,需要有一个可输入的 Doc 实例 . 这是我尝试过但失败的原因: deriving instance Data P.Doc deriving instance T...
  • 2 votes
     answers
     views

    了解如何构建GHC.Generics Rep并转换回值

    我正在尝试学习如何使用GHC.Generics . 一个引人入胜的话题,但令人生畏 . 在阅读博客条目24 Days of GHC Extensions: DeriveGeneric时,我学会了如何获取值并导航其 Rep . 好的 . 但是,阅读博客条目Building data constructors with GHC Generics,它描述了构建 Rep 并将其转换回值的模拟,我感到难过...
  • 2 votes
     answers
     views

    构造具有简单求和类型的所有值的n元产品

    我正在使用generics-sop库 . 我想写一个具有以下类型的值: values :: forall r. IsEnumType r => NP (K r) (Code r) 也就是说,对于构造函数没有任何参数(IsEnumType)的sum类型,我想生成一个n-ary乘积(NP),其中contains是每个点的相应构造函数值 . 例如,对于类型 {-# LANGUAGE Derive...

热门问题