为什么我的 Idris FFI 函数没有在 REPL 中打印值?

问题描述

我正在尝试按照 the docs 打印在 C 中实现的 add 函数的结果。我有

%foreign "C:add,mylib"
add : Int -> Int -> Int

int add(int x,int y) {
    return x+y;
}

但是在 REPL 中我得到了

> 1 + 2   
3
> add 1 2
add 1 2
> :exec printLn $ add 1 2
3

为什么 Idris 对待我的函数(+) 不同?确实,如果我只是使用

add : Int -> Int -> Int
add = (+)

我对 (+)add 有相同的行为,我推测这与 FFI 有关系。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)