プログラミング言語SML#解説 3.7.1版
24.4 モジュール言語のインタフェイス
モジュール言語のインタフェイスは,第16.2節で定義した通り, ストラクチャのプロバイド(provideStr)と ファンクタのプロバイド(provideFun) の2つである. それらの構文は以下の通りである.
| provideStr | ::= | structure strid = struct provideStrdecl end |
| provideStrdecl | ::= | provideVal |
| provideType | ||
| provideDatatype | ||
| provideException | ||
| provideStr | ||
| provideFun | ::= | functor provideFunBind |
| provideFunBind | ::= | funid (strdesc) = provideStrExp |
以下はストラクチャ宣言を含むソースファイルとインターフェイスの例である.
|
Bool.sml file:
structure Bool =
struct datatype bool = false | true fun not true = false | not false = true fun toString true = "true" | toString false = "false" end Bool.smi file: structure Bool = struct datatype bool = false | true val not : bool -> bool val toString : bool -> string end |