プログラミング言語SML#解説 4.1.0版
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  |