при наличии списка List(0,1,2,3,4,5,6) и создании списка List(0,1,2,9,9,9,6) реюзать и List(0,1,2) и List(6) или только List(6), а на руках будут два списка List(0,1,2,3,4,5) и List(0,1,2,9,9,9) оба ссылающиеся на один List(6)?
Первое - точно нет. Второе - надо имплементацию ++ смотреть
List(1,2,3) -> Cons(1, Cons(2, Cons(3, Cons(Nil)))) -> 1 :: 2 :: 3 :: Nil
Обсуждают сегодня