在 idris 中,有一个称为UniqueType类型值的宇宙,其中只能使用一次。据我所知,它可以用来编写高性能代码。但是一个值只能使用一次的事实通常太有限了,所以有一种方法可以借用一个值而不是消费它:
data Borrowed : UniqueType -> BorrowedType where ...
Run Code Online (Sandbox Code Playgroud)
该Borrowed数据类型被定义为在以上伊德里斯。为什么它不简单地返回Type而是引入另一个类型的宇宙 ( BorrowedType)?