Valodu slāņi

Sveiki, Habr!

Iesaku jÅ«su uzmanÄ«bai raksta tulkojumu Ā«Valodu slāņiĀ» autors Roberts C. Martins (Onkulis Bobs).

Valodu slāņi
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:

Valodu slāņi

Un Ŕeit ir FOCAL avota kods:

Valodu slāņi

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ā PDP-8, kuru es uzrakstīju Lua valodā iPad ierīcei.

Tātad, labi, ļaujiet mums par to padomāt.

  • iPad ir mikroshēma A8X, 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 CODEA 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

Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem šŸ”„ Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem | ProHoster