依赖签名专业化
Dependent signature specialization
我可以使用该类型之前和签名中的类型来专门化签名中的类型吗?这是一个例子:
signature A = sig
type t
type s
end
我可以通过以下专业 A
吗?
signature B = A where type s = t list
SML/NJ 和 Mlton 都抱怨 t
未绑定。
不,那确实不能直接完成。原因很技术性,在一般情况下,很难将行为良好的语义归因于这样的操作。
最接近的方法是引入另一种辅助类型:
signature B =
sig
type t'
include A with type t = t' with type s = t' list
end
我可以使用该类型之前和签名中的类型来专门化签名中的类型吗?这是一个例子:
signature A = sig
type t
type s
end
我可以通过以下专业 A
吗?
signature B = A where type s = t list
SML/NJ 和 Mlton 都抱怨 t
未绑定。
不,那确实不能直接完成。原因很技术性,在一般情况下,很难将行为良好的语义归因于这样的操作。
最接近的方法是引入另一种辅助类型:
signature B =
sig
type t'
include A with type t = t' with type s = t' list
end