Scala final vs val para visibilidade simultânea

Em Java, ao usar um objeto em vários encadeamentos (e em geral), é uma boa prática tornar os campos finais. Por exemplo

public class ShareMe {
    private final MyObject obj;
    public ShareMe(MyObject obj) {
        this.obj = obj;
    }
}

Nesse caso, a visibilidade de obj será consistente em vários threads (vamos supor que obj também tenha todos os campos finais), pois ela é construída com segurança usando a palavra-chave fina

No scala, não parece val compilar até uma referência final, mas val é semântica no scala que impede que você reatribua uma variável ariáveis finais do Scala no construt). Se as variáveis do construtor scala não forem definidas como finais, elas sofrerão o mesmo problema (ao usar esses objetos nos atores)?

questionAnswers(2)

yourAnswerToTheQuestion