以下の型をもつ多相型フィールドセレクタプリミティブ関数である.
[’a#{lab:’b}, ’b. ’a -> ’b]
この型は,’bのlabフィールドを含むレコード型
’aから型’bへの多相関数を表す.
この型から,このプリミティブが適用可能な式は,ラベルlabを含む種々
のレコード型を持つものに制約される.
このプリミティブの適用結果の型と値は,適用されたlabを含むレコード
のlabフィールドの型と値である.
以下は,レコードフィールドセレクタを含む式の評価例である.
# #y;
val it = fn : [’a#{y: ’b}, ’b. ’a -> ’b]
# #y {x = 1, y = 2};
val it = 2 : int
# #2;
val it = fn : [’a#{2: ’b}, ’b. ’a -> ’b]
# #2 (1, 2, 3);
val it = 2 : int
組型は,レコード型の特殊な場合であるため,組みに対してもレコード
フィールドセレクタが使用できる.