Conversation

I put parentheses on everything that's not an associative expression by default (i.e. i'll write `5 + (4 * 3)` even though I don't need to) so the other stuff doesn't bother me that much thankfully.
1
1
Yes. An operator is right-associative if it ends with a colon, except for => and -> which are hardcoded to be right-associative.
2
1
val fun: Arg => Ret def fun(Arg): Ret when you don't have a function arrow (i.e. =>) then definitely I'd go with ->. but Scala has function arrow
2
I.e., our => has arity: () => A ≡ Function0[A] (()) => A ≡ Function1[Unit, A], but throws a warning because you're not supposed to use () as a type (A) => B ≡ Function1[A, B] (A, B) => C ≡ Function2[A, B, C] ((A, B)) => C ≡ Function1[Tuple2[A, B], C]