Hizkuntza-geruzak

Aupa Habr!

Artikuluaren itzulpen bat ekartzen dizut arreta “Hizkuntza-geruzak» Robert C. Martinen (Uncle Bob).

Hizkuntza-geruzak
1969ko Lunar Lander izeneko joko zahar batean jolasten pasatzen dut denbora. Jim Storer batxilergoko ikasleak idatzi zuen. PDP-8 batean idatzi zuen FOCAL-en. Hau da programaren itxura:

Hizkuntza-geruzak

Eta hona hemen FOCAL-en iturburu kodea:

Hizkuntza-geruzak

Jim Storer nahiko talentu handiko batxilergoko ikaslea zen. Begiratu kode honi. Taylor-en esamolde nahiko interesgarriak ditu.

Funtsean, bilaketa bitar bat egiten dut, koherentziaz erabiltzen denean ontzia primeran lehorreratuko duen K-ren balioa zehazteko. Beraz, programa aldatu nuen balio bakarra onar zezan eta gero hainbat aldiz aplikatuko zuen ontzia lehorreratu edo erori arte. Hau idazten dudan bitartean badakit erantzuna 76.40625 eta 76.4453125 artean dagoela eta 76.4257813rekin saiatuko naiz. Erantzuna aurkitu baino lehen denbora agortuko dudala pentsatzen hasia naiz.

Bien bitartean, programa hau emuladore batean exekutatu nuela bururatu zitzaidan PDP-8, iPaderako Luan idatzi zuena.

Beraz, ados, pentsa dezagun honi buruz.

  • iPadek txip bat dauka A8X, hiru nukleo gigahertzian edo martxan jarrita.
  • Lua C-n idatzita dago eta A8X-en konpilatzen da.
  • Nire PDP8 emuladorea Luan idatzita dago paketea erabiliz KODEA Bi Bizitza Ezker sailetik.
  • FOCAL 1960ko hamarkadaren amaieran idatzi zen PDP8 batean.
  • Lunar Lander FOCAL-en idatzi zen.

Beraz, hauek A8X, C, Lua, PDP8 eta FOCAL dira. Bost hizkuntza ezberdin dira hauek. Bost mekanismo ezberdin makinari zer egin behar duen esaten; denak bata bestearen gainean pilatuta daude!

Zer da hau? Zergatik daude hainbeste hizkuntza? Izan ere, ahaztu iPad, PDP-8, C, Lua eta beste guztia. Zergatik daude hainbeste hizkuntza?

##Zergatik daude hainbeste hizkuntza?

Pentsa! Zenbat programazio-lengoaia izenda ditzakezu? Hemen, zerrenda txiki bat emango dizut:

  • FORTRAN
  • ZERBAIT
  • COBOL
  • SNOBOL
  • LISP
  • BCPL
  • B
  • C
  • SIMULA
  • HITZ TXIKIA
  • EIFFEL
  • C ++
  • JAVA
  • C#
  • PITOIA
  • RUBY
  • LOGO
  • LUA
  • BASIC
  • PL/1
  • JAVASCRIPT
  • GO
  • DART
  • PROLOGOA
  • AURRERA
  • SWIFT
  • ML
  • OCCAM
  • OCAML
  • ADA
  • ERLANG
  • ELIXIRA
  • FOKALA

Jakina, aipatu ez ditudan beste batzuk burura ditzakezu. Galdera da, zergatik daude hainbeste? Benetan, galdera honi erantzun bakarra egon daiteke. Ordenagailu-lengoaia asko egotearen arrazoia:

Ez zaizkigu gustatzen.

Beno, agian hori adierazpen sendoegia da. Beharbada esan beharko nuke:

Hollywooden egon ginen.
Redwooden geunden.
Ozeanoa zeharkatu genuen urrezko kodearen bila.
Burutik kanpo geunden
Hain marra fina da.
Horrek urrezko kodea bilatzen gaitu.

Eta zahartzen ari gara.

Ados, agian nire kabuz hitz egin beharko nuke... Ez al diozu Neil Youngri oihu egin nahi kexatzeari uzteko eta neska atsegin bat aurkitzeko eta berarekin bizitzeko? Ez al zenion esan nahi urrezko bihotzaren bilaketa alferrikakoa zela? Esadazu, zer egingo luke harekin aurkituko balu?

Eta zer egingo genuke hizkuntza ideal batekin aurkituko bagenu?

PDP-8 eta FOCAL emuladoreak sortu genituen "Lunar Lander" jolasteko, batxilergoko ikasle batek 1969an idatzia!

Hori uste dudana.

Aurre egin. Bilatzeari utzi. Ez dago hizkuntza perfekturik. Nonahi begiratu genuen. Goitik eta behetik begiratu genuen. Barrura eta kanpora begiratu genuen.

Hizkuntzak bi aldeetatik aztertu ditugu.
Barruan eta barrura
eta oraindik ere, nola edo hala.
Gogora dezagun ilusio linguistikoak direla.

Benetan ez dugu ezer ulertzen hizkuntzei buruz...
… batere.

Bai, gaurkoa ezohiko eguna da.

Baina, hala ere, kontua hau da:

Ez dugu beste hizkuntzarik behar.
Ez dugu etxerako bidea ezagutu behar.
Nahi duguna da bizitzaz harago joatea.
SQL

Bai, egun arraroa.

Beraz, hona pentsamendu bat. Agian hizkuntza berriak sortzeari utzi behar diogu eta lasaitu eta benetan onak diren bat edo bi aukeratu. Horrek bizitza asko erraztuko du, ezta?

Eta, galdetzen bazenuen, 76.43844461-k 2.23 MPH lurreratzea nahiko ona izango duzu.

Iturria: www.habr.com

Gehitu iruzkin berria