黒魔術
ことの発端は、変数入れ替えのコードゴルフをしていたときでした。変数入れ替え手法のひとつとしてa^=b;b^=a;a^=b;というものがあるのですが、これを短くしようと躍起になっていたら起きました。
コードゴルフしてたらたのしくなったので、コードゴルフテクの紹介記事を書こうと思います。
以前、Fisher-Yatesアルゴリズムについての記事を書きました。記事中のコードをもっと短くできないか?と思い、検証してみたところ、「分割代入の評価順と代入演算子を悪用すればいいんじゃないか」と思いつきました。今回はそのテクニックを紹介しようと思…