OT:
Citat:
ivanhoe
perl kompajlira kod pre izvrsavanja u neku vrstu bytekoda, slicno kao sto radi Java ili .Net
|
Samo mali dodatak: .NET kod (MSIL) se kompajlira u baš mašinski kod koji je naravno CPU-specific pre izvršavanja, posao radi JIT (Just-In-Time compiler). Treba praviti razliku između prevođenja izvornog C#, VB.NET, J#, itd. koda u MSIL i prevođenja istog u mašinski neposredno pre izvršenja. Zbog tog "JIT-ovanja" .NET aplikacije imaju ono kašnjenje kada se prvi put pokrenu (npr. kada se prvi put dolazi na neki ASP.NET sajt). Kasnije naravno zastoja nema jer je mašinski kod već u memoriji (pa se dobiva puna brzina). Dakle, ako imaš sajt koji konstantno ima posetioce koji vršljaju po celom sajtu (i koji onda sprečavaju GC da ukloni prevedeni kod iz memorije), max brzina je tu jer JIT ne mora ponovo da kompajlira MSIL. Bar tako sam ja to ukapirao
Koliko mi je poznato i Java i .NET imaju mogućnost da se kod prevede u mašinski znatno ranije (gcj za Javu odnosno ngen.exe za .NET) i onda otpada dinamičko kompajliranje.