Programmalastırıw tilleri tariyxı
Programmalastırıw tilleri tariyxı — dáslepki kompyuterlerdi hújjetlestiriwden tartıp, programmalıq támiynattı islep shıǵıw ushın zamanagóy qurallardı óz ishine aladı. Dáslepki programmalastırıw tilleri júdá oǵada tar sheńberde qollanılıwǵa mólsherlengen bolıp, olar matematikalıq belgilerge hám soǵan uqsas túsiniksiz sintaksisga tayanǵan.
Kompyuter texnikasınıń rawajlanıwı programmalastırıw tillerinde algoritmlardı jazıp alıw ushın hár qıylı jańa belgiler sistemalarınıń payda bolıw procesin belgilep berdi. Bunday tildiń payda bolıwınıń mánisi programma kodın ápiwayılastırıwdan ibarat edi.
Programmalastırıw tillerin bes áwladqa bólingen. Birinshi áwladqa ótken ásirdiń 50-jılları baslarında, birinshi kompyuterler endig'ana payda bolǵan waqıtta dúzilgen tiller kiredi. Bul " bir qatarda bir buyrıq" Principi tiykarında qurılǵan birinshi assembler tili edi.
XX ásir dawamında kompilyatorlar teoriyası boyınsha alıp barılǵan izertlewler joqarı dárejedegi programmalastırıw tillerin jaratılıwına alıp keldi, olar kórsetpelerdi uzatıw ushın qolaylaw sintaksisdan paydalanadılar.
Tariyxı
[redaktorlaw | derekti redaktorlaw]Mashina kodları hám assembler
[redaktorlaw | derekti redaktorlaw]Kompyuterdiń elektron qurılmaları islewdiń fizikalıq principlerı sonnan ibarat, kompyuter tek bir hám noldan ibarat buyrıqlardı — kernewdiń tómenlewi izbe-izligin, yaǵnıy mashina kodın aqıl eta aladı. Kompyuterler rawajlanıwınıń dáslepki basqıshında adam kompyuterge túsinikli tilde, mashina kodlarında programmalar dúziwi kerek edi. Hár bir kórsetpe birlikler hám nollerdiń túrli kombinatsiyası retinde kórsetilgen opkod hám de operand mánzillerinen ibarat edi. Sonday etip, protsessor ushın hár qanday programma sol waqıtta birler hám noller izbe-izligi retinde qarag'an.
Keyinirek kompyuter menen ushırasıw ámeliyatı sonı kórsetdi, bunday tildi ózlestiriw qıyın hám qolaysız bolıp tabıladı. Onı isletgende 1 yamasa 0 di nadurıs izbe-izlilikde jazıp kóplegen qátelerge jol qoyıw múmkinshiligı júdá joqarı edi. Programmanı basqarıw júdá qıyın bolǵan. Bunnan tısqarı, mashina kodlarında programmalastırıwda kompyuterdiń ishki dúzilisin, hár bir blokdıń islew Principin jaqsı biliw kerek edi hám bunday tildegi eń jamanlıq sonda, bul tildegi programmalar — birler hám nollardıń júdá uzın izbe-izligi mashinaǵa baylanıslı, yaǵnıy hár bir kompyuter ushın óz programmasın dúziw kerek edi hám mashina kodlarında programmalastırıw júdá kóp zat : waqıt, jumıs hám programmisttiń itibarın asırıwdı talap etardi.
Tez arada mashina kodın jaratıw procesin avtomatlastırıw múmkinligi málim boldı. 1950-jıldan baslap programmalardı jazıw ushın mnemonik til — Assembler tilinen paydalanıla baslandı. Assembler tili mashina kodın insan ushın qolaylaw formada kórsetiwge múmkinshilik berdi: buyrıqlar jáne bul buyrıqlar atqarılatuǵın obiektlerdi belgilew ushın buyrıqtıń mánisin sáwlelendiriwshi ekilik kodlar ornına háripler yamasa qısqartirilgan arnawlı sózler qollanılǵan. Mısalı, assembler tilinde eki nomerdi qosıw boyınsha kórsetpe add sózi menen ańlatıladı, onıń mashina kodı 000010 formasında boladı.
Assembler tómen dárejedegi programmalastırıw tili bolıp tabıladı. Tómen dárejedegi programmalastırıw tili, bul arnawlı bir túrdegi protsessorga jóneltirilgen jáne onıń qásiyetlerin esapqa alatuǵın programmalastırıw tili bolıp esaplanadı. Bunday halda, „tómen“ „jaman“ degeni emes, bálki bul sonı ańlatadıki, til operatorları mashina kodına jaqın hám arnawlı protsessor kórsetpelerine qaratılǵan boladı. Assemblar tiliniń payda bolıwı programmistlerdiń ómirin sezilerli dárejede ańsatlashtirdi, sebebi endi olar názerde noller hám birler ornına ápiwayı tilge jaqın belgilerden ibarat buyrıqlar menen programma jazıwları múmkin edi. Sol waqıt ushın bul til innovatsiya edi hám ataqlı edi, sebebi ol kishi programmalardı jazıwǵa múmkinshilik beretin edi, bul bolsa sol dáwir mashinaları ushın zárúrli kriterya sanalgan.
Biraq ol arqalı iri programmalıq támiynatlar islep shıǵıw quramalılıǵı bolǵanlıǵı sebepli úshinshi áwlad tilleri esaplanatuǵın joqarı dárejedegi tillerdiń payda bolıwına alıp keldi. Biraq assemblerdan paydalanıw usınıń menen tamamlanbadı, ol búgingi kunge shekem tar dóńgeleklerde ataqlı bolıp kelip atır. Házirgi waqıtta ol programmalardıń bólek bólimlerin jazıwda yamasa geyde programmalardıń ózin jazıwda qollanıladı. Mısalı, drayverlar, oyınlar hám operatsion sistemalar júklegishi (bootloader) di jazıwda assemblerge shaqırıq etiledi. Sonı esten shıǵarmaw kerek, bul til hakerler arasında da ataqlı bolıp tabıladı, sebebi bul tilde jazılǵan programmanıń tezligi joqarı dárejedegi programmalastırıw tilinde jazılǵan programma tezliginen talay joqarı bolıwında bolıp tabıladı. Sebebi, assemblerda jazılǵan programma kólemi júdá kishi boladı. Antivirus islep shıǵıwshıları óz programmalarınıń birpara modullarında assemblerdan da paydalanadılar .
Birinshi joqarı dárejedegi programmalastırıw tilleri
[redaktorlaw | derekti redaktorlaw]1950-jıllardıń ortaları programmalastırıwdıń jedel rawajlanıwı menen xarakterlenedi. Mashina kodlarında programmalastırıwdıń roli tómenley basladı, mashinalar hám programmistler ortasında dáldalshı bolǵan jańa túrdegi programmalastırıw tilleri payda bola basladı. Programmalastırıw tilleriniń ekinshi hám úshinshi áwladları dáwiri baslandı. XX ásirdiń 50-jılları ortalarına kelip, birinshi joqarı dárejedegi programmalastırıw tillerin (high-level programming languages) jaratılıwına kirisildi. Bul tiller kompyuterdiń málim bir túrine (mashinadan ǵárezsiz) baylanıspaǵan edi. Olardıń hár biri ushın óz kompilyatorlari islep shıǵıldı. Kompilyatsiya — joqarı dárejedegi derek tilde jazılǵan programmanı mashina kodına jaqın tómen dárejeli tildegi ekvivalent programma (absolyut kod, obiekt modulı, geyde assembler tili)ǵa awdarma jasawdı ańlatadı.
Birinshi joqarı dárejedegi programmalastırıw tili 1942-1945-jıllarda Konrad Suze tárepinen jaratılǵan en:Plankalkül programmalastırıw tili edi. Buyrıqlardı kompyuterge jetkiziw ushın mólsherlengen birinshi isleytuǵın programmalastırıw tilleri 1950-jıllardıń baslarında jazılǵan. 1949 -jılda usınıs etilgen Jan Mauchlyning en:Short code elektron kompyuter ushın jaratılǵan birinshi joqarı dárejedegi tillerden biri edi. Mashina kodınan ayrıqsha bolıp esaplanıw, Short code matematikalıq ańlatpalardı túsinikli formada ańlatadı. Biraq, programma hár sapar jumısqa túsirilgende mashina kodına awdarma etiliwi kerek edi, bul process ekvivalent mashina kodın isletiwden talay astelew dawam etetuǵın edi.
Óz kompilyatoriga iye bolǵan birinshi joqarı dárejeli til 1951-jılda doktorlıq dissertatsiyası ushın Korrado Böhm tárepinen jaratılǵan.
FORTRAN
[redaktorlaw | derekti redaktorlaw]Kommerciyalıq maqset ushın islep shıǵılǵan birinshi til FORTRAN (FORmula TRANslation) bolıp, 1956 -jılda (birinshi jollaması 1956 -jılda payda bolǵan, biraq birinshi bolıp 1954-jılda islep shıǵarıla baslanǵan ) IBMda Jon Bekus basshılıǵındaǵı gruppa tárepinen islep shıǵılǵan. Ol ilimiy-texnikalıq esap -kitaplar ushın mólsherlengen edi.
1953-jıl aqırında Jon Bekus IBM 704 kompyuterin programmalastırıw ushın assemblerden natiyjelilew bolǵan alternativ programmalastırıw tilin islep shıǵıwdı usınıs etdi. 1954-jıl ortalarında Fortran tiliniń specifikaciyası joybarı tamamlandı. Biraq bul programmalastırıw tili aldın basında paydalanıwshılar tárepinen jıllı kútip alınbadı, sebebi Fortran assemblerge qaraǵanda tómen ónimlilikke iye kod jaratatuǵın joqarı dárejedegi programmalastırıw tili dep qarala basladı. Sol sebepli onı optimallastırıw zárúrshiligi payda boldı.
Keyinirek, bul til ilimpazlar tárepinen intensiv esaplaw programmaların jazıw ushın keń qollanılǵan. Quramalı maǵlıwmatlar túrin kirgiziw onı ásirese texnikalıq qosımshalar ushın maslastırdı.
1960 -jılǵa kelip, Fortrannıń IBM 709, 650, 1620, 7090 kompyuterleri ushın versiyaları payda boldı. Onıń úlken ataqlılıǵı básekishi kompyuter óndiriwshilerdi óz kompyuterleri ushın Fortran kompilyatorların dúziwge usınıs jasadı. Sonday etip, 1963-jılǵa kelip túrli platformalar ushın 40 tan artıq kompilyatorlar dúzilgen edi. Sol sebepli Fortran birinshi keń tarqalǵan programmalastırıw tili esaplanadı.
Fortran SSSR'da Batısqa qaraǵanda keshlew payda boldı, sebebi daslep Algol SSSR'da jáne de perspektivalı til esaplanǵan. Sovet fizikleriniń 1960 -jıllarda Fortran programmaları járdeminde derlik barlıq esap-kitaplar ámelge asırılǵan CERN'dagi kásiplesleri menen baylanısı Fortranni ámelge asırıwda zárúrli rol oynadı.
Fortrandagi birinshi sovet kompilyatorı 1967-jılda „Minsk-2“ mashinası ushın jaratılǵan, biraq ol onsha ataqlı bolmaǵan. Fortranning keń qollanılıwı 1968-jılda BESM-6 (БЭСМ-6) mashinası ushın „ФОРТРАН-ДУБНА“ kompilyatori jaratılǵannan keyin baslandı. 1972-jılda payda bolǵan ES (EC) EEMlarında daslep Fortran translyatori (basqa programmalar menen birge IBM/360 tan „áyne nusqa alınǵan“) bar edi.
ALGOL
[redaktorlaw | derekti redaktorlaw]ALGOL 1958-jılda ETH'da (Cyurix, Shveytsariya ) bir háptelik konferenciyada keń kólemli qosımshalar ushın universal programmalastırıw tili retinde islep shıǵılǵan hám keyin Xalıq aralıq informaciyanı qayta islew federatsiyasi tárepinen dúzilgen komitet tárepinen juwmaqlanǵan. Komitet quramına Evropa hám de amerikalıq bir qansha jetekshi programmalastırıw tilleri salasındaǵı ilimpazlar hám injenerler, atap aytqanda, Jon Bekus, Jon Makkarti, Piter Naur, Edsger Deykstr hám keyinirek Kobol tilin rawajlandırıw komitetine baslıq etken Jozef Vegstenruen qosıldı.
Daslep, usınıs etilgen ALGOL (ALGOrithmic Language) atı biykarlaw etildi. Biraq ol ulıwma paydalanıwǵa aynalǵanlıǵı sebepli, IAL'ning rásmiy atı keyinirek ALGOL 58 ge ózgertiliwi belgilep qoyıldı.
Jańa tildiń tárepdarları da, sınshıları da bar edi. Qospa Shtatlarda Algol kemsalıyqalıq menen qabıllandı, ol tek akademikalıq ortalıqta ataqlı edi. Algoldiń úgitshileri bir qatar qıyınshılıqlarǵa dus keldiler. Atap aytqanda, sol waqıtta ámeldegi bolǵan kompyuterlerdiń hesh biri Algol álippesin shólkemlesken barlıq 116 harfni kirgiziw-shıǵarıwdı qollap-quwatlamas edi.
Biraq Evropada Algol qızıǵıwshılıq menen qabıllandı. Ol akademikalıq ortalıqta demde ataqlılıqqa eristi hám kompilyatorlar hámme jerde islep shıǵıldı, olardıń kóbisi ámelge asırıwdıń quramalılıǵına qaramay, júdá tabıslı boldı. Algol Ullı Britaniyadan SSSR'diń Uzaq Shıǵısına tarqalıp, ilimiy baspalarda algoritmlardı xarakteristikalaw ushın universal til hám haqıyqıy programmalastırıw quralına aylandı.
Algolda programma túsinigi buyrıqlardıń erkin izbe-izligi retinde emes, bálki anıq suwretlengen hám ajıratılǵan bólimlerden ibarat bloklı struktura retinde payda boldı.
Algol programmasınıń tiykarǵı blogı tiykarǵı programmanıń ózi esaplanadı. Ol begin hám end gilt sózleri juplıǵı menen shegaralanǵan blokǵa ornatılǵan atqarılatuǵın bólegin, sonıń menen birge, tómengi programmalardıń xarakteristikaların óz ishine aladı. Hár bir astprogramma kishi programma formasında bolıp, onıń ishinde ayriqsha maǵlıwmatlar suwretlengen, at hám rásmiy parametrler dizimi kórinisindegi birden-bir anıqlanǵan interfeys hám kod blogın o'z ishine aladı. Bunday halda, bloklar kishi astbloklarga ajratılıwı múmkin.
LISP
[redaktorlaw | derekti redaktorlaw]Lisp tili 1960 -jılda J. Makkarti tárepinen usınıs etilgen bolıp, ol cifrlı bolmaǵan xarakterdegi máselelerdi sheshiw programmaların islep shıǵıwǵa qaratılǵan. LISP anglichan LISt Processing (dizimge qayta islew) sóz dizbeginiń qısqartpası bolıp, onıń tiykarǵı qollanıw salasın jaqsı aytıp otedi.
Algebraik ańlatpalar, grafiklar, shekli gruppalar elementleri, jıynaqlar, juwmaq shıǵarıw qaǵıydaları hám basqa kóplegen quramalı obiektlerdi dizim formasında súwretlew qolaylıǵı sebepli bul programmalastırıw tili demde ataqlılıqqa eristi. Atap aytqanda, dizimler kompyuterler yadında informaciyanı usınıwdıń eń maslasıwshı forması bolıp tabıladı.
Ótken dáwir dawamında bul tildiń bir qatar dialektları : Common LISP, Mac LISP, Inter LISP, Standart LISP hám basqalar payda boldı. Olardıń arasındaǵı ayırmashılıqlar úlken emes hám tiykarlanıp ornatılǵan funksiyalardıń azmaz basqasha kompleksine hám programmalardı jazıw formasındaǵı birpara ayırmashılıqları menen xarakterlenedi. Sonday eken, olardan biri ústinde islewdi úyrengen programmist basqasın biymálel ózlestira aladı.
Lisp'ning úlken abzallıǵı onıń funksional baǵdarı bolıp tabıladı, yaǵnıy programmalastırıw funksiyalar járdeminde ámelge asıriladı. Bunnan tısqarı, funksiya málim bir klasstıń elementlerin basqa klasstıń tiyisli elementleri menen baylanıstıratuǵın qaǵıyda retinde túsiniledi.
Maslastırıw procesi programmanıń islewine hesh qanday tásir kórsetpeydi, tek onıń nátiyjesi — funksiyanıń ma`nisi zárúrli esaplanadi. Bul úlken programmalıq paketlerdi jazıw hám disktı raskadrovka qılıwdı salıstırǵanda ańsatlastıradi. Programmalardıń anıqlıǵı, olardıń funksiyalarınıń ashıq-aydın shegaralanǵanlıǵı, olardı orınlawda quramalı orınsız tásirlerdiń joq ekenligi logikalıq tárepten quramalı wazıypalardı, mısalı, jasalma intellektti programmalastırıw ushın májburiy talaplar bolıp tabıladı.
COBOL
[redaktorlaw | derekti redaktorlaw]Kobol 1959 -jılda islep shıǵılǵan hám tiykarınan biznes qosımshaların islep shıǵıw ushın programmalar jazıw, sonıń menen birge, ekonomikalıq tarawda islew ushın mólsherlengen edi.
Tildi jaratıwshılar onı mashinadan ǵárezsiz hám tábiyiy anglichan tiline ılajı bolǵanınsha jaqınlaw qılıwdı maqset etkenler. Eki maqset de tabıslı ámelge asırıldı ; COBOL programmaları hátte qánige bolmaǵanlar ushın da túsinikli esaplanadı, sebebi bul programmalastırıw tilindegi tekstler hesh qanday arnawlı túsindirmege mútáj emes.
Kobol kóplegen qosımsha hám de dialektlarǵa iye. Til ushın bir qatar standartlar : 1968-, 1974-, 1985- hám 2002-jıllarda tastıyıqlanǵan. Eń sońǵı standart tilge obiektke jóneltirilgen paradigmanı engizdi.