В книге Odersky et al. Scala они говорят, что используют списки. Я не читал обложку книги, но все примеры, похоже, используют val List. Насколько я понимаю, также рекомендуется использовать валы над варами. Но в большинстве приложений не существует компромисса между использованием var List или val MutableList?. Очевидно, мы используем список Val, когда можем. Но хорошо ли использовать множество списков var (или var Vectors и т.д.)?
Я новичок в Scala, начиная с С#. Там у меня было много:
public List<T> myList {get; private set;}
которые могут быть легко объявлены как vals, если С# имеет неизменяемость, потому что сама коллекция никогда не изменялась после построения, хотя элементы были добавлены и вычтены из коллекции в течение ее жизненного цикла. Поэтому объявление коллекции var почти похоже на шаг от неизменности.
В ответ на ответы и комментарии одна из сильных точек продажи Scala заключается в том, что она может иметь много преимуществ без необходимости полностью изменять способ написания кода, как это имеет место с помощью слова Lisp или Haskell.