JIT
Sigla della locuzione inglese just in time, rappresenta una modalità di compilazione di tipo dinamico che consente di migliorare le prestazioni di linguaggi di programmazione che usano il byte code. Il byte code è una specie di linguaggio di livello intermedio tra il linguaggio macchina e un linguaggio ad alto livello, usato per la descrizione delle operazioni contenute in un programma. Un compilatore JIT consente la traduzione del byte code nel corrispondente linguaggio macchina durante la fase di esecuzione (run-time). Il byte code, portabile su vari architetture, viene interpretato o eseguito in una macchina virtuale e tradotto in linguaggio nativo durante l’esecuzione (da cui il nome just in time). Per es., molti sistemi che implementano Common Lisp hanno una funzione di compilazione che può compilare nuove funzioni create durante l’esecuzione. La compilazione dinamica, consentendo l’utilizzo del compilatore in fase di esecuzione, risulta essere un’operazione utile soprattutto in fase di debug. In tal modo il maggior carico di compilazione viene fatto compilando il byte code, relegando la fase più leggera al più arduo linguaggio macchina e velocizzando così l’intero processo. Tale approccio di compilazione dinamica viene implementato per es. da linguaggi come il Perl o Java. La maggior parte delle implementazioni della Java virtual machine sfruttano oggi il principio della compilazione dinamica.
→ Programmazione, linguaggi di