Sveiki, Habr!
Iesaku jūsu uzmanībai raksta tulkojumu «» autors Roberts C. Martins (Onkulis Bobs).

Es pavadu laiku, spÄlÄjot veco spÄli Ā«Lunar LanderĀ» no 1969. gada. To uzrakstÄ«ja Džims Stors, vidusskolas skolÄns. ViÅÅ” to uzrakstÄ«ja uz PDP-8 programmÄÅ”anas valodÄ FOCAL. LÅ«k, kÄ izskatÄs programma:

Un Ŕeit ir FOCAL avota kods:

Džims Stors bija diezgan talantÄ«gs vidusskolas skolÄns. Apskatiet Å”o kodu. TajÄ ir diezgan interesanti Teilora izteiksmes.
TÄtad, es veicu binÄro meklÄÅ”anu, lai noteiktu K vÄrtÄ«bu, kas secÄ«gi izmantota ideÄli noliks kuÄ£i. TÄdÄļ es mainÄ«ju programmu, lai tÄ pieÅemtu tikai vienu vÄrtÄ«bu, un pÄc tam to pielietotu vairÄkas reizes, lÄ«dz kuÄ£is nosÄžas vai sabojÄjas. KamÄr es to rakstu, es zinu, ka atbilde ir starp 76.40625 un 76.4453125, un es mÄÄ£inÄÅ”u 76.4257813. Es sÄku domÄt, ka man vairs nebÅ«s laika, pirms es atradīŔu atbildi.
TajÄ paÅ”Ä laikÄ es domÄju, ka es palaidu Å”o programmu emulatorÄ , kuru es uzrakstÄ«ju Lua valodÄ iPad ierÄ«cei.
TÄtad, labi, ļaujiet mums par to padomÄt.
- iPad ir mikroshÄma , ar trim kodoliem, kas darbojas pie gigahercu frekvences vai apmÄram.
- Lua ir uzrakstÄ«ta C valodÄ un kompilÄta uz A8X.
- Mans PDP8 emulatora ir rakstÄ«ts Lua valodÄ, izmantojot pakotni no divÄm dzÄ«vajÄm pÄrliekÄm.
- FOCAL tika uzrakstÄ«ts 1960. gadu beigÄs uz PDP8.
- Lunar Lander tika uzrakstīts uz FOCAL.
TÄtad, tas ir A8X, C, Lua, PDP8 un FOCAL. Pieci dažÄdi valodas. Pieci dažÄdi mehÄnismi, kas norÄda maŔīnai, ko darÄ«t; visi tie ir salikti viens virs otra!
Kas tas ir? KÄpÄc tik daudz valodu? PatiesÄ«bÄ, aizmirstiet par iPad, PDP-8, C, Lua un visu pÄrÄjo. KÄpÄc tik daudz valodu?
##ŠŠ¾ŃŠµŠ¼Ń ŃŃŃŠµŃŃŠ²ŃŠµŃ ŃŠ°Šŗ много ŃŠ·Ńков?
PadomÄjiet par to! Cik programmÄÅ”anas valodu jÅ«s varat nosaukt? LÅ«k, ļaujiet man dot jums nelielu sarakstu:
- FORTRAN
- ALGOL
- COBOL
- SNOBOL
- LISP
- BCPL
- B
- C
- SIMULA
- SMALLTALK
- EIFFEL
- C++
- JAVA
- C#
- PYTHON
- RUBY
- LOGO
- LUA
- BASIC
- PL/1
- JAVASCRIPT
- GO
- DART
- PROLOG
- FORTH
- SWIFT
- ML
- OCCAM
- OCAML
- ADA
- ERLANG
- ELIXIR
- FOCAL
JÅ«s, protams, varat domÄt par citiem, kurus es nenosaucu. JautÄjums ir, kÄpÄc to ir tik daudz? Å im jautÄjumam patieÅ”Äm var bÅ«t tikai viens atbildes veids. Iemesls, kÄpÄc ir tik daudz datoru valodu:
Mums tÄs nepatÄ«k.
Nu, varbÅ«t tas ir pÄrÄk spÄcÄ«gs apgalvojums. VarbÅ«t man bÅ«tu jÄsaka:
MÄs bijÄm HolivudÄ.
MÄs bijÄm RedvudÄ.
MÄs ŔķÄrsojÄm okeÄnu, lai iegÅ«tu zeltu koda.
MÄs bijÄm savÄ prÄtÄ,
Tas ir tik plÄns lÄ«nija.
Tas liek mums meklÄt zelta kodu.MÄs novecojam.
Labi, varbÅ«t man vajadzÄtu runÄt tikai par sevi... Vai tieÅ”Äm tu negribÄji vienkÄrÅ”i izsist Nilu Jangu, lai viÅÅ” pÄrtrauktu sÅ«dzÄties, atrastu kÄdu jauku meiteni un dzÄ«votu ar viÅu? Vai jÅ«s negribÄjÄt teikt viÅam, ka meklÄjumi pÄc zelta sirds bija bezjÄdzÄ«gi? Pasakiet, ko viÅÅ” ar to darÄ«tu, ja viÅÅ” to atrastu?
Un ko mÄs darÄ«tu ar ideÄlo valodu, ja mÄs to atrastu?
MÄs izveidojÄm PDP-8 un FOCAL emulatorus, lai spÄlÄtu "Lunar Lander", ko uzrakstÄ«jis vidusskolnieks 1969. gadÄ!
LÅ«k, ko es domÄju.
Samierinieties ar to. PÄrtrauciet meklÄjumus. Nav nekÄdas ideÄlas valodas. MÄs meklÄjÄm visur. MÄs skatÄ«jÄmies augÅ”up un lejup. MÄs skatÄ«jÄmies iekÅ”Ä un ÄrÄ.
MÄs aplÅ«kojÄm valodas no abÄm pusÄm.
IekÅ”Ä un ÄrÄ
un vÄl joprojÄm Å”Ädi vai tÄ.
Atceramies, ka tas ir valodu ilÅ«zijas.MÄs patiesÄ«bÄ nesaprotam neko par valodÄm...
... pavisam.
JÄ, Å”odien ir neparasta diena.
Bet, tomÄr, bÅ«tÄ«ba ir tÄda:
Mums nav nepiecieŔama cita valoda.
Mums nav nepiecieÅ”ams zinÄt ceļu mÄjÄs.
Viss, ko mÄs vÄlamies, ir izkļūt pÄri dzÄ«vei.
S.Q.L.
JÄ, dÄ«vaina diena.
TÄtad, ir viena doma. VarbÅ«t mums vajadzÄtu pÄrtraukt jaunu valodu radīŔanu un vienkÄrÅ”i nomierinÄties un izvÄlÄties vienu vai divas, kas patieÅ”Äm ir labas. Tas padarÄ«s dzÄ«vi daudz vieglÄku, vai ne?
Un, ja jÅ«s interesÄ, 76.43844461 dod jums diezgan labu nosÄÅ”anos pie 2.23 MPH.
Avots: habr.com
