相关疑难解决方法(0)

是否可以使用您自己的数据类型模拟函数?

是否可以使用您自己的数据类型模拟具有GHC扩展名的函数?我想做的是例如

(假想的语法)

data MyFunc = MyFunc String (Int->Int)

instance (Int->Int) MyFunc where
    ($) (MyFunc _ f) i = f i

inc = MyFunc "increment" (1+)

test = inc 1
Run Code Online (Sandbox Code Playgroud)

即带有一些元信息的数据,可以进行模式匹配,但仍可以像常规函数一样调用.现在,我知道我可以定义自己的中缀运算符$$和调用inc $$ 1,但是能够使用常规函数调用语法在嵌入式DSL中非常有用.

haskell types function-calls

11
推荐指数
2
解决办法
349
查看次数

标签 统计

function-calls ×1

haskell ×1

types ×1