我想要定义我自己的fib
版本,但fib
会导出Prelude
。如何隐藏Prelude
的导入?在Haskell中,我会写import Prelude hiding (fib)
,但这在Idris中不起作用。
答案 0 :(得分:7)
正如Idris邮件post所暗示的那样:
在那一刻,所有的({尚未记录的)
%hide
指令,都使名称无法访问。
以下是一个例子:
%hide fib
fib : Nat -> Nat
fib Z = Z
fib (S Z) = S Z
fib (S (S n)) = fib n + fib (S n)