How it comes that I instantiate an abstract class?
abstract class A { val a: Int } val a = new A {val a = 3}
Or is some concrete cla
you're instantiating an anonymous class that inherits from A and overloads its abstract a member. For reference, see the part about anonymous class instantiations in A Tour of Scala: Abstract Types