3

次の設定があるとします

module type FOO = sig type f val do_foo : f end
module type BAR = sig type b val do_bar : b end


module type FOOANDBAR =
  sig 
    include FOO
    include BAR
  end

ここで、(インターフェースをコピーせずに、FOOとBARがサブタイプのままであるように)タイプfとタイプbが同じであるという制限を適用したいと思います。

おそらくincludeキーワードとは異なるアプローチを使用して、OCamlでこれを行うための良い方法はありますか?

ありがとう!!-ジョセフ

4

1 に答える 1

5
module type FOOANDBAR =
  sig 
    include FOO
    include (BAR with type b = f)
  end
于 2012-12-16T20:45:14.067 に答える