ghc パターンマッチの時間計算量

reddit で見かけて, ふと気になったのでメモ. GCC で C/C++ コードの switch 文および case 節をコンパイルするとき, case 節の数が一定以上を超えると, ジャンプテーブルを利用したアセンブリが吐き出される1. 同様にして, ghc はパターンマッチでジャンプテーブルが用いられる場合がある.