代码之家  ›  专栏  ›  技术社区  ›  Bercovici Adrian

在哪里放置负责从各种函子中提取值的代码

  •  0
  • Bercovici Adrian  · 技术社区  · 6 年前

    给定一个函子和一种特定的方法来展开它的值,是否有一个预定义的typeclass需要实现 unwrap 信息技术

    例如,给定一种类型: data X = X Int Int 我在哪里可以专攻这个行业 unwrapping 一个 Maybe X ?

    假设我有一个 a = Just (X 2 3) 我想 打开…的包装 它以一种定制的方式:

    (Just 2 3)-> 2^3
    Nothing -> 0
    

    但我也想用同样的方法/接口 打开…的包装 另一种类型,比如 Maybe (Int,Int) 比如:

    Just (x, y) -> x + y
    Nothing -> 0
    

    问题更多的是关于组织:

    是否有一个typeclass方法,我可以实现它来展开 也许是X , Maybe Y , Either Z , Either K

    或者我必须为要从函子中展开的每个类型提供未分组(而不是typeclass方法实例)方法吗?

    0 回复  |  直到 6 年前