Ho letto dei tratti in Scala. Sono piuttosto sorprendenti. Sono curioso di sapere come estendere una classe senza in realtà produrre un'eredità multipla. So che JVM non supporta l'ereditarietà multipla, quindi mi chiedo come funzionano queste estensioni. La lingua fornisce solo zucchero sintattico per la composizione? O il codice all'interno di un tratto è duplicato in ogni classe che lo utilizza?