Биринчи электрон ҳисоблаш машиналари пайдо бўлиши билан дастурлаш тиллари эволюцияси бошланади. Дастлабки компьютерлар иккинчи жаҳон уруши вақтида артиллерия снарядларининг ҳаракат траекториясини ҳисоб-китоб қилиш мақсадида қурилган эди. Олдин дастурчилар энг содда машина тилини ўзида ифодаловчи компьютер командалари билан ишлаганлар. Бу командалар нoл ва бирлардан ташкил топган узун қаторлардан иборат бўлар эди. Кейинчалик, инсонлар учун тушунарли бўлган машина командаларини ўзида сақловчи (масалан, АDDва MOV командалари) ассемблер тили яратилди. Шу вақтларда BASIC ва COBOL сингари юқори сатҳли тиллар ҳам пайдо бўлдики, бу тиллар туфайли сўз ва гапларнинг мантиқий конструкциясидан фойдаланиб дастурлаш имконияти яратилди. Бу командаларни машина тилига интерпретаторлар ва компиляторлар кўчирар эди. Интерпретатор дастурни ўқиш жараёнида унинг командаларини кетма - кет машина тилига ўтказади. Компилятор эса яхлит программа кодини бирор бир оралиқ форма - объект файлига ўтказади. Бу босқич компиляция босқичи дейилади. Бундан сўнг компилятор объектли файлни бажарилувчи файлга айлантирадиган компановка дастурини чақиради.
Интерпретаторлар билан ишлаш осонроқ, чунки дастур командалари қандай кетма - кетликда ёзилган бўлса шу тарзда бажарилади. Бу эса дастур бажарилишини назорат қилишни осонлаштиради. Компилятор эса компиляция ва компановка каби қўшимча босқичлардан иборат бўлганлиги учун улардан ҳосил бўладиган бажарилувчи файлни таҳлил қилиш ва ўзгартириш имконияти мавжуд эмас. Фақатгина компиляция қилинган файл тезроқ бажарилади, чунки бундаги командалар компиляция жараёнида машина тилига ўтказилган бўлади.
С++ каби компиляция қилувчи дастурлаш тилларини яна бир афзаллиги ҳосил бўлган дастур компьютерда компиляторсиз ҳам бажарилаверади. Интерпретация қилувчи тилларда эса тайёр дастурни ишлатиш учун албатта мос интерпретатор дастури талаб қилинади.
Айрим тилларда (масалан, VISUALBASIC) интерпретатор ролини динамик библиотекалар бажаради. Java тилининг интерпретатори эса виртуал машинадир (VirtualMachine, ёки VM). Виртуал машиналар сифатида одатда броузер (InternetExplorerёки Netscape) лар қўлланилади.
Кўп йиллар давомида дастурларнинг асосий имконияти унинг қисқалиги ва тез бажарилиши билан белгиланиб келинар эди. Дастурни кичикроқ қилишга интилиш компьютер хотирасини жуда қимматлиги билан боғлиқ бўлса, унинг тез бажарилишига қизиқиш процессор вақтининг қимматбаҳолигига боғлиқ эди. Лекин компьютерларнинг нархи тушиши билан дастур имкониятини баҳолаш мезони ўзгарди. Ҳозирги кунда дастурчининг иш вақти бизнесда ишлатиладиган кўпгина компьютерларнинг нархидан юқори. Ҳозирда профессионал тарзда ёзилган ва осон эксплуатация қилинадиган дастурларга талаб ошиб бормокда. Эксплуатациянинг оддийлиги, конкрет масалани ечиш билан боғлиқ бўлган талабни озроқ ўзгаришига, дастурни ортиқча чиқимларсиз осон мослаштириш билан изоҳланади.