@adriaanm
I’m in favor of dropping trait parameters, but I have a (possibly dumb) question (I’m not familiar with the nuances of early initializers and trait parameters). Is it not possible to just take an early intialization and rewrite it as the most right-hand-side trait parameter? E.g.,
class A extends {val something = ???} with B with C with D
//changes to
trait $anonSomething (val something = ???)
class A extends B with C with D with $anonSomething