関数は使わず「文字列連結はどれが速い?」で紹介した方法を使っている。c}と書き換えることができる。zundoko.Run()fmt.Println(c)}と書けばいい。型で保持られているので,末尾の5要素のパターンを調べる別の方法もあると気づく。c}となり随分すっきりする。これコストが高くつきそうである。いうわけで,これも調べてみた。以下のベンチマークを書く。関数を使ったバージョンである。4.261s乱数の要素が絡むので毎回同じ値ではないが,傾向としてはこんな感じ。回数が圧倒的に多いのが分かるだろう。これがスピードにもダイレクトに反映されている感じである。OK」という単純なロジックだったが,もっと複雑なパターンが要求される場合は工夫が必要かもしれない2。「ズン」と「ドコ」の出現回数を数える関数も作ってみた。関数内で使っている擬似乱数パッケージを別のものに換えた時に統計処理で簡単な性能評価ができるかもしれない。今回はそこまではしなけど(擬似乱数の話はいずれやりたい)。やって手遊びでコードを弄るのは楽しいものである。擬似乱数について簡単にまとめてみた。買おうかどうか悩み中。乱数生成アルゴリズムの既定は線形合同法らしい。線形合同法は性能が良くなくゲームや暗号等では使えない。乱数生成アルゴリズムは他のものに入れ替えることができる。いったパッケージを使う手がある。