"Öröklődés ugyan nincs, de beágyazás van"
Rendes OO nyelvben meg mindkettő van, mert helyesség szempontjából mást fejeznek ki. Persze kiváltható tartalmazással az öröklődés, de az egy kicsit fából vaskarika.
"Az implicit interfészek pedig szerintem éppen hogy könnyítik a refaktorizálást."
Van egy interfaced egy metódussal és egy implementációd az interfacere. Átnevezed a metódust az interfaceben és nem lesz fordítási hiba. Az implementáció továbbra is lefordul. Ez visszalépés a refaktorálást tekintve. Javaban a @Override annotáció miatt rögtön ordít a fordító, hogy "hé te, ez a metódus már nem ír felül/implementál senkit".