Bortimot alle praktiske programmer i dag er skrevet i et høynivåspråk eller i et assemblerspråk, og deretter oversatt til maskinkode av en kompilator. Programmer i et fortolket språk er imidlertid ikke oversatt til maskinkode, skjønt deres fortolker består av utførbar maskinkode (generert fra assembler og/eller høynivåspråklig kildekode).