【发布时间】:2017-02-08 04:44:52
【问题描述】:
在标准 ML 中是否可以重新导出作为函子参数接收的结构的一部分的数据类型的构造函数。一些代码可能会让这更容易理解:
signature FLAG =
sig
type t
end
signature MEMBER =
sig
structure Flag : FLAG
end
functor Member(F : FLAG) : MEMBER =
struct
structure Flag = F
end
structure M =
Member(struct
datatype t =
FLAG_1
| FLAG_2
end)
val flag1 = M.Flag.FLAG_1;
(* Error: unbound variable or constructor: FLAG_1 in path M.Flag.FLAG_1 *)
上面的例子可能没有任何实际意义,但这只是我在一个项目中遇到的问题的淡化版本。
【问题讨论】: