Dasturlash tillari tarixi: Versiyalar orasidagi farq

Kontent oʻchirildi Kontent qoʻshildi
Wikified
Tahrir izohi yoʻq
Qator 14:
Keyinchalik kompyuter bilan muloqot qilish amaliyoti shuni koʻrsatdiki, bunday tilni oʻzlashtirish qiyin va noqulaydir. Uni ishlatganda 1 yoki 0 ni notoʻgʻri ketma-ketlikda yozib koʻplab xatolarga yoʻl qoʻyish ehtimoli juda yuqori edi. Dasturni boshqarish juda qiyin boʻlgan. Bundan tashqari, mashina kodlarida dasturlashda kompyuterning ichki tuzilishini, har bir blokning ishlash prinsipini yaxshi bilish kerak edi va bunday tildagi eng yomon narsa shundaki, bu tildagi dasturlar — birlar va nollarning juda uzun ketma-ketligi mashinaga bogʻliq, yaʼni har bir kompyuter uchun oʻz dasturini tuzish kerak edi va mashina kodlarida dasturlash juda koʻp narsa: vaqt, ish va dasturchining eʼtiborini oshirishni talab etardi.
 
Tez orada mashina kodini yaratish jarayonini avtomatlashtirish mumkinligi maʼlum boʻldi. 1950-yildan boshlab dasturlarni yozish uchun ''mnemonik til'' — '''[[assemblerAssembler tili]]'''dan foydalanila boshlandi. Assembler tili mashina kodini inson uchun qulayroq shaklda koʻrsatishga imkon berdi: buyruqlar va bu buyruqlar bajariladigan obyektlarni belgilash uchun buyruqning mohiyatini aks ettiruvchi ikkilik kodlar oʻrniga harflar yoki qisqartirilgan maxsus soʻzlar qoʻllanilgan. Masalan, assembler tilida ikkita raqamni qoʻshish boʻyicha koʻrsatma ''add'' soʻzi bilan ifodalanadi, uning mashina kodi ''000010'' tarzida boʻladi.
 
Assembler quyi darajadagi dasturlash tilidir. Quyi darajadagi dasturlash tili, bu muayyan turdagi protsessorga yoʻnaltirilgan va uning xususiyatlarini hisobga oladigan dasturlash tili demakdir. Bunday holda, „quyi“ „yomon“ degani emas, balki bu shuni anglatadiki, til operatorlari mashina kodiga yaqin va maxsus protsessor koʻrsatmalariga qaratilgan boʻladi. Assemblar tilining paydo boʻlishi dasturchilarning hayotini sezilarli darajada osonlashtirdi, chunki endi ular koʻzda miltillovchi nollar va birlar oʻrniga oddiy tilga yaqin belgilardan iborat buyruqlar bilan dastur yozishlari mumkin edi. Oʻsha vaqt uchun bu til innovatsiya edi va mashhur edi, chunki u kichik dasturlarni yozishga imkon berardi, bu esa oʻsha davr mashinalari uchun muhim mezon sanalgan.
Qator 27:
Oʻz kompilyatoriga ega boʻlgan birinchi yuqori darajali til 1951-yilda doktorlik dissertatsiyasi uchun Korrado Böhm tomonidan yaratilgan<ref>Corrado Böhm’s PhD thesis</ref>.
 
==== FORTRAN ====
Tijoriy maqsad uchun ishlab chiqilgan birinchi til [[:ru:Фортран|FORTRAN]] ('''''FOR'''mula '''TRAN'''slation'') boʻlib, 1956-yilda (birinchi yoʻriqnomasi 1956-yilda paydo boʻlgan, lekin birinchi boʻlib 1954-yilda ishlab chiqarila boshlangan) [[IBM]]da Jon Bekus boshchiligidagi guruh tomonidan ishlab chiqilgan. U ilmiy-texnik hisob-kitoblar uchun moʻljallangan edi.
 
1953-yil oxirida Jon Bekus IBM 704 kompyuterini dasturlash uchun assemblerdan samaraliroq boʻlgan muqobil dasturlash tilini ishlab chiqishni taklif qildi. 1954-yil oʻrtalarida Fortran tilining spetsifikatsiyasi loyihasi tugallandi. Biroq ushbu dasturlash tili avval boshida foydalanuvchilar tomonidan iliq kutib olinmadi, chunki Fortran assemblerga qaraganda past unumdorlikka ega kod yaratadigan yuqori darajadagi dasturlash tili deya qarala boshladi. Shu tufayli uni optimallashtirish zarurati vujudga keldi.
 
