Interface Default Methods improves backwards compatibility when changing interfaces, but also add a way to have multi-inheritance in PHP.
Implementing an interface is different than extending an abstract class
Interface MUST be just declaration and NO implementation at all
Its an interface is a contract. It should have no behavior.
Interfaces should not have specific implementations, but define specifications.
It feels like an anti-pattern, we still have traits to fix this kind of thing. Multi-inheritance is not possible unfortunately, but an interface should not be misused for this.
Having traits does not mean default methods in interfaces should no longer be allowed.
Interface = declaration Class = functionality
Interfaces should remain as defining the structure and the contract.
Keep interfaces to be interfaces!
This RFC could be useful if in PHP there was no inheritance and traits. But PHP has both traits and inheritance so this should be used.
Separation of what and how. Besides this, it could pave the way for https://en.wikipedia.org/wiki/Multiple_inheritance which is also undesirable
I personally don't need it right now but I guess it could be useful to people, since other languages have it
Sometimes a interface should have a sensible default/example.
Larry Garfield's comments here and here on the mailing list were convincing (read them!) But also every day I Ctrl+Click a method call, only to reach the interface instead of the implementation. More often than not, I'm looking for the implementation, so this slows me down. A default instead of a trait is less code, and smoother developer experience (DX).