Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3-lekciya

.docx
Скачиваний:
0
Добавлен:
27.11.2023
Размер:
37.61 Кб
Скачать

3-LEKCIYA. PROGRAMMALASTÍRÍW PARADIGMALARÍN

QOLLAP-QUWATLAW

Reje:

1. Semantika.

2. Abstrakt mashina.

Programmalastırıw paradigmaların qollap quwatlaw - tiykarǵı ideyalar evolyuciyasın kórsetip beriwden ibarat. Derlik barlıq zamanagóy programmalastırıw tilleri, hár túrli paradigmalardı (multiparadigmalı programmalastırıw) qollawǵa imkaniyat beredi.

Usı lekciyanıń maqseti programmalastırıw tilin anıqlaw hám onı programmalastırıw sistemasında túrli programmalıq paradigmalardı qollap-quwatlawdı kórsetiw. Programmalastırıw tillerin anıqlawda qollanılatuǵın qurallar hám usıllardı sonday-aq olardı programmalıq sistemalardı ámelge asırıwda keńeytip beriliwi kórip shıǵılǵan. Máselen Pure Lisp hám Paskal? C++ te sistemalı programmalastırıw materiallarınan paydalanıladı.

Ádette, programmalastırıw tiliniń táriypi leksika, sintaksis, semantika hám pragmatika dárejelerinde óz aldına beriledi. Programmalastırıw tiliniń belgili bir semantikası ushın programmalastırıw sistemasın interpretator yaki kompilyator retinde yaki ekewin de orınlawı múmkin. Kompilyaciya pútin programma ushın bir pútin retinde yaki óz aldına belgilengen funkciyalar/proceduralar ushın, atap ótsek júdá tez waqıt ishinde orınlanıwı múmkin.

Leksikalıq jaqtan bir-birine jaqın programmalastırıw tilleri, programma “otladkası”nıń dáslepki basqıshlarında oqılıwınıń qolaylıǵı menen ózine qamtıp alıwı múmkin.

Jańa programmalastırıw tilleri ádette sintaksislik jaqtan tanıp alıwı qıyın bolǵan konstrukciyalardan waz keship hám avtomat ráwishte tanıp alıwshı qurallarǵa itibar beriledi. Bunda programmanı tayarlawda qáteler sanın azaytıwǵa járdem beredi. Leksika hám sintaksistegi ózgerisler programmanı oqıwǵa hám programmalastırıw tiline tiyisli tekstti túsinip alıwǵa tásir etedi. Sintaksislik jaqtan uqsas programmalastırıw tilleri programmanı tayarlaw hám olarǵa ózgeris kirgiziwde hámde basqa sistemalarǵa ótkerilgende paydalanıw múmkin.

Bir qatar programmalastırıw tilleri programmalardı tuwrıdan-tuwrı usınıw hám orınlaw ushın paydalanatuǵın maǵlıwmatlardıń strukturası retinde ańlatadı. Bunday jaǵdayda, sintaksis ápiwayı kórinedi. Ońıń konkretizaciyası basqa programmalastırıw tilleri menen semantik salıstırıw ushın qollanıladı.

Programmalastırıw tilinde “sintaktikalıq sheker” di joq qılıw, avtor tárepinen programmanı dúzetiw hám otladka qılıwda ámelge asırılatuǵın algoritm hám mazmunın túsiwdi támiyinleydi.

Programmalastırıw tiliniń leksika hám sintaksisiniń táriypi belgili bir programmalıq paradigmanı ámelge asırıw pragmatikası menen tikkeley baylanıslı, sonlıqtan olardı tolıq kórip shıqpastan programmalastırıw tiliniń semantikası hám pragmatikasınıń qásiyetlerin analiz etiwdi dawam ettiremiz.

1. Semantika

