2016-03-10 3 views
5

Помимо наличия неявных аргументов, Agda позволяет вам опустить значение явного аргумента и заменить его метапеременной, обозначаемой символом _, значение которого затем определяется с помощью той же процедуры, что и неявное разрешение.Имеет ли Идрис эквивалент выражения `_` Агды?

Есть ли у Идриса аналогичная функция или неявные аргументы - единственный способ введения метапеременных в программы?

ответ

7

Вы также можете использовать _ в Идрисе.

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 
+0

Похоже, я пропустил это, подумал, что это неверно, потому что у меня были другие синтаксические ошибки! В любом случае, это не очень четко документировано. Благодаря! – jmite