Scalaで実際にシステム開発を行う上でかなりの高確率で遭遇するのがFunction22問題︵またはTuple22問題︶です。Scala Conference in Japan 2013のセッションではScalaの問題点として挙げたのですが、実際はいろいろと思うところもあるので書いておきます。 Function22問題︵またはTuple22問題︶とは? Scalaのフレームワークではケースクラスへの値のマッピングにタプルを使ったり、値のバインドやアンバインドにapplyメソッドやunapplyメソッドを使うものが多いのですが、Scalaには以下のような制約があるため、22個以上のプロパティを定義することができない、というものです。22個以上の引数を持つ関数を作ることができない︵メソッドとしては定義できますが、変数に代入したり関数渡しをしようとするとコンパイルエラーになります︶ 要素が22