假设我在Haskell中有一些代数数据类型:
data Foo a = ...
Run Code Online (Sandbox Code Playgroud)
我希望有一个能够"提取"这种类型的功能a并使用它做一些事情,假设它满足某些条件.具体来说,我需要这样的东西:
fun :: Bounded a => Foo a -> a
Run Code Online (Sandbox Code Playgroud)
预期用途如下:
fun foo = maxBound :: a
Run Code Online (Sandbox Code Playgroud)
当然这个符号在Haskell中是不正确的,但我认为我的意图很明确.可以这样做吗?