接口:参数化值还是使用更高的友好度?

问题描述

我试图弄清楚这三个界面之间的区别,以及何时使用每个界面

interface Foo (xs : List Nat) (n : Nat) bar where
  ...

interface Foo' (xs : List Nat) (bar : Nat -> Type) where
  ...

interface Foo'' (bar : List Nat -> Nat -> Type) where
  ...

我认为它类似于 Functor vs Show,但我对此也有点含糊。有什么想法吗?

背景

我目前使用 Foo',并且我在类型别名中使用它

Baz : Foo' xs bar => Type
Baz {bar} = forall m . Vect m Double -> bar m

但是在使用站点我需要指定 xs 两次:Baz {xs=[1]} {bar=MyFoo [1]} 用于某些 Foo' xs (MyFoo' xs) where,我不太明白,因为只有一个可能的值可以用于 {{ 1}} 在 xs 的应用中。我正在探索其他的,看看它们是否有效(还没有成功),但我不太清楚每个 API 的含义是什么。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...