Ձեր ուշադրությանն եմ ներկայացնում հոդվածի թարգմանությունը «Լեզվի շերտեր» Ռոբերտ Ս. Մարտինի (Քեռի Բոբ):
Ես իմ ժամանակն անցկացնում եմ 1969 թվականի «Լուսնային վայրէջք» կոչվող հին խաղ խաղալով: Այն գրել է ավագ դպրոցի աշակերտ Ջիմ Սթորերը։ Նա գրել է այն PDP-8-ի վրա FOCAL-ում: Ահա թե ինչ տեսք ունի ծրագիրը.
Եվ ահա FOCAL-ի սկզբնական կոդը.
Ջիմ Սթորերը բավականին տաղանդավոր ավագ դպրոցի աշակերտ էր։ Նայեք այս կոդը: Նա այնտեղ բավականին հետաքրքիր Թեյլորի արտահայտություններ ունի:
Հիմնականում ես երկուական որոնում եմ անում՝ K-ի արժեքը որոշելու համար, որը հետևողականորեն օգտագործելու դեպքում նավը կատարյալ վայրէջք կկատարի: Այսպիսով, ես փոփոխեցի ծրագիրն այնպես, որ այն ընդունի միայն մեկ արժեք, այնուհետև կիրառի այն մի քանի անգամ, մինչև նավը վայրէջք կատարի կամ վթարի ենթարկվի: Երբ ես գրում եմ սա, ես գիտեմ, որ պատասխանը գտնվում է 76.40625-ի և 76.4453125-ի միջև, և ես կփորձեմ 76.4257813: Ես սկսում եմ մտածել, որ պատասխանը գտնելուց առաջ ժամանակս կսպառվի:
Միևնույն ժամանակ մտքովս անցավ, որ ես այս ծրագիրը գործարկեցի էմուլյատորով PDP-8- ը, ով գրել է Lua-ում iPad-ի համար:
Այսպիսով, լավ, եկեք մտածենք այս մասին:
iPad-ն ունի չիպ A8X, երեք միջուկներով, որոնք աշխատում են գիգահերցով կամ ավելի:
Lua-ն գրված է C-ով և հավաքվում է A8X-ով:
Իմ PDP8 էմուլյատորը գրված է Lua-ով, օգտագործելով փաթեթը ԿՈԴԵԱ Երկու կյանք է մնացել բաժնից:
FOCAL-ը գրվել է 1960-ականների վերջին PDP8-ի վրա:
Lunar Lander-ը գրվել է FOCAL-ով:
Այսպիսով, սրանք են A8X, C, Lua, PDP8 և FOCAL: Սրանք հինգ տարբեր լեզուներ են: Հինգ տարբեր մեխանիզմներ, որոնք ասում են մեքենային, թե ինչ անել. նրանք բոլորը դրված են իրար վրա:
Ինչ է դա? Ինչու են այդքան շատ լեզուներ: Փաստորեն, մոռացեք iPad-ի, PDP-8-ի, C-ի, Lua-ի և մնացած ամեն ինչի մասին: Ինչու են այդքան շատ լեզուներ:
##Ինչու՞ կան այդքան շատ լեզուներ։
Մտածիր այդ մասին! Քանի՞ ծրագրավորման լեզու կարող եք նշել: Ահա, թույլ տվեք ձեզ մի փոքր ցուցակ տալ.
ՖՈՐՏՐԱՆ
ԱԼԳՈԼ
ԿՈԲՈԼ
ՍՆՈԲՈԼ
LISP
BCPL
B
C
ՍԻՄՈՒԼԱ
ԿԱՐՃ ԽՈՍԱԿՑՈՒԹՅՈՒՆ
ԷՅՖԵԼ
C ++
JAVA
C#
ՊԻԹՈՆ
ՌՈՒԲԻ
LOGO
ՀԳՄ
ՀԻՄՆԱԿԱՆ
PL/1
AԱՎԱՍԿՐԻՊՏ
GO
DART
LՐԱԳԻՐ
ԻՇԽԱՆՈՒԹՅՈՒՆ
SWIFT
ML
OCCAM
OCAML
ADA
ԷՐԼԱՆԳ
ԷԼԻՔՍԻՐ
ԿԵՆՏՐՈՆԱԿԱՆ
Դուք, իհարկե, կարող եք մտածել ուրիշների մասին, որոնց ես չեմ նշել: Հարցն այն է, թե ինչու են դրանք այդքան շատ: Այս հարցին իսկապես միայն մեկ պատասխան կարող է լինել. Պատճառը, թե ինչու են այդքան շատ համակարգչային լեզուները.
Մենք նրանց չենք սիրում։
Դե, գուցե դա չափազանց ուժեղ հայտարարություն է: Երևի ասեմ.
Մենք Հոլիվուդում էինք։
Մենք Ռեդվուդում էինք։
Մենք հատեցինք օվկիանոսը ոսկե ծածկագրի համար:
Մենք խելքից դուրս էինք
Դա այնքան նուրբ գիծ է:
Սա ստիպում է մեզ փնտրել ոսկե ծածկագիրը:
Իսկ մենք ծերանում ենք։
Լավ, երևի ես պետք է խոսեմ ինքս ինձ համար... Չե՞ս ուզում պարզապես բղավել Նիլ Յանգի վրա, որ դադարի բողոքել և գտնել մի գեղեցիկ աղջկա և ապրել նրա հետ: Չէի՞ք ուզում նրան ասել, որ ոսկու սիրտ փնտրելը ապարդյուն է։ Ասա ինձ, ի՞նչ կանի դրա հետ, եթե գտներ:
Իսկ ի՞նչ կանեինք իդեալական լեզվի հետ, եթե գտնեինք այն:
Մենք ստեղծել ենք PDP-8 և FOCAL էմուլատորներ «Lunar Lander» խաղալու համար, որը գրվել է ավագ դպրոցի աշակերտի կողմից 1969 թվականին:
Ես այդպես եմ մտածում։
Զբաղվել դրա հետ. Դադարեցրեք որոնումը: Կատարյալ լեզու չկա։ Մենք նայեցինք ամենուր. Մենք նայեցինք վերևից և ներքևից: Մենք նայեցինք ներս ու դուրս:
Մենք երկու կողմից նայեցինք լեզուներին։
Ներսից և դրսից
և դեռ անում են, այսպես թե այնպես:
Հիշենք, որ դրանք լեզվական պատրանքներ են։
Մենք իսկապես լեզուներից ոչինչ չենք հասկանում...
… ընդհանրապես.
Այո, այսօր անսովոր օր է։
Բայց, այնուամենայնիվ, բանն այն է.
Մեզ այլ լեզու պետք չէ։
Մենք կարիք չունենք իմանալու տան ճանապարհը:
Այն ամենը, ինչ մենք ուզում ենք, կյանքից այն կողմ անցնելն է:
SQL
Այո, տարօրինակ օր.
Այսպիսով, ահա մեկ միտք. Միգուցե մենք պետք է դադարենք ստեղծել նոր լեզուներ և պարզապես հանգստանալ և ընտրել մեկ կամ երկու, որոնք իսկապես լավն են: Սա շատ կհեշտացնի կյանքը, այնպես չէ՞:
Եվ, եթե ձեզ հետաքրքրում է, 76.43844461-ը ձեզ տալիս է բավականին լավ վայրէջք՝ 2.23 MPH արագությամբ: