Intellektual tizimlar



Download 5,12 Mb.
bet110/118
Sana10.06.2022
Hajmi5,12 Mb.
#651729
1   ...   106   107   108   109   110   111   112   113   ...   118
Bog'liq
Тафаккурли ахб техн кулланилиши 2022

1.2.4.1.Spesialnыye funksii.


Konstanta predstavlyayetsya kak argument spesialnoy funksii QUOTE v vide spiska:
(QUOTE (CONST ))
Ispolzuyetsya i sokraщyennaya zapis – apostrof pered proizvolnыm dannыm.
'(CONST )
V zavisimosti ot konteksta odni i te je obyektы mogut vыpolnyat rol peremennыx ili konstant, prichem znacheniya i togo, i drugogo mogut bыt proizvolnoy slojnosti. Yesli obyekt vыpolnyayet rol konstantы, to dlya ob’yavleniya konstantы dostatochno zablokirovat yego vыchisleniye, to yest kak bы vzyat yego v kavыchki (quotation), vыdelyayuщiye bukvalnoye ispolzovaniye fraz, ne trebuyuщyeye obrabotki. Dlya takoy blokirovki vvoditsya spesialnaya unarnaya funksiya QUOTE, predoxranyayuщaya svoy argument ot vыchisleniya.

(QUOTE A)

Konstanta A ob’yavlena.

(QUOTE (A B C) )

Konstanta (A B C) ob’yavlena.

(ATOM (QUOTE A)) = T

Argumentom predikata "ATOM" yavlyayetsya konstanta – atom "A"

Postroit funksiyu mojno s pomoщyu Lambda-konstruktora:
(LAMBDA (x) (CAR (CDR (CDR x))) )
Pri vыzove takoy bezыmyannoy funksii zaodno proisxodit zadaniye znacheniy parametrov - svyazannыx peremennыx:
((LAMBDA (x) (atom x)) 123) ; = T
X poluchit znacheniye 123 na vremya primeneniya postroyennoy bezыmyannoy funksii, deystviye kotoroy zaklyuchayetsya v vыyasnenii, atom li argument funksii.
Svyazannuyu peremennuyu mojno ob’yavit spesialnoy funksiyey Lambda, a znacheniye ona poluchit pri vыzove funksii.
Sootvetstviye mejdu nazvaniyem funksii i yeye opredeleniyem mojno zadat s pomoщyu spesialnogo konstruktora funksiy DEFUN, pervыy argument kotorogo - imya funksii, vtoroy – sobstvenno imenuyemoye opredeleniye funksii. Formalnыm rezultatom DEFUN yavlyayetsya yeye pervыy argument, kotorыy stanovitsya obyektom drugoy kategorii. On menyayet svoy status – teper eto imya novoy funksii.
(DEFUN tretiy (x) (CAR (CDR (CDR x))) ))
Imenovaniye funksiy rabotayet podobno zadaniyu znacheniy peremennыm. Identifikator predstavlyayet strukturu, simvoliziruyuщuyu funksionalnыy obyekt. V ney soderjitsya spisok formalnыx parametrov funksii i telo yeye opredeleniya – argumentы dlya lyambda-konstruktora.
Obыchno v rassujdeniyax o peremennыx i konstantax molchalivo podrazumevayetsya, chto rech idet o dannыx. Raznisa mejdu konstantami i peremennыmi zaklyuchayetsya lish v tom, chto znacheniye peremennoy mojet bыt v lyuboy moment izmeneno, a konstanta izmenyayetsya suщyestvenno reje. Lisp rassmatrivayet predstavleniya funksiy kak dannыye, poetomu funksii mogut bыt kak konstantnыmi, tak i peremennыmi.
Predstavleniya funksii mogut vыchislyatsya i peredavatsya kak parametrы ili rezultatы drugix funksiy.
Sootvetstviye mejdu imenem funksii i yeye opredeleniyem mojet bыt izmeneno, podobno tomu, kak menyayetsya sootvetstviye mejdu imenem peremennoy i yeye znacheniyem.
Vetvleniye (uslovnoye vыrajeniye) xarakterizuyetsya tem, chto xod prosessa zavisit ot nekotorыx usloviy. Usloviya sleduyet sgruppirovat v obщiy komplekt i sootnesti s podxodyaщimi formami. Takuyu organizasiyu prosessa vыchisleniya obespechivayet spesialnaya funksiya COND (condition). Yeye argumentami yavlyayutsya vetvi, predstavlennыye kak dvuxelementnыye spiski, soderjaщiye predikatы i sootvetstvuyuщiye im vыrajeniya. Kolichestvo vetvey ne ogranicheno. Obrabatыvayutsya oni po osoboy sxeme: snachala vыchislyayutsya pervыye elementы argumentov po poryadku, poka ne naydetsya predikat so znacheniyem "istina". Zatem vыbirayetsya vtoroy element etogo argumenta i vыchislyayetsya yego znacheniye, kotoroye i schitayetsya znacheniyem vsego uslovnogo vыrajeniya.
(COND (p1 e1) (p2 e2) ... (pk ek) )
Kajdыy predikat pi ili vetv ei mojet bыt lyuboy formы: peremennaya, konstanta, vыzov funksii, kompozisiya funksiy, uslovnoye vыrajeniye.
Obыchnoye uslovnoye vыrajeniye (if Predicate Then Else) ili (yesli Predicate to Then inache Else) mojet bыt predstavleno s pomoщyu funksii COND sleduyuщim obrazom:
(COND (Predicate Then)(T Else))
Ili boleye naglyadno:
(COND (Predicate Then )
(T Else ) )
Vыchisleniye ryada form v opredelenii mojet bыt obuslovleno zaraneye zadannыmi predikatami.
(COND ((EQ (CAR x) (QUOTE A))
(CONS (QUOTE B) (CDR x))) (T x) )
Atom "T" predstavlyayet tojdestvennuyu istinu. Znacheniye vsego uslovnogo vыrajeniya poluchayetsya zamenoy pervogo elementa iz znacheniya peremennoy x na B v tom sluchaye, yesli (CAR x) sovpadayet s A.
Ob’yavlennыye zdes spesialnыye funksii QUOTE, COND, LAMBDA i DEFUN suщyestvenno otlichayutsya ot elementarnыx funksiy CAR, CDR, CONS, ATOM, EQ pravilom obrabotki argumentov. Obыchnыye funksii poluchayut znacheniya argumentov, predvaritelno vыchislennыye sistemoy programmirovaniya po formulam fakticheskix parametrov funksii.
Spesialnыye funksii ne trebuyut takoy predvaritelnoy obrabotki parametrov.
Oni sami mogut vыpolnyat vse neobxodimoye, ispolzuya predstavleniye fakticheskix parametrov v vide S-vыrajeniy.

Download 5,12 Mb.

Do'stlaringiz bilan baham:
1   ...   106   107   108   109   110   111   112   113   ...   118




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish