Compilació anticipada
En informàtica, la compilació anticipada (amb acrònim anglès, compilació AOT) és l'acte de compilar un llenguatge de programació (sovint) de nivell superior en un llenguatge (sovint) de nivell inferior abans de l'execució d'un programa, normalment en temps de compilació, per reduir la quantitat de treball que cal dur a terme en temps d'execució. Molt sovint, s'associa amb l'acte de compilar un llenguatge de programació de nivell superior com C o C++, o una representació intermèdia com Java bytecode o .NET Framework Common Intermediate Language (CIL) en un codi màquina natiu (depenent del sistema) de manera que el fitxer binari resultant es pugui executar de manera nativa, igual que un compilador natiu estàndard . Quan s'utilitza en aquest context específic, sovint es veu com el contrari de la compilació just-in-time (JIT). Parlant de manera més general, els idiomes de destinació d'una compilació AOT no són necessàriament específics del codi de màquina natiu, sinó que es defineixen de manera més aviat arbitrària. Alguns articles acadèmics utilitzen aquesta paraula per significar l'acte de compilar el bytecode Java a C [1] o el moment en què es realitza el pipeline d'optimització.[2] Un projecte acadèmic[3] utilitza aquesta paraula per significar l'acte de compilar prèviament JavaScript a un IR optimitzat depenent de la màquina per a V8 (motor JavaScript) [4] i a un bytecode independent de la màquina per a JavaScriptCore.[5] Algunes implementacions de llenguatge industrial (p Clojure [6] i el motor de JavaScript d'Hermes [7]) utilitzen aquesta paraula per significar l'acte de compilar prèviament l'idioma font a un bytecode específic de VM. Angular (marc web) utilitza aquesta paraula per significar convertir la seva plantilla HTML i TypeScript a JavaScript.[8] Referències
|