Seguendo le mailing list di Scala, diverse persone spesso dicono: "il compilatore riscrive questo codice [scala] in questo [java/scala ?? ] codice". Ad esempio, da uno dei tutte le discussioni, se Scala vedeCome posso vedere in quale codice [Java/Scala?] Il compilatore Scala riscrive il codice Scala originale
class C(i: Int = 4) { ... }
poi il compilatore riscrive questo come (efficace):
class C(i: Int) { ... }
object C {
def init$default$1: Int = 4
}
Come faccio a sapere, quale sarà l'output del compilatore per il mio codice? Dovrei decompilare il bytecode risultante per quello?
Scala compilatore non riscrivere il codice in codice Java, ma compilare il codice Scala in bytecode Java, che è diverso. Forse puoi "decodificare" questo bytecode (con Jad) per esempio, per ottenere un codice sorgente Java. –
So che il compilatore di scala [in alcuni casi] riscrive il codice originale. Ho corretto ora la mia domanda originale. –