BASIC風味で
代入文 ::= 'let' 識別子 ':=' 式文
とか

シェルスクリプト風に変数の参照は$をつける、とか

文 ::= 代入文 | 関数呼び出し文 | while文 | return文 | ...
にして式文を書けなくしてしまう、とか

代入文ではなく代入式にしてしまうとか。

なんかウチの大学のカリキュラム思い出した。
ウチの大学の宿題じゃないよな?