Дастурлаш тили – маълумотлар (ахборотлар)ни ва уларни электрон машиналарда ишлаш алгоритмлари (дастурлари)ни баён қилиш учун мўлжалланган расмий тил; одамнинг электрон машина билан боғланиши учун ишлатиладиган шартли белгилар тизими. Дастурлаш тили табиий тил билан шартли машина тили орасидаги ўринни эгаллайди. Дастурлаш тилининг асосий вазифаси дастурлар тузиш (дастурлаш) воситаси бўлиши, яъни маълумотларни ифодалаш ва уларни ЭҲМ (компютер) да ишлашда қўлланишидан иборат[1]. Дастурлаш тиллари синтаксиси (шакл) ва семантикаси (маъноси) нуқтаи назаридан тавсифланади, одатда расмий тил билан белгиланади. Тиллар одатда тип тизими, ўзгарувчилар ва хатоларни қайта ишлаш механизмлари каби хусусиятларни тақдим этади. Дастурларни бажариш учун дастурлаш тилини, яъни таржимон ёки компиляторни амалга ошириш талаб қилинади . Таржимон тўғридан-тўғри манба кодини бажаради, компилятор эса бажариладиган дастурни ишлаб чиқаради.

Компютер архитектураси дастурлаш тилларининг дизайнига кучли таъсир кўрсатди, энг кенг тарқалган тури (маълум бир тартибда операцияларни амалга оширадиган императив тиллар) машҳур фон Нейман архитектурасида яхши ишлаш учун ишлаб чиқилган . Дастлабки дастурлаш тиллари аппарат билан чамбарчас боғланган бўлса-да, вақт ўтиши билан улар янада соддалик учун амалга ошириш тафсилотларини яшириш учун кўпроқ мавҳумликни ишлаб чиқдилар .

Кўпинча императив, функционал, мантиқийёки об’эктга йўналтирилган деб таснифланган минглаб дастурлаш тиллари турли хил фойдаланиш учун ишлаб чиқилган. Дастурлаш тилини лойиҳалашнинг кўп жиҳатлари ўзаро келишувларни ўз ичига олади – масалан, истисноларни қайта ишлаш хатоларни бошқаришни осонлаштиради, лекин ишлаш харажати. Дастурлаш тили назарияси – бу дастурлаш тилларини лойиҳалаш, амалга ошириш, таҳлил қилиш, тавсифлаш ва таснифлашни ўрганадиган компютер фанининг кичик соҳаси .

Таърифлар

Дастурлаш тиллари табиий тиллардан шу билан фарқ қиладики, табиий тиллар одамлар ўртасидаги ўзаро алоқа учун ишлатилади, дастурлаш тиллари эса одамларга кўрсатмаларни машиналарга этказиш учун мўлжалланган.Иқтибос керак бўлади.

Компютер тили атамаси баъзан „дастурлаш тили“ билан бир-бирининг ўрнида ишлатилади. Бироқ бу атамалардан фойдаланиш муаллифлар орасида фарқ қилади.

