Idris 是否有等同于 Agda 的 `_` 表达式?
Does Idris have an equivalent to Agda's `_` expressions?
除了具有隐式参数之外,Agda 还允许您省略显式参数的值并将其替换为元变量,用 _
字符表示,然后通过与隐式相同的过程确定其值分辨率。
Idris 是否具有类似的功能,或者隐式参数是将元变量引入程序的唯一方法?
您也可以在 Idris 中使用 _
。
import Data.Vect
foo : (n : Nat) -> Vect n a -> Vect n a
foo n xs = xs
bar : Vect 3 Nat
bar = foo _ [1, 2, 3] -- works
除了具有隐式参数之外,Agda 还允许您省略显式参数的值并将其替换为元变量,用 _
字符表示,然后通过与隐式相同的过程确定其值分辨率。
Idris 是否具有类似的功能,或者隐式参数是将元变量引入程序的唯一方法?
您也可以在 Idris 中使用 _
。
import Data.Vect
foo : (n : Nat) -> Vect n a -> Vect n a
foo n xs = xs
bar : Vect 3 Nat
bar = foo _ [1, 2, 3] -- works