並列計算を使って、テキストに含まれる文字の出現頻度を数えましょう。
並列処理とは、順番に実行することもできる物事を、並行して行うことです。よくある例が、文字の出現頻度を数えることです。並列処理を活用して、テキストの配列に含まれる各文字の出現頻度の合計を計算しましょう。
この用語集によると、並列で決定的なプログラムを書き、並行処理の部分は(ぜひとも!)Scalaに任せるべきです。そうしないと、厄介な並行処理のバグであっという間にコードがごちゃごちゃになり、エラーを起こしやすくなってしまいます。特に、プログラムが非決定的になる可能性があり、実際のところそれは、デバッグ・テスト・動作の推測が非常に(いや、本当に非常に)難しくなるということを意味します。
とはいえ、まずは逐次的な解答を書き(そしてテストスイートを使ってそれを検証し)、それから、コードの逐次的な部分と並列的な部分をできるだけ分けたまま並列化を試みるのがよいでしょう。
最初の案としては、Scalaの[並列コレクション]を使う方法があります。これはほとんど簡単すぎると感じるかもしれません(特に、このアドバイスに従ってすでに逐次的な解答がある場合は)。
2つ目の案としては、scala.concurrent.Futureを使った解答を試してみることをおすすめします。助けが必要なら、このチュートリアルとその続編を参照してください。次の点を確認してください。
scala.concurrent.Futureは多くのライブラリで使われており、Scalaで並列・非同期プログラミングを行う際の定番の選択肢です。そのため、言語をマスターするうえで欠かせず、Scalaを扱ううえでの武器の1つにしておきましょう。