In various Scala literature I see some self-type annotations using "this" and others using "self":
trait A { this: B => ... }
trait A { self: B => ... }
Is there any real difference between using "this" or "self"? Does it matter at all what name you use? Is this just as valid?
trait A { foo: B => ... }