Derivativ semantika mantiqiy tildan foydalangan holda til konstruktsiyalarini bajarish va old va postkonditsiyalarni o'rnatish oqibatlarini tavsiflaydi.
Diqqatli semantika matematikaga xos bo'lgan tushunchalar - to'plam, yozishmalar, shuningdek hukmlar, bayonotlar va boshqalar bilan ishlaydi.
Dasturlash paradigmasi
Dasturlash tili hisoblashning bu yoki boshqa asosiy modeliga va dasturlash paradigmasiga muvofiq tuzilgan.
Ko'pgina tillar fon Neumann kompyuter arxitekturasi tomonidan aniqlangan hisoblashning imperativ modeliga yo'naltirilganligiga qaramasdan, boshqa yondashuvlar mavjud. Sovet tillari matematikasi A tomonidan kiritilgan hisoblash modeliga asoslangan tillarni zaxira qilingan hisoblash modeli (Fort, Faktor, PostScript va boshqalar), shuningdek funktsional (Lisp, Haskell va boshqalar) va mantiqiy dasturlash (Prolog) va REFAL tillari bilan tilga olishimiz mumkin. A. Markov, jr.
Hozirgi vaqtda muammoli-yo'naltirilgan, deklarativ va vizual dasturlash tillari ham faol rivojlanmoqda.
Tillarni amalga oshirish usullari
Dasturlash tillari kompilyatsiya va izohlash tarzida amalga oshirilishi mumkin.
Kompilyator (maxsus dastur) yordamida kompilyatsiya qilingan tilda dastur ma'lum bir turdagi protsessor uchun mashina kodiga (ko'rsatmalar to'plamiga) aylantiriladi (kompilyatsiya qilinadi), so'ngra uni alohida dastur sifatida bajarilishi mumkin bo'lgan bajariladigan modulga yig'iladi. Boshqacha qilib aytganda, kompilyator dasturning dastlabki kodini yuqori darajadagi dasturlash tilidan ikkilik protsessor ko'rsatmalarining kodlariga tarjima qiladi.
Agar dastur tarjima qilingan tilda yozilgan bo'lsa, unda tarjimon dastlabki matnni to'g'ridan-to'g'ri tarjima qilmasdan bevosita tarjima qiladi. Bunday holda, dastur asl tilida qoladi va tarjimonsiz ishga tushmaydi. Shu munosabat bilan kompyuter protsessorini mashina kodi uchun tarjimon deb atash mumkin.
Tuzilgan va talqin qilingan tillarga bo'lish shartli. Shunday qilib, Paskal kabi an'anaviy tarzda tuzilgan har qanday til uchun siz tarjimon yozishingiz mumkin. Bundan tashqari, zamonaviy "sof" tarjimonlarning aksariyati til konstruktsiyalarini to'g'ridan-to'g'ri bajarmaydilar, balki ularni ba'zi bir yuqori darajadagi oraliq vakillikka (masalan, o'zgaruvchan parametrlar va kengaygan makroslar bilan) qo'shishadi.
Har qanday talqin qilingan til uchun siz kompilyatorni yaratishingiz mumkin - masalan, dastlab talqin qilingan Lisp tili hech qanday cheklovlarsiz tuzilishi mumkin. Dasturni bajarish jarayonida yaratilgan kod, shuningdek ish vaqti davomida dinamik ravishda tuzilishi mumkin.
Qoidaga ko'ra, kompilyatsiya qilingan dasturlar tezroq ishlaydi va qo'shimcha dasturlarni ishga tushirishni talab qilmaydi, chunki ular allaqachon mashina tiliga tarjima qilingan. Shu bilan birga, dastur matnini har bir o'zgartirish uning qayta ishlanishini talab qiladi, bu esa rivojlanish jarayonini sekinlashtiradi. Bundan tashqari, kompilyatsiya qilingan dastur faqat bitta kompyuterda va, qoida tariqasida, kompilyator ishlab chiqilgan bir xil operatsion tizimda ishlay oladi. Turli xil dastgohlar uchun bajariladigan faylni yaratish uchun yangi kompilyatsiya talab qilinadi.
Talqin qilinadigan tillar ba'zi bir qo'shimcha qo'shimcha funktsiyalarga ega (yuqoriga qarang), bundan tashqari, ulardagi dasturlar rivojlanishni osonlashtiradigan o'zgarishlardan so'ng darhol ishga tushirilishi mumkin. Tarjima qilingan tilda dastur ko'pincha har xil turdagi mashinalarda va operatsion tizimlarda qo'shimcha kuch sarflamasdan bajarilishi mumkin.
Ammo, sharhlangan dasturlar tuzilgan dasturlarga qaraganda ancha sekin ishlaydi, bundan tashqari ular tarjimon dasturisiz ishlay olmaydilar.
Qaysidir ma'noda ushbu yondashuv ham tarjimon, ham kompilyatorning afzalliklaridan foydalanishga imkon beradi. Shuni ta'kidlash kerakki, tarjimon va kompilyator (Fort) ham mavjud bo'lgan tillar mavjud.
Ishlatilgan belgilar
Zamonaviy dasturlash tillari ASCII-dan foydalanishga mo'ljallangan, ya'ni hamma uchun ochiqdir grafik ASCII belgilar har qanday til tuzilishini yozish uchun zarur va etarli shartdir. Menejerlar ASCII belgilaridan cheklangan darajada foydalaniladi: faqat CR-ga qaytish, LF liniyasi va HT gorizontal yorlig'i ruxsat etiladi (ba'zan VT vertikal yorlig'i va keyingi sahifaga o'ting).
6 bitli belgilar davrida paydo bo'lgan dastlabki tillarda cheklangan to'plam ishlatilgan. Masalan, Fortran alifbosi 49 ta belgini (bo'shliqni ham) o'z ichiga oladi: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 \u003d + - * / (). , $ ":
Ahamiyatli istisno - bu ko'pgina maxsus belgilarni ishlatadigan APL tili.
ASCII-dan tashqaridagi belgilarni (masalan, KOI8-R belgilari yoki Unicode belgilar) amalga oshirishga bog'liq: ba'zan ularga faqat sharhlar va belgilar / satrlarning doimiy va ba'zan identifikatorlarida ruxsat beriladi. SSSRda barcha kalit so'zlar ruscha harflar bilan yozilgan tillar mavjud edi, ammo bunday tillar juda mashhur emas edi (istisno bu Ichki dasturlash tili 1C: Enterprise).
Amaldagi belgilar to'plamining kengayishi ko'plab dasturiy ta'minot ishlab chiqish loyihalari xalqaro ahamiyatga ega ekanligi bilan cheklanadi. Ba'zi bir o'zgaruvchilarning nomlari rus harflarida, boshqalari arab tilida va boshqalari xitoycha harflar bilan yozilgan kod bilan ishlash juda qiyin bo'ladi. Biroq, matnli ma'lumotlar bilan ishlash uchun yangi avlod dasturlash tillari (Delphi 2006, Java) Unicode-ni qo'llaydi.
Do'stlaringiz bilan baham: |