Keyinchalik bu til olimlar tomonidan intensiv hisoblash dasturlarini yozish uchun keng qoʻllanilgan. Murakkab maʼlumotlar turini kiritish uni ayniqsa texnik ilovalar uchun moslashtirdi.
 
1960-yilga kelib, Fortranning IBM 709, 650, 1620, 7090 kompyuterlari uchun versiyalari paydo boʻldi. Uning katta mashhurligi raqobatchi kompyuter ishlab chiqaruvchilarni oʻz kompyuterlari uchun Fortran kompilyatorlarini tuzishga undadi. Shunday qilib, 1963-yilga kelib turli platformalar uchun 40 dan ortiq kompilyatorlar tuzilgan edi. Shu bois Fortran birinchi keng tarqalgan dasturlash tili hisoblanadi<ref>Е.К. Хеннера. Информатика под редакцией Е.К. Хеннера. — Академия, 2004.</ref>.
 
Fortran SSSRʼda Gʻarbga qaraganda kechroq paydo boʻldi, chunki dastlab [[Algol]] SSSRʼda yanada istiqbolli til hisoblangan. Sovet fiziklarining 1960-yillarda Fortran dasturlari yordamida deyarli barcha hisob-kitoblar amalga oshirilgan [[CERN]]ʼdagi hamkasblari bilan aloqasi Fortranni amalga oshirishda muhim rol oʻynadi.
 
Fortrandagi birinchi sovet kompilyatori 1967-yilda „[[:ru:Минск_(компьютер)|Minsk-2]]“ mashinasi uchun yaratilgan, ammo u unchalik mashhur boʻlmagan. Fortranning keng qoʻllanilishi 1968-yilda BESM-6 (''БЭСМ-6'') mashinasi uchun „''ФОРТРАН-ДУБНА''“ kompilyatori yaratilgandan keyin boshlandi. 1972-yilda paydo boʻlgan ES (''ЕС'') [[EHM]]larida dastlab Fortran translyatori (boshqa dasturlar bilan birga IBM/360 dan „aynan nusxa olingan“) mavjud edi.
 
==== ALGOL ====
Algol 1958-yilda ETHʼda (Syurix, Shveytsariya) bir haftalik konferentsiyada keng koʻlamli ilovalar uchun universal dasturlash tili sifatida ishlab chiqilgan va keyin Xalqaro axborotni qayta ishlash federatsiyasi tomonidan tuzilgan qoʻmita tomonidan yakunlangan. Qo‘mita tarkibiga Yevropa hamda amerikalik bir qancha yetakchi dasturlash tillari sohasidagi olimlar va muhandislar, jumladan, Jon Bekus, Jon Makkarti, Piter Naur, Edsger Deykstr va keyinchalik Kobol tilini rivojlantirish qo‘mitasiga raislik qilgan Jozef Vegstenruen jalb etildi.
 
Dastlab, taklif qilingan ALGOL (''ALGOrithmic Language'') nomi rad etildi. Ammo u umumiy foydalanishga aylanganligi sababli, IALʼning rasmiy nomi keyinchalik ALGOL 58 ga oʻzgartirilishi belgilab qoʻyildi.
 
Yangi tilning tarafdorlari ham, tanqidchilari ham bor edi. Qoʻshma Shtatlarda Algol sovuqqonlik bilan qabul qilindi, u faqat akademik muhitda mashhur edi. Algolnining targʻibotchilari bir qator qiyinchiliklarga duch kelishdi. Xususan, oʻsha paytda mavjud boʻlgan kompyuterlarning hech biri Algol alifbosini tashkil etgan barcha 116 ta harfni kiritish-chiqarishni qoʻllab-quvvatlamas edi.
 
Ammo Yevropada Algol ishtiyoq bilan qabul qilindi. U akademik muhitda tezda mashhurlikka erishdi va kompilyatorlar hamma joyda ishlab chiqildi, ularning koʻpchiligi amalga oshirishning murakkabligiga qaramay, juda muvaffaqiyatli boʻldi. Algol Buyuk Britaniyadan SSSRʼning Uzoq Sharqiga tarqalib, ilmiy nashrlarda algoritmlarni tavsiflash uchun universal til va haqiqiy dasturlash vositasiga aylandi.
 
