Я думаю, что Scala слишком далеко от простоты, как и его синтаксис. Например, Мартин Одерский написал метод в своей книге:
def calculate(s: String): Int =
if (cache.contains(s))
cache(s)
else {
val acc = new ChecksumAccumulator
for (c <- s)
acc.add(c.toByte)
val cs = acc.checksum()
cache += (s -> cs)
cs
}
Если методы растут, становится очень больно читать код, я не могу сопоставить фигурные скобки, не могу свернуть метод в среде IDE. Существуют ли там Scala соглашения о кодировании? Я считаю это слишком гибким, чтобы выразить простой метод:
def add(b: Byte): Unit = {
sum += b
}
def add(b: Byte): Unit = sum += b
def add(b: Byte) { sum += b }