Имплементација програмског језика је систем за извршење рачунарског програма.
Постоје два општа приступа имплементацији програмског језика:[1][2]
Треба обратити пажњу да се преводилац не извршава директно у програм. Коначно, у циљу извршења програма преко компилације, мора превести у облик који може послужити као улаз са преводиоцем.
Када се део хардвера може директно тумачити у програмском језику, тај језик се зове машински код. Такозвани изворни код преводиоца је онај који саставља програм у машински код. Актуелна компилација је често одвојена у више пролаза, као и код генерација(често у асемблерском језику), монтирање(генерисање основног кода), повезивање, утовар и извршавање.
Ако је преводилац датог језика на језику високог нивоа, то се зове преводилац (преводилац од извора до извора). Њиме је често корисно додавати проширења постојећих језика или искористити добро и преносно спровођење другог језика поједностављивањем развоја (на пример C).
Многе комбинације тумачења и компилација су могуће, и имплементација многих модерних програмских језика обухвата оба елемента. На пример, Smalltalk програмски језик конвенциално спроводи компилације у бајт кодове које су затим превођене или тумачене и састављане од стране виртуелне машине (најпопуларнији начин је коришћење ЈИТ или АОТ преводиоца компилације). Ова стратегија примене је копирана од стране многих језика још од кад му је Smalltalk прокрчио пут седамдесетих и осамдесетих година двадесетог века.
Сваки програмски језик захтева апстрактне машине које ће премостити јаз између високог нивоа језика и ниског нивоа праве машине.
|title=
на позицији 53 (помоћ); Спољашња веза у |title=
(помоћ); Сукоб URL—викивеза (помоћ) Архивирано на сајту Wayback Machine (6. јануар 2014)