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

6-lekciya

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

6-LEKCIYA. FUNKCIONAL PROGRAMMALASTÍRÍW.

Funkcional programmalastırıw maǵlıwmatlardı qayta islew processin universal funkciyalardan paydalana otırıp, olardı kartalar dúzilisi retinde kórip shıǵadı. Usı jandasıw menen programma tek bir maǵlıwmat túrine kiredi. Funkcional programmalastırıw jeke túrde islep shıǵılǵan qurallar hám informaciya processlerin shólkemlestiriw usıllarınıń sintaktik muwapıq emesligin sheshiwge baǵdarlanǵan.

Ádettegi ańlatpalar menen informaciyanı usınıwdıń túrli formaları kórip shıǵıladı hám olardı qayta islewdiń tolıqlıǵı hám ónimdarlıǵına talaplar analizlenedi. Tiykarǵı túsinikler kiritiledi. (Dizimler hám atomar. Maǵlıwmatlar, mánisler, funkciyalar.)

Funkcionla programmalastırıw ideyası quramalı mashqalalarǵa sheshimlerdi usınıw hám analizlewdiń júdá ulıwmalıq mexanizmi retinde funkciyalardı intuitiv túsiniwge tiykarlanǵan. Funkcional programmalastırıwdıń turaqlı qollanılıwın birinshi ret Djon Mak-Karti hám onıń studentleri Lisp tilinde ámelge asırıp hám sol tilde programmalastırıw usıllarında anıq kórsetip berildi. Bul usıllardıń eń anıǵı basqa programmalastırıw tilleri hám sistemaları tárepinen tabıslı ózlestirildi.

Funkcional programmalastırıwdıń matematik tiykarları menen baylanısı programma tekstinde nátiyje kórilgenligi dáliyllerin miyras etip alıwǵa imkaniyat beredi, eger oǵan erisilse hám sheshilip atırǵan máseleni abstrakciyalawdıń túrli usılların paydalanılsa.

Djon Mak-Karti Lisp tilindegi proektti kompyuterlerdiń qollanıw shegaraların, atap ótsek, jasalma intellekt penen baylanıslı mashqalalardı sheshiw quralın úyreniw retinde usındı. Lisp programmalastırıw teoriyasın eksperimental qollap-quwatlaw hám onıń kólemin rawajlandırıw ushın ónimli qural bolıp xızmet etiwdiń matematik tiykarları menen baylanısı programma tekstinde nátiyje kórilgenligi dáliyllerin miyras etip alıwǵa imkan beredi, eger oǵan erisilse hám sheshilip atırǵan máseleni abstrakciyalawdıń túrli usıllarınan paydalansa.

Programmalastırıwdıń funkcional metodı kompyuterde qayta islew ushın hár qanday maǵlıwmattı qısqartıwı múmkin bolǵan máselelerdi sheshiw ámeliyatında rawajlandı. (Analog usıllardıń bar ekenligi principial túrde usı gipotezaǵa qarsı kelmeydi.) Funkcional programmalastırıw usılları formulaların ańlatıw hám ózgertiw ushın rásmiy matematikalıq tilge tiykarlanǵan. Sol sebepli funkcional programmalastırıw tiykarların anıq jeterlishe tolıq klassifikaciyalaw hám iskerligin shólkemlestiriwdiń funkcional jandasıwınan paydalana otırıp modellestirilgen hár túrli programmalastırıw paradigmaların qollap-quwatlaw hám rawajlandırıw ushın programmalastırıw sistemasın belgilew múmkin.

Funkcional programmalastırıw kóplegen programmalıq jandasıwlardan úsh zárúr tárepi menen ajıralıp turadı:

1) Maǵlıwmatlar tábiyatı

Barlıq maǵlıwmatlar dástúrli ańlatpalar formasında usınılǵan. Maǵlıwmatlar terek túrindegi struktura retinde ámelge asırıladı. Bul sizge hár qanday zárúr tómengi tekstlerdi lokallastırıwǵa imkaniyat beredi. Bunday strukturalar ústindegi programmalastırıw sisteması ádette olardı saqlaw ushın bar bolǵan barlıq yadlardan paydalanadı. Sonlıqtan baǵdarlamashı (programmist) jeke maǵlıwmatlar blokları ushın yadtı ajıratıwdı ámelge asırmawı múmkin.

2. Dástúrli tekstlerdi qayta islew klassifikaciyası

Funkcional programmalastırıwdıń zárúr tárepi sonda, maǵlıwmatlardı qayta islew usıllarınıń klassifikaciyası dástúrli maǵlıwmatlar retinde qaralatuǵın programmalar menen ańlatıladı. Programmalar rekursiv funkciyalar negizinde dúziledi. Usı funkciyalardıń táriypleri hám shaqırıwshıları hár qanday maǵlıwmat sıyaqlı ápiwayı maǵlıwmatlar retinde qayta isleniwi, esap-kitaplar processinde alınıwı hám mánislerge aylandırılıwı múmkin.

3. Mashina tillerine uqsaslıq

Funkcional programmalastırıw sisteması programmanıń maǵlıwmatlar strukturası retinde ańlatılǵan programmalardı shıǵarıwı yamasa kompilyaciya qılıwı múmkin. Bul funkcional programmalastırıw texnikasın tómen dárejedegi programmalastırıw usıllarına jaqınlastıradı hám olardı joqarı dárejedegi tillerden paydalanıwdıń dástúrli metodınan ajıratıp turadı. Barlıq funkcional programmalastırıw tilleri buǵan tolıq imkaniyat bermeydi, biraq Lisp bunı júdá jaqsı orınlaydı. Negizinde bunday imkaniyat hár qanday standart tilde bar.

Mısal retinde Lisp tilinen paydalanıp, funkcional programmalastırıw tillerinde maǵlıwmatlar hám programmalardı usınıwǵa jandasıwdı kórip shıǵamız. Hár qanday maǵlıwmatlar dúzilisi dástúrli kóriniske iye. Lispte funkcional programmalastırıwda mánisler atomlar yaki belgiler dep ataladı.

Hár bir atomda qásiyetler dizimi bar. Atom birinshi márte oqılǵanda (kiritilgende), ol ushın qásiyetler dizimi dúziledi. Qásiyetler dizimi Paskal tilindegi jazıwlarǵa uqsas arnawlı struktura menen klassifikaciyalanadı, biraq bunday jazıwdaǵı kórsetkishler saqlanatuǵın maǵlıwmat túri dástúrli tegler menen birge keledi. Usı strukturanıń birinshi elementi kórsetkishte kórsetilgen mánzilde jaylasqan. Qalǵan elementler bir qatar arnawlı funkciyalar járdeminde bir qıylı indekste boladı. Strukturalı elementler atomnıń hár qıylı qásiyetlerin óz ishine aladı.

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