Dangasa baholash - funksional dasturlash dangasa funksional konstruksiyalar: dangasa ruyxatlar, dangasa xaritalar va boshqalarni qo’llab-quvvatlaydi.
Funksional dasturlashning kamchilgi katta xotira hajmini talab qilishligidadir. Biron bir vazifani bajarishi uchun har safar yangi obyekt yaratiladi.
Funksional dasturlash bir yoki bir nechta ma’lumotlar majmuasi ustida bir necha xil amallarni bajarish uchun qo’llaniladi.
Lisp tili sun’iy intellekt, mashinali o’qitish, tabiiy tilni qayta ishlash, nutqni modellashtirish va kompyuterli ko’rish va boshqa sohalarda ilovalar yaratish uchun foydalaniladi.
10-ma’ruza.
Mavzu: Funksional dasturlash
Funksional dasturlash belgili hisoblashlarni qayta ishlash va ruyxatlarni qayta ishlash uchun ishlab chiqilgan. Funksional dasturlash matematik funksiyalarga asoslangan. Bir qancha ommalashgan funksional dasturlash tillariga misol: Lisp, Python, Erlang, Haskell, Clojure va boshqalar.
Funksional dasturlash tillari ikki guruhga bo’linadi:
Sof funksional dasturlash tillari - bunday turdagi funksional tillar faqatgina funksional paradigmaga asosan ishlaydi. Masalan, Haskell tili shunday sof funksional til hisoblanadi.
Impure Functional Languages - bunday turdagi dasturlash tillari ham funksional ham, imperativ paradigmani qo’llab quvvatlaydi. Bunday tillardan biri LISP.
Funksional dasturlashning eng muhim xarakteristikalari quyidagicha:
Hisoblashlarni bajarish uchun shartli ifodalar va rekursiyalardan foydalaniladigan matematik funksiyalarga asosida funksional dasturlash tillari ishlab chiqilgan.
Funksional dasturlash yuqori tartibli funksiya va baholashning dangasa funksiyalarini qo’llab quvvatlaydi.
Funksional dasturlash tillari if-else va switch kabi shartli operatorlarni, sikl operatorlarini, oqimlarni boshqarish elementlarini qo’llab-quvvatlamaydi.
Obyektga yo’naltirilgan dasturlash kabi funksional dasturlash ham inkapsulyatsiya, polimorfizm, merosxo’rlik, abstraksiya kabi tushunchalarni qo’llab-quvvatlaydi.
Funksional dasturlash quyidagicha afzalliklarga ega:
Do'stlaringiz bilan baham: |