Programmalastırıw tilin hám programmalastırıw sistemasın anıqlaw mashqalası Vena programmalastırıw tillerin anıqlaw metodologiyasında tolıq kórip shıǵılǵan. Bul metod 60-jıllardıń sońında islep shıǵılǵan. Tiykarǵı ideya programmalastırıw tiliniń semantikasın anıqlawda abstrakt sintaksis (AS) hám abstrakt mashina (Abst.M) dan paydalanıw bolıp tabıladı. Tildiń konkret sintaksisi (KS) abstrakt formaǵa keltiriledi. Konkret mashina (KM) járdeminde abstrakt mashinanı ámelge asırıw múmkin, bunnan tısqarı sáwlelendiriw sonday-aq ámelge asırıw kishi kólemge hám tómen dárejedegi quramalılıqqa iye bolıwı múmkin.

Diagramma

Táriyp

КС ↔ KS ↔ AS → Abst.M→ KM

Konkret sintaksisti abstrakt sintaksiste sáwlelendiriw hám kerisinshe abstrakt sintaksisti konkret sintaksiske sáwlelendiriwge boladı. Abstrakt sintaksis abstrakt mashinaǵa sáwlelendiriledi. Abstrakt mashina bolsa konkret mashina menen ámelge asırıladı.

1-keste. Vena usılı boyınsha programmalastırıw tilin anıqlaw ushın dekompoziciya sxeması

Abstrakt sintaksisti ulıwmalıq bolǵan programmalastırıw tilleri, semantikalıq jaqtan ekvivalent bolıp tabıladı. Olarǵa sarıplanatuǵın miynet kóleminiń parametri jaǵınan nasazlıqlardı dúzetiw (otladka) programması menen teńlestiriw múmkin.

Mánisler hám funkciyalardıń birlesiwi bazakıq qurallarǵa funkciyalar atın kiritpewge imkaniyat beredi. Bunday mexanizmdi járdemshi semantika retinde yaǵnıy “obyektler kategoriyaları” retinde kórip shıǵılsa, programmalastırıw tiliniń jánede anıgıraq táriypinde payda boladı.

2. Abstrakt mashina

Kompilyaciya processiniń qásiyetleri ápiwayı tiller ushın da biraz quramalı, sonlıqtan kompilyaciya nátiyjesiniń specifikaciyası kóbinese tilge baǵdarlanǵan abstrakt mashinalar jaǵınan qaraladı. Abstrakt mashina buyrıqlar sisteması – bazalıq semantikanı ózinde sáwlelendirgen parametrlerdi ózlestiriw hám qamtıw sheńberin qorǵaw boyınsha bir qatar sistema háreketleri menen toltırılǵan programmalastırıw tillleri názerde tutılǵan. Biraq anıq sintaksislik kóriniske iye bolmaǵan semantika programması. Bunday abstrakt mashina ádette tómendegi tiptegi buyrıqlardı ajıratıp turadı:

- mánis yadınan stekke jaylastırıw;

- ańlatpalardı qayta islew waqtında stektegi atı joq operandlar boyınsha esabatlar;

- lokalizaciyanı esapqa alıp mánislerdi stekten yadqa ótkeriw;

- baǵdarlar hám cikllerdi shólkemlestiriw;

- kontekstti saqlaw/tiklew menen procedura hám funkciyalardı shaqırıwdı shólkemlestiriw.

Buyrıqlardıń basqa tipleri de bolıwı múmkin.

Programmalastırıwda imperativ hám funkcional jandasıwlardı salıstırǵanda P.J.Landin Lisp semantikasınıń mashinaǵa baylanıslı táreplerin anıqlaw ushın qolaylı bolǵan arnawlı abstrakt SECD mashinasın usınıs etti. Usı mashinanıń tolıq xarakteristikasın Xendersonnıń funkcional programmalastırıw boyınsha kitabınan tabıw múmkin.

SECD mashinası tort regisrde isleydi.

- aralıq nátiyjelerdi alıw ushın (Stack);

- atama berilgen mánislerdi saqlaw ushın kontekst (Environment);

- esabatlardı basqarıwshı programma (Control List);

- zapas yad (Dump).

Registrlar atomlar yaki dizimler kórinislerin saqlaw ushın juwap beredi. Mashinanıń halatı usı registrlardıń quramı menen tolıq anıqlanadı.

Соседние файлы в предмете Programmalastiriw paradigmalari