破壊的リスト操作専用の、Cons!

  • append、append!といった関数があるが、Cons Listをもらったら append 、 Cons! List をもらったら append! と、 型に応じたアルゴリズムを期待する。
  • Cons って"使うたびに変わる"のか? ・・・ "メモリアドレスが違う" だから、 (Cons'' 3 (Cons' 2 (Cons 1 []))) とも見れる。線形型のものは"参照カウントが必ず1"なので、使いまわししてよい。
  • 参照カウントが必ず 1 だから GCが簡単。

学生の発表の合間にはいる、ガリグ先生のコメントが非常に的確でわかりやすかったのが印象的。