Я пытаюсь узнать F # и смотрел видео, когда что-то странное (по крайней мере, для меня) подошло. Видео, о котором идет речь, здесь, и соответствующая часть начинается в 2:30 для желающих. Но в основном, парень говорит, что F # делает неудобным работу с массивами и что дизайнеры сделали это специально, потому что списки легче "добавлять и добавлять".
Вопрос, который сразу же возник в голове: нелегко добавить и добавить что-то, на что надо наговорить на неизменном языке? В частности, я думаю о списках С#, где вы можете сделать что-то вроде List.Add(obj);
и мутировать список. С массивом вам нужно будет создать совершенно новый массив, но также и то, что должно произойти на неизменном языке.
Так почему дизайнеры F # предпочитают списки? В чем принципиальное отличие в неизменяемой среде между списком и массивом? Что мне не хватает? Являются ли списки в F # действительно связанными списками?