Транслятор және программалау тілдерінің жалпы ерекшіліктері

  1. Программалау тілдері міндеттемесі, құрылымы, семантикалық күрделілігі, іске асу әдістері бойынша бір – бірінен едәуір айырмашылық жасайды. Бұл конкрет трансляторды жасауда өзіндік спецификалық ерекшіліктеріне бейімдейді.

Программалау тілдері әртүрлі пән облыстарындағы мәселелерді шешудің құрамы болып та табылады. Бұл олардыңміндеті және ұйымдастырылу спецификасын анықтайды. Мысал ретінде ғылыми есептеулерге бағытталған Фортрон тілі, жүйелік программалауға арналған Си, логикалық мәселелерді ыңғайлы бейнелейтін Пролог, тізімдерді рекурсивті өңдеу үшін қолданылатын Лисп т.б. тілдерді айтуға болады. әрбір облыс тілдің ұйымдастырылуына өз талаптарын қояды. Осы себепті операторлар мен өрнектер көрінісінің формалары арқылы, базалық амалдар жиынтығында айырмашылықтар бар, басқа облыс мәселелерін шешуде эффектілігі кемиді.

Тілдік айырмашылықтар транслятор құрылымына әсер етеді . Лисп және Пролог есептеулер барысында берілгендер типінің динамикалық түзілуін қолдамайтындықтан, көбінесе интерпретатор режимінде орындалады. Фортран тілінің трансляторлары үшін машиналық код оптимизациясын барынша күшейту тән. Бұл тіл конструкция ларының қарапайым семантикасыныңарқасында мүмкін болып отыр. (Бұл тілде көрсеткіш және нұсқаулар жоқ).

Тіл құрылымы оның ұғымдары арасындағы иерархиялық қатынастарды бейнелейді. Ал ұғымдар синтаксистік ережелермен бейнеленеді. Программалау тілдерінің жекелеген ұғымдар және олардың арсындағы қатынастардың ұйымдастырылуыбойынша айырмашылықтары үлкен болуы мүмкін Мысалы С тіліндеайнымалыны қолдануданалдын сипатталса болғаны. Ал Паскаль тілінде айнымалылар тек арнайы сипатталу бөлімінде ғана сипатталады. Ал Бейсик тілінде айнымалыларды сипаттамасыз-ақ қолдана береді.

Программалау тілдерінің семнтикасы өте кең көлемде өзгеруі мүмкін. Олар тек қана жеке операцияларды жүзеге асыру ерекшеліктері бойынша ғана емес программаны құру әдістаріндегі айырмашылықтар бойынша да еркшеленеді. Бір тілдің өзі әртүрлі әдістермен жүзегеасырылуы мүмкін. Бұл формальды грамматикалар теориясының бір сөйлемді әртүрлі әдіспен тануға мүмкіндік беруінен туындайды. Осыған байланысты бастапқы берілгентекст бойынша бір нәтижені (объектілі кодты) әртүрлі әдістермен алуы мүмкін .

  1. Дей тұрғанмен, барлық программалау тілдері бірқатар ортақ мінездемелерге ие. Бұл жалпылық трансляторларды ұйымдастырудың барлық тілдер принциптерін анықтайды. Программалау тілдеріпрограмма құруды жеңілдетуге арналады. Сондықтан олардың операторлары мен берілгендер құрылымы машиналық тілдерге қарағанда қуаттырақ. Программа көрнекілігін көтеру үшін конструкциялардың сандық кодтарының орнына адамдардың қабылдауына ыңғайлырақ символдық немесе графикалық көрінісі қолданылады. Кез-келген тіл үшін төмендегілер анықталады.

– Дұрыс программалар жазу үшін қолданылатын символдар жиыны .

– Дұрыс программалар (сөздер ) жиыны (синтаксис )

– Әрбір дұрыс программаның “мағанасы ”(семантика )

Программалау тілдері (басқа кез-келген күрделі жүйелер сияқты) элементтері арасындағы өзара байланысты беретін ұғымдар иерархиясы арқылы анықталады. Бұл ұғымдар өзара бір-бірімен синтаксистік ережелермен байланыстырылған. Бұл ережелер бойынша құрылған программа сәйкес иерархиялық құрылымға ие. Осыған байланысты барлық тілдермен олардың программалары үшін ортақ қосымша мынандай мінездемелер беруге болады:

Әрбір тілдің программатудыруға (құруға )мүмкіндік беретін,жазылған программаның берілген тілге сәйкес келуін анықтауға(танитын ) мүмкіндік беретін ережелер болуы тиіс.