Lapisan basa

Héy Habr!

Kuring mawa perhatian anjeun tarjamahan tina artikel "Lapisan Basa» ku Robert C. Martin (Paman Bob).

Lapisan basa
Kuring méakkeun waktu kuring maén kaulinan heubeul disebut Lunar Lander ti 1969. Ditulis ku Jim Storer, murid SMA. Anjeunna nyerat dina PDP-8 dina FOCAL. Ieu mangrupikeun program sapertos kieu:

Lapisan basa

Sareng ieu kode sumber pikeun FOCAL:

Lapisan basa

Jim Storer éta murid SMA anu cukup berbakat. Tingali kana kode ieu. Anjeunna ngagaduhan sababaraha ekspresi Taylor anu pikaresepeun.

Dasarna, kuring ngalakukeun pilarian binér pikeun nangtukeun nilai K anu, lamun dipaké konsistén, bakal darat kapal sampurna. Janten kuring ngarobih program supados ngan ukur nampi hiji nilai teras nerapkeun sababaraha kali dugi ka kapal darat atanapi nabrak. Nalika kuring nyerat ieu kuring terang jawabanna antara 76.40625 sareng 76.4453125 sareng kuring bakal nyobian 76.4257813. Kuring mimiti mikir kuring bakal béak waktu sateuacan kuring mendakan jawaban.

Samentara éta, éta lumangsung ka kuring yén kuring ngajalankeun program ieu dina émulator PDP-8, anu nulis dina Lua pikeun iPad.

Janten, oke, hayu urang pikirkeun ieu.

  • iPad gaduh chip A8X, kalawan tilu cores ngajalankeun di gigahertz atawa leuwih.
  • Lua ditulis dina C sarta compiles kana A8X.
  • Émulator PDP8 kuring ditulis dina Lua nganggo pakét KODEA ti bagian Dua Hirup Kénca.
  • FOCAL ditulis dina ahir taun 1960-an dina PDP8.
  • Lunar Lander ditulis dina FOCAL.

Janten ieu A8X, C, Lua, PDP8 sareng FOCAL. Ieu lima basa anu béda. Lima mékanisme béda ngabejaan mesin naon anu kudu dipigawé; aranjeunna sadayana tumpuk di luhur silih!

Naon éta? Naha aya kitu loba basa? Kanyataanna, poho ngeunaan iPad, PDP-8, C, Lua jeung sagalana sejenna. Naha aya kitu loba basa?

##Naha aya seueur basa?

Pikirkeun deui! Sabaraha basa pamrograman anjeun tiasa nami? Di dieu, hayu atuh masihan anjeun daptar saeutik:

  • FORTRAN
  • HENTEU
  • COBOL
  • SNOBOL
  • LISP
  • BCPL
  • B
  • C
  • SIMULA
  • SALLTALK
  • EIFFEL
  • C ++
  • Java
  • C#
  • PYTHON
  • RUBY
  • logo
  • BULAN
  • dasar
  • PL/1
  • JAVASCRIPT
  • GO
  • DART
  • PROLOG
  • MAKSA
  • Swift
  • ML
  • OCCAM
  • OCAML
  • Ada
  • ERLANG
  • ELIXIR
  • POKOK

Anjeun tangtosna tiasa mikirkeun batur anu kuring henteu nyarios. Patarosan na, naha aya kitu loba di antarana? Sabenerna ngan ukur hiji jawaban kana patarosan ieu. Alesan naha aya seueur basa komputer:

Kami henteu resep aranjeunna.

Nya, meureun éta pernyataan anu kuat teuing. Panginten kuring kedah nyarios:

Kami di Hollywood.
Kami di Redwood.
Urang meuntas sagara pikeun kode emas.
Kami kaluar tina pikiran urang
Éta garis anu saé.
Hal ieu ngajadikeun urang néangan kodeu emas.

Sarta kami lalaki heubeul.

Oké, meureun kuring kudu nyarita keur sorangan ... Naha anjeun teu ngan hayang ngagorowok di Neil Young eureun complaining sarta manggihan sababaraha gadis nice jeung hirup jeung manehna? Naha anjeun henteu hoyong nyarios yén milarian jantung emas éta sia-sia? Béjakeun ka kuring, naon anu anjeunna laksanakeun upami anjeunna mendakan éta?

Sareng naon anu bakal urang pigawé kalayan basa anu idéal upami urang mendakanana?

Kami nyiptakeun émulator PDP-8 sareng FOCAL pikeun maénkeun "Lunar Lander", anu ditulis ku murid SMA di 1969!

Kitu saur kuring.

Satuju jeung ieu. Eureun neangan. Teu aya basa anu sampurna. Urang nempo kamana-mana. Urang nempo ti luhur jeung handap. Urang nempo asup jeung kaluar.

Urang nempo basa ti dua sisi.
Jero jeung kaluar
sarta masih ngalakukeun, salah sahiji atawa cara séjén.
Hayu urang émut yén ieu mangrupikeun ilusi linguistik.

Urang saleresna teu ngartos nanaon tentang bahasa...
… pisan.

Leres, dinten ieu mangrupikeun dinten anu teu biasa.

Tapi sanajan kitu, titik éta:

Urang teu butuh basa sejen.
Urang henteu kedah terang jalan ka bumi.
Sadaya anu urang hoyongkeun nyaéta ngalangkungan kahirupan.
SQL

Sumuhun, dinten aneh.

Ku kituna ieu hiji pamikiran. Panginten urang kedah lirén nyiptakeun basa énggal sareng tenang sareng pilih hiji atanapi dua anu saé pisan. Ieu bakal ngagampangkeun kahirupan, sanés?

Na, bisi anjeun wondering, 76.43844461 meunang anjeun badarat 2.23 MPH geulis alus.

sumber: www.habr.com

Tambahkeun komentar