the : (a : Type) -> a -> a
принимает тип и значение этого типа и возвращает это значение. Поэтому, если целевой тип не может быть выведен из контекста, как в REPL, вы можете использовать the (Vect 2 Int) [1,2]
, чтобы указать, что вы подразумеваете под [1,2]
.
(Vect 2 [1,2]
пытается использовать List
, Stream
или Vect
[1,2]
в качестве аргумента в Vect 2 : Type -> Type
. Но, в отличие, например, Int
, список [1,2]
не является Type
, поэтому выдает эту ошибку.)