Kompilerat språk
Program som kompileras till inhemsk kod vid kompileringstid tenderar att vara snabbare än de som översätts vid körtid på grund av översättningsprocessens omkostnader. Nyare teknik som just-in-time-kompilering och allmänna förbättringar av översättningsprocessen börjar dock minska denna klyfta. Blandade lösningar som använder bytecode tenderar till en mellanliggande effektivitet.
Programmeringsspråk på låg nivå kompileras vanligtvis, särskilt när effektivitet är det viktigaste, snarare än plattformsoberoende stöd. För sådana språk finns det fler en-till-en-korrespondenser mellan den programmerade koden och de maskinvaruoperationer som utförs av maskinkod, vilket gör det lättare för programmerare att i detalj styra användningen av den centrala processorenheten (CPU) och minnet.
Med viss ansträngning är det alltid möjligt att skriva kompilatorer även för traditionellt tolkade språk. Common lisp kan till exempel kompileras till Java bytecode (som sedan tolkas av Javas virtuella maskin), C-kod (som sedan kompileras till maskinens ursprungliga kod) eller direkt till ursprunglig kod. Programspråk som har stöd för flera kompileringsmål ger utvecklare mer kontroll för att välja antingen exekveringshastighet eller plattformsoberoende kompatibilitet.