Гісторыя Мовы праграмавання і іх эвалюцыя
Original on http://www.scriptol.com/programming/history.php
Тэрміны агульнага прызначэння моў праграмавання
Па Sureau Дзяніс
Крытэрыі выбару: мова праграмавання, увойдзе ў гісторыю, калі яна мае кампілятар ці перакладчык, або калі гэта натхніла іншых моў праграмавання. Новыя мовы з інавацыйнымі функцыямі пералічаныя, калі мы можам вырабіць праграм у гэтай langage.
Першы мову
Ада Лаўлэйс і Бэббидж і яго пляменнік пісалі праграмы для праекта “розніца рухавіка”, а затым “аналітычнай машыны”.
У 1945 годзе нямецкі К. Цузе, вынаходнік Z3 кампутар будзе вызначаны эвалюцыянаваў мова для гэтага рухавіка (з масівамі і запісы). Трохі дакументаў эпохі аб гэтай мове існуе.
Асамблея
Мантажнікі існуе з пачатку кампутараў. Яны звязваюць сімвалічнае імя машынны код мовы, напрыклад:
Дадаць BX, 4
CMP [ДОПОГ] 3
JMP адрас
Асамблея праграмавання больш не часта практыкуецца, нават для стварэння хуткіх працэдур…
Автокод – 1952
Алік Е. Глена
Рэалізавана ў першую чаргу на Марка 1, то на іншых кампутарах, гэта сімвалічны код.
IPL – 1956 – Апрацоўка інфармацыі Мова
А. Ньюэлл, Г. Сайман, Дж. Шоу
Мова нізкага ўзроўню апрацоўкі спісаў. Рэалізуе рэкурсіі.
Fortran – 1954-1958 – Формула Перакладчык сістэмы
Джона Бэкуса і іншых даследчыкаў у IBM
Мова прысвечаная матэматычным разліках.
Fortran II (1958) прадставіў падпраграм, ФУНКЦЫІ, завесы, прымітыў для кіравання структурай.
Ідэнтыфікатары былі абмежаваныя да шасці знакаў.
Lisp – 1958-1960 – Лісп
Mac Карці
Функцыянальны мова для апрацоўкі спісаў.
Гэта чыста рэкурсіўны, а не итерационные. Існуе ніякай розніцы паміж кодам і дадзенымі.
IAL – 1958 – Міжнародная алгебраічная логіка
Імя для Алгол 58, ніколі не ажыццяўляюцца.
Алгол – 1960/Алгол W – 1966/Алгол 68 – алгарытмічная мова
Вызначана ў міжнародны кансорцыум спецыялістаў камп’ютэрных навук, каардынуецца ИФИП.
Гэта быў кулаком універсальны мову, які будзе машына незалежнымі.
Уяўляе выкарыстанне БНФ (Бэкуса Науру) граматыкі для стварэння сінтаксісу парсера.
Уяўляе БЛОК заяў, і лакальныя зменныя ўнутры блока.
Рэкурсіўна быў рэалізаваны, але стрымана, як гэта лічылася, як бескарысна!
Выкарыстаньне дынамічных масіваў, і гэта азначае, што наступны мова (Pascal, З) назіраецца рэгрэс з выкарыстаннем статычных масіваў, для лепшай прадукцыйнасці.
Ён IF THEN ELSE, FO,: = знак для прызначэння (выкарыстоўваецца затым Паскаль), перамыкач з gotos, BEGIN END маркераў, пакуль пятля.
Алгол W ад Ніклаўс Вірт ў 1966 годзе выкарыстаў запісы, якія з’яўляюцца дынамічнымі структурамі дадзеных, CASE, перадачы параметраў па значэнні, прыярытэт аператараў.
У тым жа годзе, Ніклаўс Вірт стварыў Эйлера, мова паміж Алгол і Паскаль.
Алгол 60 быў па-ранейшаму арыентаваны на матэматычныя разлікі. Каб паспрабаваць дасягнуць першапачатковай мэты мовай агульнага прызначэння, новая версія была запушчана ў 1964 годзе, Алгол X, пераназванай далейшага Алгол 68.
Алгол-68 выкарыстоўвае =+ “, каб аб’яднаць абодва прызначэння і дадаць. Ён прадставіў UNION і CAST тыпаў. Яна валодае IF THEN ELIF FI, CASE, GOTO, вызначаныя карыстальнікам аператары.
Дадатковыя кампіляцыі не дапускаюцца.
Cobol – 1960 – Агульны бізнес-арыентаваных Langage
Вызначана камітэта, CODASYL, Канферэнцыі па дадзеных SYsystems Мовы
Камітэт пад эгідай Міністэрства абароны, і вытворцы, універсітэтаў і карыстальнікаў, працаваў з мая 1959 па красавік 1960 года.
Грэйс Мюрэй Хопер, які быў распрацаваны Flow-Matic, кампіляваная мова ў 50-х гадоў, удзельнічаў у камітэт.
Cobol з’яўляецца класічнай працэдурны мову, накіраваных на кіраванне прадпрыемствам, у якой праграма дзеліцца на 4 падраздзяленні: вызначэнне, навакольнага асяроддзя, дадзеныя, працэдуры, і яны могуць быць падзеленыя на часткі. Ён быў заснаваны на дадзеных, і праграма павінна сапраўды апісаць абсталявання і ўваход/выхад фармату дадзеных.
Ён прадставіў структуру запісу дадзеных. Праграмы дакументальна сінтаксіс і ўсё, але ligthweight…
APL – 1964 – мова праграмавання
К. Айверсон
Мова, выкарыстоўваючы матэматычныя абазначэння, з вялікай колькасцю аператараў. Унікальны тып, масіў.
Пэўны перыяд з 1957 па 1960 год, рэалізаваныя ў 1964 годзе.
Асноўныя – 1964 – пачаткоўцаў Універсальная Сімвалічная Інструкцыя кодэкса
Джон Кемени, Томас Курц
Быў распрацаваны ў 1963 годзе, якая будзе простая ў асваенні і быў рэалізаваны ў 1964 годзе. Першая версія была складзена, то яна становіцца інтэрактыўным і інтэрпрэтаваць. Кожная лінія мае нумар, каб GOTOs заяў для пераходу на лініі!
Біл Гейт і Пол Ален ёсць выйграць міжнародны конкурс па распрацоўцы і ажыццяўленні хуткіх і кампактных Basic, у першую чаргу для Альтаір (у 4 Кб памяці!), А затым на іншых мікра-ЭВМ.
Мікра-ЭВМ былі дастаўленыя з базавымі ў ПЗУ да канца 80-х.
У 1977 годзе Apple II была прададзеная з цэлым Basic. Тады Applesoft Асноўныя Microsoft з якая плавае кропкай. Applesoft было з дапамогай двух літар ідэнтыфікатараў! Падпраграмы былі выкліканыя GoSub на нумары радкоў.
Першы кампутар ад IBM, (у 1981) выкарыстоўвае MS-DOS ад Microsoft і яе інтэрпрэтаваць Basic (Basica). У 82 Microsoft выпусціла свой першы складзены Basic (Quick Basic).
Pascal і C замянілі Асноўная ў тым жа дзесяцігоддзі. Microsoft усё яшчэ выкарыстоўвае Basic. Visual Basic для прыкладанняў, ASP для вэб-прыкладанняў і распаўсюджваюцца з мовы (макра), што з’яўляецца асноўнай таксама.
Праўда Basic, ад арыгінальных аўтараў мовы складзены і больш не выкарыстоўвае нумары радкоў.
ISWIM – 1965 – Калі вы бачыце, што я маю на ўвазе
П. Ландин
Першы чыста fonctional мовы, у матэматычным сэнсе. Першым, хто выкарыстаў лянівых вылічэнняў.
Атрыбут граматыка – 1965
Дональд Кнут
Завяршэнне метаду БНФ, атрыбут Граматык апісвае семантыку мовах, якія будуць зробленыя з функцый. Гэты тып граматыкі дапамагае будынак кампілятараў.
Simula 67 – 1962-67
Оле-Ёхан Даль, Крыстал Nygaard
Праект Simula пачаў у 1962 годзе. Мэтай было стварэнне прылады для апісання дыскрэтных падзей сістэмы, або сеткі, і мова праграмы, мадэлюе рэальны свет.
Упершыню была распрацавана як пашырэнне Алгол.
У 1964 годзе, Simula 1 быў рэалізаваны на Univac 1107. Ён быў выкарыстаны для кіравання адміністрацыі, аэрапортаў, планаванне, транспарт, ці сацыяльных сістэм.
Гэта быў спецыялізаваны інструмент. У 1966 годзе было вырашана зрабіць гэта універсальны мову. Шэраг праектаў быў запушчаны з дапамогай некалькіх вытворцаў (IBM, Univac, лічбавыя), і гэта прывяло да Simula 67.
Гэта універсальны мову, увёў класы, атрыманне ў спадчыну і аб’екты, якія з’яўляюцца асобнікамі класаў. Класы дазваляюць звязаць функцыі (метады) да аб’ектаў.
Лагатып – 1966
Fuerzeig, Сеймур дзядзінец і інш
Накіраваная ў навучанні праграмаванню для дзяцей, каля Lisp, і заснаваны на слізгальных “чарапаха” на экране.
SNOBOL 4 – 1967 – Моцныя арыентаванай сімвалічны мову
DJ Фарбер, RE Грисволд, FP Polensky у званы Labs
SNOBOL з’явіўся ў 1962 годзе.
SNOBOL 4 з’яўляецца першым стабільным размеркаванай версіі SNOBOL, наяўных у 1967 годзе.
Гэта працэсар радкоў, заснаваны на прынцыпе супастаўлення з узорам, узаемнай сувязі і чаргаванні.
Гэта быў першы мова для рэалізацыі асацыятыўных масіваў індэксуюцца любога тыпу ключоў.
Гэта дазваляе запускаць код захоўваецца ўнутры радкоў.
Тыпы дадзеных: радкі, цэлыя, сапраўдныя масіва, табліцы, карціны і прыстасаваныя тыпы.
CPL – камбінаваны мова праграмавання
Кембрыдж і Лондан універсітэты
Гэта было спалучэнне Алгол 60 і функцыянальны мову, накіраваныя на доказ тэарэмы. Было выкарыстаннем паліморфных структур тэсціравання. Типизированный мову з “любы” джокер тыпу. Калі б спіс і масіў.
Комплекс, не быў рэалізаваны. Я цытую яго толькі таму, што было крокам да распрацоўцы мовы Сі.
BCPL – 1965? – Асноўныя CPL
Марцін Рычардс
Ён быў прызначаны для спрошчанай вэрсіі CPL.
Быў выкарыстання гэтых структур кіравання: ДЛЯ, завеса, Калі б тады, час, пакуль, паўтараю, паўтараць, пакуль, выключальнікаў і г.д…
Валодае працэдуры і функцыі, у адрозненне ад С.
Блок падзельнікі склалі $ (….. $), які натхніў, верагодна,/*… */У С.
PL/1 – 1965? – Мова праграмавання нумар адзін – Першапачаткова NPL (New Programming Language)
IBM
Ibm спасылкі на кампілятарамі.
Мова быў прызначаны для агульнага прызначэння і модульныя.
Ключавыя словы зарэзерваваны толькі ў кантэксце, дзе яны выкарыстоўваюцца ў якасці ключавых слоў.
Гэта больш незалежнае ад абсталявання, чым папярэднікі. Гэтыя тыпы прызнаюцца: фіксаваны, рэальны, комплексны, характар, трохі, BIN, паказальнік, фатаграфія, файл і г.д…. Дадзеныя атрыбуты па змаўчанні (як дакладнасць, напрыклад), што залежыць ад кантэксту.
Гэтыя злучэнні тыпу ўбудаваных: масіў, структур, аб’яднанняў, і іх камбінацый. IF THEN і SELECT.. КАЛІ.. Інакш з’яўляюцца ўмоўнымі структур, і варыяцыі на структуру DO дазваляе розныя ўмоўныя цыклы.
Захоўванне класаў ўводзяцца: аўтаматычны, статычны (жыццё праграмы), якія кантралююцца, заснаваная. Выключэнні рэалізаваныя.
Паскаль – 1970 – названы ад французскі матэматык Блез Паскаль
Ніклаўс Вірт
Мова, якія дазваляюць спрасціць пабудову кампілятараў, і весці выкладанне на прымус да структурнага праграмавання.
UCSD Pascal, напісаная групай праграмістаў ад этыляванага Кэнэт Боулз гэта першая версія для мікра-ЭВМ. У ім сабрана праграм у P-код, які з’яўляецца партатыўным і інтэрпрэтаваць (як Java пазней). Яна ўключае ў сябе поўную асяроддзе распрацоўкі, прынцып паспяхова выкарыстоўваецца далей, Turbo Pascal.
У 1981 годзе, ролевая гульня напісана на Паскалю, Wizardry, меў вялікі поспех на Apple II.
Калі Turbo Pascal (па Хейлсбергом Андэрс) з’явіўся ў 1983 годзе, хутка і з поўнай IDE, мова заваяваў поспех і да гэтага часу шырока выкарыстоўваецца.
Кіраўнікі структуры з’яўляюцца блізкія C.
Форт – 1971 год – Чацвёрты зводзіцца да прадугледжаным абмежаванне з 5 літар IBM 1130
Чарльз Х. Мур
Вызначаны ў ходзе 60+, як уяўляецца, былі рэалізаваны ў 1971 годзе.
Мова для астранамічных інструментаў з выкарыстаннем стэка для замены пераменных.
Яго мэтай было быць чацвёрты мова пакалення.
Smalltalk – 1972
Алан Кей і група праграмнага забеспячэння Канцэпцыі
Гэта цалкам аб’ектна-арыентаваны мова, які працуе заўсёды ўнутры графічнага environnment, з вокнамі, мыш, і г.д…
C – 1973 – З пераемнікам B, які з’яўляецца пераемнікам BCPL
Дэніс Рычы
Гэта было па-першае прызначанага для праграмавання сістэмы UNIX аперацыйнай, але стаў хутка універсальнай дзякуючы сваёй мабільнасці і хуткасці.
Дазваляе інкрыментны кампіляцыі. У 1965 годзе, ATT праграмісты выкарыстоўвалі BCPL ў працу па рэалізацыі Unix. Незадаволеныя з гэтай мовай, яны зрабілі гэта, каб развівацца новая версія імя B, то да новай мовы імя С.
Гэта было развіваецца з апаратных, якія падбухторваюць да стварэння С. BCPL і B выкарыстоўвае цэлы лік, для паказальнікаў, але гэта не працуе на новых кампутарах.
BCPL не мае тыпу (як РНР або іншых сучасных мовах сцэнарыяў!). Я дэкларацый Int, знак B былі створаны ў С. Іншыя віды з’явіцца пазней.
Аператар+ = паходзіць ад Алгол 68 (але было напісана =+)
У BCPL, блок аператараў быў заключаны ўнутры (* і *) знакаў, як каментар у/* і */і суб-выразаў усярэдзіне (і). Я мяркую, гэты сімвалізм быў прызначаны для абазначэння таго, што што-небудзь выраз у мове, а таксама паменшыць час апрацоўкі. Мова C спрошчанай напісання з {} і сімвалаў, што робіць арыгінальная ідэя не застаецца.
Саюза і кінуў прыходзяць з Алгол 68.
++ Ужо ў B мове.
Ключавое слова “ўключаць” паходзіць ад PL/I.
Препроцессора быў рэалізаваны ў 1973 годзе, і З было выкарыстана з гэтай даты, каб напісаць Unix, але Рычы працаваў над ёй з 1969 года. Мова развіўся да 1980 года..
Пралог – 1970+
А. Colmerauer, Д. Руссель
Быў распрацаваны ў Францыі ў Экс-ан-Правансе і ў Edimburg.
Увёў лагічнага праграмавання. Праграма складаецца з палажэнняў Рога.
Пралог з’яўляецца дэкларатыўным, яе сістэмы лагічнага вываду зьяўляецца рухавіком рэзалюцыі.
SQL – 1970+ – стандартнага мовы запытаў
IBM
Мова запытаў для рэляцыйных баз дадзеных. Пераемнік мове плошчы.
AWK – 1974 – першыя літары імёны аўтараў
Ахо, Kerninghan, Уайнбергер
Слова апрацоўкі мовы на аснове рэгулярных выразаў, выкарыстоўваючы шаблон-дзеянне прынцыпу.
Схема – 1975 – ад “schemmer”
Gerald Jay Sussman і Гай Л. Стыл ў Масачусецкім тэхналагічным інстытуце
Мова вытворным ад Lisp, але спрошчаны. Тыпы лагічнага, цэлага нявызначанага памеру, рацыянальнага і комплекснага, знакаў, сімвалаў, вектары, арыентаваных пар, спісы, асацыятыўныя спісы, хэш-табліцы. S-выразы універсальнага тыпу выкарыстоўваецца для пашырэння мовы.
Ён часта выкарыстоўваецца ў якасці мовы сцэнарыяў, па Gimp напрыклад. Стандартная.
Мова і сродкі распрацоўкі хоп ад INRIA з’яўляецца схема пашыранай ў функцыянальным дыялект HTML для стварэння Web 2.0 прыкладанняў.
Плазменныя – 1975
Карл Х’юіт
Мова акцёраў. Рэалізавана на Lisp.
SASL – 1976 – Санкт-Эндрус статычнага мовы
Д. Тэрнер
Накіраваная вучыць функцыянальнага праграмавання.
Адбываецца ад ISWIM, неабмежаваны структур дадзеных.
Абразок – 1977
Грисволд
Працэдурны мову, з тэкстам функцыі Snobol4, і магутныя канструкцыі.
Ён структураваных тыпаў: спіс, набор, стол (слоўнік).
Спіс заявіў: імя: = ["Слова", "слова", нумар і г.д...]
Спіс можа быць праіндэксаваны ў выглядзе [я] або выкарыстоўвацца ў якасці стэка.
“Мноства” правесці элементаў без дублонов, і мае некалькі функцый: аб’яднанне, скрыжаванне, выдаленне.
ШЭРАГ пабудаваць напісана: А ў пункт Б, дзе “па” ключавых словах і “а” і “B” з’яўляюцца зменнымі..
Дыяпазон можа выкарыстоўвацца ўнутры выразы або як аргумент функцыі. Выразы або функцыі выклікаюцца з кожнага значэння ў дыяпазоне.
Прыклад: напісаць (1 да 5) будзе адлюстроўваць 1, 2, 3, 4, 5.
Выраз не вяртаюць лагічнае значэнне, але з’яўляюцца альбо ацэнкі або адхілена. Аперацыі выконваюцца, калі выраз можа быць ацэнена. Гэта першы мову, дзе выраз ацэнкі яго ўзначальвае МЭТА.
Існуе сцвярджэнне мове C: Калі (X = выраз)… што азначае: прысвоіць х вынік выразы, а калі не роўны нулю, то…, гэтая канструкцыя абагульненых ў іконе, калі выраз можа быць ацэненая, х атрымлівае значэнне, інакш х застаецца нязменным і стан ігнаруецца.
КОЖНЫ.. DO пабудаваць, звязаныя з выразам працуе як итератор. Як дыяпазону.
Чаргаванне з’яўляецца яшчэ адным магутным пабудаваць. Гэта дазваляе выкарыстоўваць паслядоўнасць параметраў, пакуль вынік. Сімвал “|”.
Напрыклад сцвярджэнне: калі | B | C = 0 | 1 сродак для…. калі А, У або З 0 або 1, то…
ML – 1973? – Meta Language
Р. Милнер
Функцыянальны мова натхнёны ISWIM.
Яе мэтай было доказ тэарэмы на Edimburg універсітэта.
Функцыі замяніць шаблон мадэлі.
Рэалізавана на Lisp.
Модула-2 – 1979 – модульны LAnguage
Ніклаўс Вірт
Modula 1 будзе вызначаная ў 1977 годзе. Рэалізавана на працоўную станцыю Lilith на першы погляд.
Ідэя заключаецца ў зніжэнні рызыкі памылкі з прымусовых правілаў праграмавання. Тым не менш, ён дадае да Паскаль некаторыя асаблівасці мовы Сі. Выклік функцыі без аргументу напісана F (), як у С, а не/як у Паскалю.
Праграма пабіты на модулі з лакальнай вобласці бачнасці, і інтэрфейсы для іншых модуляў. Выкарыстоўвайце сопрограммы. Дазваляе доступ да апаратнага забеспячэння.
Выкарыстоўваўся толькі ў універсітэтах, таму што гэтыя новыя магчымасці былі дададзеныя таксама Паскаль ад стваральнікаў кампілятараў (адзінак Turbo Pascal у асноўным).
Пекла – 1980+ – мянушка Ада Лаўлэйс Байран дэ, першая жанчына, праграмы
Дызайн камітэт узначальвае Жан Ichbiah, для Міністэрства абароны ЗША.
Натхнёны Паскаль і Алгол У. даволі цяжка.
Уяўляе тыповасць алгарытмаў і выгляд прымітыўнага арыентацыю аб’екта, але становіцца па-сапраўднаму аб’ектна-арыентаванага пазней.
Ўводзіць пакеты, якія з’яўляюцца незалежнымі модулямі.
C++ – 1981-1986
Бьерн Строўструп
Аб’ектна-арыентаваныя версіі C.
Уяўляе перагрузкі аператараў. Метады могуць быць убудаваныя.
Выкарыстоўвайце//на адзін каментар, які пастаўляецца з BCPL, з якіх З пераемнік!
Акрамя таго, множнае спадкаваньне і шаблоны (універсальныя класы або функцыі) была выкананая.
Objective C, вынайшаў Брэдам Коксам ў 1984 годзе, з’яўляецца яшчэ адным Objet арыентаваная версія C, натхнёны Smalltalk. Няма перагрузкі аператараў. Выкарыстоўваецца для запісу NeXTSTEP, аперацыйнай сістэмы NeXT Computer.
Standard ML – 1984
Р. Милнер, Універсітэт Edimburgh і Кембрыдж і INRIA
Пошук Standard ML Маскве пошукавай сістэмы.
Ажыццяўленне ML.
Eiffel – 1985
Бертран Меер
Працэдурны мова цалкам аб’ектна-арыентаваны, рэалізацыі настойлівасці і праграмаванне за кантракт (з дапамогай перадумовы і постусловия на функцыі). Была распрацавана для забеспячэння бяспекі праграмнага забеспячэння.
Складальнік ў С. Можа быць спалучана з іншымі langages. З асаблівасцяў функцыянальных моў, агульныя класы, зборшчык смецця.
Версію з адкрытым кодам існуе, Сатера (ад назвы вежы ў Берклі).
GAP – 1986 – Групы, Алгарытмы і праграмаванне
Йоханес Мэер, Вернер нікель, Аліса Нимейер, Марцін Schönert і інш
Мова быў вызначаны ў праграме матэматычных алгарытмаў.
Гэта інтэрпрэтуецца, інтэрактыўнае тыпаў. Спіс і запісу камплексных зменных.
Сінтаксіс, што Паскаль з некаторымі адрозненнямі. Каментары да прыкладу ўводзяцца #.
Канец блока пазначаецца перавернутай ключавыя словы: калі ў Інтэрнэт, зрабіць ОД.
Цыкл мае формы: у спісе, у ад да.
Мове працэдур і функцый.
Што прымусіла яго на часткі, калі што зменныя паказваюць значэння, а не адрасы памяці, і форма вызначэння функцыі, як выклік: X: = функцыя (аргументаў) цела.
Функцыя можа быць ўкаранёны ў іншай функцыі.
Міранда – 1989 – З імя Шэкспіра гераіну (Міранда, сродкі для выдатнай на латыні)
Д. Тэрнер
Натхнёны SASL і ML. Lazy ацэнкі: аргументы функцыі вылічаецца толькі тады, калі яны выкарыстоўваюцца. Убудаваныя шаблоне, модулі.
Caml – 1987 – катэгарычных абстрактны мова машыны
Суарэс, Вайс, Моры
Caml і Objective Caml ў 1996 годзе, рэалізаваны ML.
Perl – 1987 – Практычныя Выманне і даклад Langage
Лары Уол
Прызначанага для замены мовы каманднага радка Unix, Ш., Sed і Awk, яна ўсё ж пачварны сінтаксіс. Выкарыстоўваецца ў асноўным для адміністравання сістэмы, CGI скрыптоў.
Уключае ў сябе спісы і ассоциативов масіваў. Структура FOREACH кіравання дазваляе сканаваць спісы.
Oberon – 1988
Ніклаўс Вірт
Пераемнік Modula 2 (і Pascal).
Некалькі часта выкарыстоўваюцца канструкцый падушаныя, каб зменшыць рызыку або памылка! Зборшчык смецця дадаецца.
Haskell – 1990 – мянушка логікі, Хаскелл Кары
Чыста функцыянальны мову. Натхнёны Міранда і SASL.
Функцыянальныя масіваў, па шаблону.
ABC 1980-90 – ABC (эквівалент EZ на англійскай мове)
Кры – Meertens, Пэмбертан і Гвіда Ван Россум
Мова скрыптоў распрацаваны на кры у Нідэрландах, і мэтай якога павінен быў стаць пераемнікам Quick Basic або моў сцэнарыяў з Unix.
Магчыма, першым, каб выкарыстоўваць водступы для абазначэння заявы блока: няма маркераў, як пачатак/канец.
Яшчэ адно новаўвядзенне, не існуе кіравання файламі, а стойкасці глабальныя пераменныя: значэнне захоўваецца ад сесіі да сесіі!
Ёсць пяць тыпаў: колькасць, радок, спіс, які складаецца (структура без імёны палёў), масіў.
Python – 1991 – ад ангельскага тэлевізійным фільме “Монті Пайтона Лятаючы цырк”
Гвіда Ван Россум
Мова сцэнарыяў, дынамічных тыпаў. Гэта замена для Perl.
Натхнёны ABC, але з’яўляецца пашыраецца з бібліятэкамі C і аб’ектна-арыентаваным.
Як ABC, выкарыстоўваная развіваліся тыпаў: картэж, спіс, слоўнік.
Нарэзкі аператар [: B] дазваляе здабываць суб-ліст з спісу.
Існуе версія, што кампілюецца ў байт-код Java, Jython і парты для. NET.
Pov-Ray – 1991 – захаванне гледжання (назва пасрэднага-папулярныя кнігі навукай).
Д. і А. Колінз, і фундатараў
Pov-Ray гэта мова для апісання 3D-малюнкаў.
Дыскатэка – 1992 – Distributed супрацоўніцтва
Рэйна курку-Suonio
Дыска спецыфікацыі мовы для рэактыўных сістэм з Pascal-падобны сінтаксіс. Канструкцыі мовы з’яўляюцца аб’ектамі, падзеямі функцый (названы тут дзеяння), і зносін. Функцыя актывуецца, калі стан сістэмы адбываецца, і могуць быць перазапісаць, гэта называецца “ўдакладненне” ў мове. Дыскатэка факусуюць на калектыўны паводзіны. Пласты модуляў мовы. Гэта сістэма, арыентаваная мову з аб’ектамі і паводзін (не арыентаваны на канкрэтныя дзеянні, як сказана ў прэзентацыі).
Ruby – 1994 – Як каштоўнасць, аналогіі з Perl
Юкихиро Мацумото
Ruby быў распрацаваны ў якасці пераемніка Perl і Python альтэрнатыва, больш выразнай, чым першы, і больш аб’ектна-арыентаваным, чым другі. Сінтаксіс зыходзіць ад гэтых дзвюх моў, яна хоча быць без здзіўлення і натуральным, але могуць быць комплекснымі.
Існуе ніякай новай структуры кіравання, як у Scriptol, але мноства дробных новаўвядзенняў, каб зрабіць код менш.
Гэта інтэрпрэтаваная мова лёгка пашырыць. Заявы спыняецца канца радка. Блокі заявы і завесы падзяляюцца “канец”. Большасць функцый Python’s прысутнічаюць: асацыятыўныя масівы, итераторы…
Арыгінальнасць Функцыя дынамічнага аб’екта (даданне метадаў асобнікаў) і аб’ём зменных пазначаецца прэфіксам.
Java – 1994 – Java (кава)
Джэймс Гослінг і іншых праграмістаў ў Сан-
Задуманы ў пачатку, у 1991 годзе, як інтэрактыўныя мовы імя Ок, быў няўдалым. Але ў 1994 годзе была перапісана для Інтэрнэту і перайменаваны Java. У 1995 годзе навігатары могуць загружаць прыкладанні. У студзені 1996 года Javasoft распаўсюджвае JDK 1.0, Java Developpement Kit.
Java з’яўляецца класічнай працэдурны мова, побач з C++. Ён кампілюецца ў байт-код, інтэрпрэтуюцца на любым кампутары…
Гэта прасцей, чым C++: аднаго класа файлаў, аўтаматычнае кіраванне памяццю, ні паказальнікаў. Няма множнае спадкаваньне, ні перагрузкі аператараў, але інтэграваных у шматзадачнай асяроддзях.
У адрозненне ад C і C++, мае толькі дынамічныя масівы.
PHP – 1995 – Персанальны Хатнія старонкі гіпертэкставай Працэсар
Расмусам Лердорф
Multi-платформы мовы сцэнарыяў, убудаванага ў HTML.
Побач С, але не набралі. Зменныя з прэфіксам $ сімвал як абалонкі Unix або Perl. Інтэрпрэтатар аналізуе HTML старонку, якая ўкладваецца PHP код і забяспечвае чысты HTML-старонку.
Пашыраная бібліятэка функцый дазваляе вэб-майстрам для стварэння дынамічных старонак.
Microsoft выкарыстоўвае эквівалентнае мове пад Windows, ASP, паблізу ад асноўных.
JavaScript – 1995 (Быў па-першае імем LiveScript)
Брэндан Eich у Netscape
Мова сцэнарыяў для embedd працэдурны код ў вэб-старонкі.
Можа быць выкарыстаны для іншых прыкладанняў, XML-мовы, заснаваныя на прыкладзе.
Доля сінтаксіс C або Java, але з нетипизированные пераменныя. Элемент вэб-старонкі (акно, стол, і г.д…) даступныя праз аб’ектную мадэль дакумента.
UML – 1996 – уніфікаваны мова мадэлявання
Стандартам OMG (Object Management Group) – Град Буч, Джым Рамбам, і Івар Якабсон
UML з’яўляецца аб’яднанне трох моў мадэлявання распрацаваны трох аўтараў вышэй. Мова выкарыстоўвае графічныя абазначэння для распрацоўкі праграмных праектаў. Крыніца дыяграмы выказаўшы аб’ектаў і іх узаемадзеянняў. Мадэль выраблена з меркаванняў і іх спалучэнне апісвае поўную сістэму. Мадэль з’яўляецца абстрактным і дамен-незалежнымі.
ECMAScript – 1997
Стандартны Еўрапейскай арганізацыі па стандартызацыі ECMA
Стандартны для langage вынайдзены Netscape, каб дынамічны HTML старонак на баку кліента.
Rebol – 1997 (канструкцыя старэй) – адносным выражэнні аб’ект на аснове мовы
Карл SassenRath
Сінхронны пераклад, які пашыраецца мова сцэнарыяў, які вырабляе кампактны код. Яна накіравана на зносіны ў Інтэрнэце і размеркаваных вылічэнняў.
З 45 тыпаў, выкарыстоўваючы той жа аператараў (Прыклад: дата, грошы…). Выкарыстоўвайце [], каб заключыць блокаў аператараў.
C # – 2000 – (C-Sharp), жадаеце дамагчыся поспеху ў C++
Андэрс Хейлсбергом/Microsoft
Гэта асноўны мову. Сярод NET, для праграмнага забеспячэння рабочых думкі Інтэрнет. Як Java, яна захоўвае сінтаксіс С, 34 гадоў мовы, з тым жа паляпшэнняў: зборшчык смецця, няма паказальніка, інтэрфейсы, шматзадачнасць…
C # кампілюецца ў прамежкавую мову, MSIL (Microsoft Intermediate Language), і выкарыстоўвае некалькі моў бібліятэка, CLR (Common Language Runtime). Арыгінальнасць. NET сістэмы з’яўляецца тое, што розныя мовы могуць быць складзеныя на MSIL і дзяліцца сваімі класамі.
Іншыя новыя магчымасці прыйсці з гэтай мовай:
– Структуры ў цяперашні час асаблівы від аб’екта, прынятага значэння.
– Литералы аб’ектаў таксама з метадамі..
– Атрыбуты апісальных аб’ектаў прыкладаецца да элементаў праграмы і выкарыстоўвацца выканання.
– Уласцівасці: метады, якія могуць быць выкарыстаны ў якасці зменных (ўласцівасці = 5 эквівалентна ўласцівасці (5).
– Па кожнаму элементу () для сканавання масіваў (новыя толькі для Java і C++).
– Дэлегат замяняе паказальнік функцый С.
Ёсць паляпшэння па Java таксама:
– Упраўленне падзеямі паляпшаецца.
– Перагрузка аператара прысутнічае.
– Просты доступ да роднай сістэме.
AspectJ – 2001 – аспект для Java
Апала-Альта Навукова-даследчы цэнтр
Аспект J з’яўляецца пашырэннем Java, які рэалізуе аспект-арыентаванага праграмавання. Тэхніка, якая modularizes скразных праблем. Прылада не клас, але заклапочанасць, якая складаецца з некалькіх класаў. Канцэрн можа быць, напрыклад, уласцівасці, вобласці інтарэсаў сістэмы і АОП апісвае свае адносіны, і скласці іх разам у праграме. Аспекты інкапсулюе паводзіны, якое тычыцца некалькіх класаў.
Scriptol – 2001 – сцэнарыст арыентаваным мове
Дзяніс Sureau
Апошні, самы магутны з працэдурных моў. Scriptol альбо складзены ў PHP або C++ або родным, надаючы яму вялікую мабільнасць. Гэта як мова для прыкладанняў, сцэнарыяў і зрабіць дынамічных вэб-старонак.
Блокі заяў і кіраўнікі структуры не зачыненыя “канец” або “}”, але, як і ў XML, з формай “/калі”, “/за”, “/а” і так з іх…
Мова новых структур кіравання: “у”, “а давайце”, “сканіраванне”, і г.д… “Складовых, калі” структура палягчае для рэалізацыі правілаў.
Зменныя і литералы аб’ектаў. Асноўны аб’ект (чысло, тэкст, і г.д…) і злучэнні з іх ствараюцца прамыя прысвойванне значэння або спіс аргументаў імя.
Scriptol з’яўляецца прызначанага развівацца і мець, па класах, іншых структур высокага ўзроўню, каб праграмы, якія будуць бліжэйшай чалавечай думкі.
З кастрычніка 2003 года, Scriptol дазваляе выкарыстоўваць XML у якасці ўнутранай структуры дадзеных.
Scala – люты 2004 г.
Політэхнічнай школы Лазаны Federale
Scala з’яўляецца чыста аб’ектна-арыентаваны мова, які рэалізуе некаторыя асаблівасці ў Python сінтаксіс Java. Гэта статычна типизированных і як працэдурных, так і функцыянальна. У цяперашні час яна працуе на JVM і. NET.
E4X – чэрвень 2004 – Ecmascript Для XML (E Four X)
ECMA
E4X не мова, а дадатак да мовы. Такім жа чынам Scriptol выкарыстоўвае XML у якасці структуры дадзеных з атрыбутамі і метадамі, E4X дазваляе прызначыць XML для ECMAScript зменных, і для доступу да элементаў з дапамогай індэксаў або атрыбуты.
JavaFX Script – 2005-2007
Гэта мова, які пабудаваны на Java, уключае ў сябе і пашырае яго сінтаксіс. Ён прызначаны для стварэння багатых графічны інтэрфейс для Web. Ён выкарыстоўваецца з NetBeans.
Langage быў распрацаваны EN 2005 і названы F3 (форма варта за функцыяй), але пасля таго як кампанія была набытая Sun, ён быў перайменаваны JavaFX Script і адкрытым зыходным кодам.
DT {маржа: 16px 0 8px 0; шрыфта: тоўсты;}
Некаторыя тэндэнцыі:
- Мовы сцэнарыяў
- Некалькі сучасных моў сцэнарыяў прапануюць просты, натуральны сінтаксіс: NetRexx, Python, Ruby, Scriptol. Python з’яўляецца найбольш шырока выкарыстоўваным у цяперашні час. Ruby выкарыстоўваецца ў асноўным для бібліятэкі чыгуначным транспартам.
- Інтэрнэт мовах
- Гэтыя мовы дазваляюць ўстаўляць код ў старонкі HTML і, такім чынам, каб аб’яднаць заявы і дадзеныя. PHP, ASP, JavaScript, якія найбольш часта выкарыстоўваюцца з іх.. NET платформа дазволіць любы мову, які будзе ўбудаваны ў HTML.
- Мовы разметкі
- Апошнія тэндэнцыі ў сваю чаргу, XML-дакументаў у выкананыя файлы.
– XML ўкладваецца ў крыніцы Scriptol як структуры дадзеных, які будзе даступны з любога заявы ў крыніцу. Гэта наступны крок пасля аб’ектна-арыентаванага праграмавання.
– XUL з’яўляецца праект Mozilla, што ўкладваецца ў JavaScript XML, каб лёгка вырабляць GUI (адзін з Mozilla, напрыклад). На вэб-старонак з Firefox або лакальна з выканання XULRunner.
– Microsoft выкарыстоўвае XAML для вызначэння графічных інтэрфейсаў, пры працы ў Інтэрнэце крос-браўзэраў плагіна Silverlight або лакальна на NET..
– SVG з’яўляецца фармат ўстаўляць графікі ў вэб-старонак падтрымліваецца усімі сучаснымі браўзэрамі. Гэта можа замяняе XUL (Mozilla толькі) і XAML (. NET патрабуецца) для распрацоўкі карыстальніцкага інтэрфейсу. - Новы мова З++
- C++0 х, будзе, верагодна, C+ 09. Гэтая новая версія будзе ўключаць у сябе як стандартныя шмат знешніх бібліятэк. Яна будзе мець картэжы і зборшчык смецця і пашыраная стандартная бібліятэка з рэгулярным выразам і тэмы.
- SQL
- Дзякуючы вэб-прыкладанняў і дынамічных сайтаў Web 2.0, SQL тэндэнцыі да ўсё больш і больш папулярным, і таму ў цяперашні час часткай сучаснага праграмавання.
Заключэнне- . NET або сумяшчальныя платформы палегчыць паставіць код ўнутры дадзеных, але XML можа быць альтэрнатывы. C # будзе лідэрам мову такой платформы ў пачатку, але яго поспех абумоўлены ў асноўным, што праграмісты выкарыстоўвацца з C++ і Java сінтаксіс.
Развіццё мабільных тэлефонаў з некалькімі аперацыйнымі сістэмамі спрыяць HTML 5 у якасці платформы распрацоўкі і звязаных з імі тэхналогій: SVG, Палатно, CSS. JavaScript становіцца дамінуючым мовай для прыкладанняў на баку кліента сеткі.
Іншыя тэндэнцыі высокага ўзроўню для моў, праграмаванне аспектаў, або схемы з UML і далей паняцця.
Рэсурсы і інфармацыя
- Тэрміны мовы праграмавання.
- Dmoz. Open Directory, частка мовы праграмавання.
- Поўны спіс моў праграмавання, у алфавітным парадку.
- Каментары, дужках. У некалькіх мовах.
- Прывітанне свет! Прыклад мінімальнай праграмы на любой мове.
- Кароткія гісторыі кампутараў.
- Чаму мы павінны модуляў на ўсіх?
Арыгінальная версія студзені 2001 – Апошні раз перагледжаны ў траўні 2011