Algolda dastur tushunchasi buyruqlarning erkin ketma-ketligi sifatida emas, balki aniq tasvirlangan va ajratilgan qismlardan iborat blokli tuzilma sifatida paydo boʻldi.
 
Algol dasturining asosiy bloki asosiy dasturning oʻzi hisoblanadi. U ''begin'' va ''end'' kalit soʻzlari juftligi bilan chegaralangan blokga oʻrnatilgan bajariladigan qismini, shuningdek, pastki dasturlarning tavsiflarini oʻz ichiga oladi. Har bir ostdastur kichik dastur shaklida boʻlib, uning ichida oʻziga xos maʼlumotlar tasvirlangan, nom va rasmiy parametrlar roʻyxati koʻrinishidagi yagona aniqlangan interfeys va kod blokini oʻzz ichiga oladi. Bunday holda, bloklar kichik ostbloklarga ajratilishi mumkin.
 
==== LISP ====
Lisp tili 1960-yilda J. Makkarti tomonidan taklif qilingan boʻlib, u raqamli boʻlmagan xarakterdagi masalalarni yechish dasturlarini ishlab chiqishga qaratilgan edi. LISP inglizcha '''LIS'''t '''P'''rocessing (''roʻyxatga ishlov berish'') iborasining qisqartmasi boʻlib, uning asosiy qoʻllanish sohasini yaxshi taʼkidlaydi.
 
Algebraik ifodalar, grafiklar, chekli guruhlar elementlari, toʻplamlar, xulosa chiqarish qoidalari va boshqa koʻplab murakkab obyektlarni roʻyxat shaklida tasvirlash qulayligi bois ushbu dasturlash tili tezda mashhurlikka erishdi. Xususan, roʻyxatlar kompyuterlar xotirasida axborotni taqdim etishning eng moslashuvchan shaklidir.
 
Oʻtgan davr mobaynida ushbu tilning bir qator dialektlari: Common LISP, Mac LISP, Inter LISP, Standard LISP va boshqalar paydo boʻldi. Ularning orasidagi farqlar katta emas va asosan oʻrnatilgan funksiyalarning bir oz boshqacha toʻplamiga va dasturlarni yozish shaklidagi baʼzi farqlari bilan xarakterlanadi. Shunday ekan, ulardan biri ustida ishlashni o‘rgangan dasturchi boshqasini bemalol o‘zlashtira oladi.
 
Lispʼning katta afzalligi uning funksional yoʻnalishidir, yaʼni dasturlash funksiyalar yordamida amalga oshiriladi. Bundan tashqari, funksiya maʼlum bir klassning elementlarini boshqa klassning tegishli elementlari bilan bogʻlaydigan qoida sifatida tushuniladi.
 
Moslashtirish jarayoni dasturning ishlashiga hech qanday taʼsir koʻrsatmaydi, faqat uning natijasi — funksiyaning qiymati muhim sanaladi. Bu katta dasturiy paketlarni yozish va diskni raskadrovka qilishni nisbatan osonlashtiradi. Dasturlarning aniqligi, ularning funksiyalarining ochiq-oydin chegaralanganligi, ularni bajarishda murakkab nojoʻya taʼsirlarning yoʻqligi mantiqiy jihatdan murakkab vazifalarni, masalan, sunʼiy intellektni dasturlash uchun majburiy talablardir.
 
==== COBOL ====
[[Kobol]] 1959-yilda ishlab chiqilgan va asosan biznes ilovalarini ishlab chiqish uchun dasturlar yozish, shuningdek, iqtisodiy sohada ishlash uchun moʻljallangan edi.
 
Tilni yaratuvchilar uni mashinadan mustaqil va tabiiy ingliz tiliga iloji boricha yaqinroq qilishni maqsad qilganlar. Ikkala maqsad ham muvaffaqiyatli amalga oshirildi; COBOL dasturlari hatto mutaxassis boʻlmaganlar uchun ham tushunarli hisoblanadi, chunki ushbu dasturlash tilidagi matnlar hech qanday maxsus izohga muhtoj emas.
 
Kobol koʻplab ilova hamda dialektlarga ega. Til uchun bir qator standartlar: 1968, 1974, 1985 va 2002-yillarda tasdiqlangan. Eng soʻnggi standart tilga obyektga yoʻnaltirilgan paradigmani joriy etdi.
 
== Manbalar ==