字面では毎回組み換えるようなことをやっておきつつ中では破壊的更新をおこなう,これ最強.
あとは中で破壊的更新を使いつつも「外側から見ると参照透明な」関数とか.

Haskell標準の配列型
  ttp://www.sampou.org/haskell/tutorial-j/arrays.html
  ttp://www.sampou.org/haskell/report-revised-j/array.html
Concurrent Clean標準の配列型
  ttp://sky.zero.ad.jp/~zaa54437/programming/clean/LanguageReport21/Chap4.html#sc14
純粋関数型言語における「配列」の実現
  ttp://www.nerimadors.or.jp/~kando/TITECH/FuncArray/FuncArrayImpl.html

...なんかを眺めていたらなかなか面白かった.

>>209
ソフトウェア自動生産特論
  ttp://www.futamura.info.waseda.ac.jp/~futamura/lecture/Automation/index.html
とか?