プログラミング言語SML#解説 4.0.0版
14.7 レプリケーション宣言
インタフェイスファイルは,資源の実体の表現です. 従って,例えば
structure Foo =
struct
structure A = Bar
structure B = Bar
...
end
のような構造のモジュールに対して,シグネチャと違い,
structure Foo =
struct
structure A : SigBar
structure B : SigBar
...
end
のような書き方はできません. これまでのメカニズムのみでは,Barの内容をくり返し書く必要があり ます. この冗長さを抑止するために,インタフェイスファイルは,以下の資源 のレプリケーション(複製)宣言を許しています.
-
•
structure =
-
•
exception =
-
•
datatype = datatype
-
•
val =
これによって,すでに定義済みの資源に対しては,インタフェイスファ イルであっても,通常のソースファイルと同様にその複製の宣言を書くことがで きます. 例えば,Barストラクチャを提供するインタフェイスファイルがbar.smiであるとすると,以下のように書くことができます.
_require "bar.smi"
structure Foo =
struct
structure A = Bar
structure B = Bar
...
end