関数型リアクティブプログラミングを使って、ハングマンゲームのロジックを実装してください。
ハングマンは、単語を当てるシンプルなゲームです。
関数型リアクティブプログラミングは、インタラクティブなプログラムを書くための考え方です。通常の見方とは異なり、「ボタンが押されたらカウンターを増やす」と書く代わりに、「カウンターの値は、ボタンが押された回数の合計である」と書きます。
関数型リアクティブプログラミングを使って、ハングマンの基本的なロジックを実装してください。そのためには、関数型リアクティブプログラミングのライブラリをインストールする必要があります。インストール方法は、この演習のプログラミング言語やトラックに固有のファイルで説明されています。
かつてElmは関数的リアクティブプログラミングを採用していましたが、のちにElmアーキテクチャへと特化していきました。
Elmアーキテクチャを使ってWebアプリを書くつもりで、この演習を解いてみましょう。 プログラムの出力は、次の構造のHTMLにします。
<div>
<dl>
<dt>State</dt>
<dd>Ongoing</dd>
<dt>Word</dt>
<dd>______</dd>
<dt>Remaining failures</dt>
<dd>5</dd>
</dl>
</div>
ここで<dl>は記述リスト要素、<dt>は記述項目要素、<dd>は記述内容要素で、いずれも標準のHTML要素です。
エラーが発生した場合は、出力を次の構造にします。
<div>
<p>error message</p>
</div>