関与宣言

コードユニット(ファイルまたはscript内容)が、アプリケーション全体のなかでどのような役割を演じるか、その貢献〈contribution〉と条件〈conditon〉、期待〈expectation〉、信頼〈reliance, trust〉などを関与〈engagement〉という形で記述する。

関与宣言 ::= 'engagement' 名前 '{' 文並び '}'

文並び ::= (文 (',' 文)* ','?)?

文 ::= 要求文 | 提供文

要求文 ::= 'require' 'on' ('setup'|'running') '{' 項目並び '}' 'from' パス via 手段

提供文 ::= 'provide' '{' 項目並び '}' 'via' 手段

項目並び ::= (項目 (',' 項目)* ','?)?

項目 ::= 名前 ':' 型

手段 ::= ('global' | 'ems' | 'cjs')
  • 要求文に、セットアップフェーズで必要とするか稼働フェーズで必要とするかを書ける。
  • 要求文に、どんな手段で提供されるかを指定できる。
  • 提供文に、どんな手段で提供するかを書ける。
  • 要求・提供する項目に型を書ける。