Бир фойдаланишда дастурлаш тиллари компютер тилларининг кичик тўплами сифатида тавсифланади. Худди шундай, „компютер тили“ атамаси „дастурлаш тили“ атамасидан фарқли равишда ҳисоблашда ишлатиладиган, лекин дастурлаш тиллари ҳисобланмайдиган тилларни тавсифлаш учун ишлатилиши мумкин [ иқтибос келтириш керак – масалан, белгилаш тиллари. Баъзи муаллифлар „дастурлаш тили“ атамасини Турингнинг тўлиқ тиллари билан чеклайдилар. Кўпгина амалий дастурлаш тиллари [[Туринг] тўлиқ бўлиб, улар қайси дастурларда ҳисоблаши мумкинлиги билан тенгдир.

Яна бир фойдаланиш дастурлаш тилларини мавҳум машиналарни дастурлаш учун назарий конструкциялар ва компютер тилларини чекланган аппарат ресурсларига эга бўлган жисмоний компютерларда ишлайдиган уларнинг қуйи тўплами сифатида кўриб чиқади. Жон C. Рейнолдс расмий спецификация тиллари худди бажариш учун мўлжалланган тиллар каби дастурлаш тиллари эканлигини таъкидлайди . У шунингдек, компютернинг ишлашига таъсир қилувчи матн ва ҳатто график киритиш форматлари одатда Туринг-тўлиқ бўлмаса ҳам, дастурлаш тиллари эканлигини таъкидлайди ва дастурлаш тили тушунчаларини билмаслик кириш форматидаги кўплаб камчиликларнинг сабаби эканлигини таъкидлайди.

Диалектлар, дидлар ва амалга ошириш

Дастурлаш тили ёки маълумотлар алмашиш тилининг диалекти – бу тилнинг ички табиатини ўзгартирмайдиган (нисбатан кичик) ўзгариши ёки кенгайиши. Схема ва Фортҳ каби тилларда ишлаб чиқувчилар стандартларни этарли эмас, нотўғри ёки ноқонуний деб ҳисоблашлари мумкин, шунинг учун улар кўпинча стандартдан четга чиқади ва янги диалектларни яратади. Бошқа ҳолларда, диалект доменга хос тилда фойдаланиш учун яратилади, кўпинча унинг кичик тўплами. Лисп дунёсида асосий С-ифода синтаксиси ва Лисп-га ўхшаш семантикадан фойдаланадиган тилларнинг аксарияти Лисп диалектларидир, аммо улар Раcкет ва Cложуре каби жуда фарқ қилади . Тил одатда бир нечта диалектларга эга бўлганлиги сабабли, тажрибасиз дастурчи учун керакли ҳужжатларни топиш жуда қийин бўлиши мумкин. БАСИC тили жуда кўп диалектларга эга.

Хусусий тиллар

Гарчи энг кўп ишлатиладиган дастурлаш тилларининг аксарияти тўлиқ очиқ спецификациялар ва иловаларга эга бўлса-да, кўпгина дастурлаш тиллари фақат хусусий дастурлаш тиллари сифатида мавжуд бўлиб, амалга ошириш фақат битта сотувчида мавжуд бўлиб, бундай мулкий тил уларнинг интеллектуал мулки эканлигини даъво қилиши мумкин. Хусусий дастурлаш тиллари одатда доменга хос тиллар ёки битта маҳсулот учун ички скрипт тилларидир; баъзи мулкий тиллар фақат сотувчининг ичида ишлатилади, бошқалари эса ташқи фойдаланувчилар учун мавжуд.

Баъзи дастурлаш тиллари хусусий ва очиқ ўртасидаги чегарада мавжуд; масалан, Ораcле корпорацияси Жава дастурлаш тилининг баъзи аспектларига мулк ҳуқуқини тасдиқлайди ва тизимнинг аксарият қисмларини очиқ амалга оширишга эга бўлган Миcрософт – нинг C# дастурлаш тили ёпиқ тил сифатида Cоммон Лангуаге Рунтиме (CЛР) ҳам мавжуд. муҳит.

Кўпгина мулкий тиллар ўзларининг мулкий хусусиятига қарамасдан кенг қўлланилади; мисоллар МАТЛАБ, ВБСcрипт ва Wолфрам тилини ўз ичига олади . Баъзи тиллар ёпиқ тилдан очиқ тилга ўтишлари мумкин; масалан, Эрланг дастлаб Эриcссоннинг ички дастурлаш тили эди.

Очиқ кодли дастурлаш тиллари, айниқса, очиқ фан иловалари учун фойдали бўлиб, репликация ва код алмашиш имкониятларини оширади.


Яна қаранг

Манбалар

  1. ↑ ЎзМЕ. Биринчи жилд. Тошкент, 2000-йил

Ҳаволалар