0. Python でリストの要素を swap する方法 Python で「リストの特定のインデックス i, j の要素を swap したい」場合、以下のように書ける。 def swap(i, j, ary): tmp = ary[i] ary[i] = ary[j] ary[j] = tmp 要素を交換するために、一時的に値を退避させておく変数 tmp を利用し、要素を上書き。 多重代入を使うなら、一時変数を省略できる。 ary[i], ary[j] = ary[j], ary[i] こういった操作ができるのは、Python ではリストが「変更可能なシーケンス型」として定義されているため。 では、同様のことを変数の更新ができない Haskell ではどのように書けばよいのか? 1. データコンストラクタによる分解と take, drop 関数を使う 例えば、具体的に 0 ~ 7 を要素に