Helló, Habr!
Örömmel kínálom figyelmébe Robert C. Martin (Uncle Bob) «» című cikkének fordítását.

Az időm nagy részét egy 1969-es klasszikus játék, a «Lunar Lander» játszásával töltöm. Ezt Jim Storer, egy középiskolás diák írta, PDP-8-ra FOCAL nyelven. Íme a program:

Íme a FOCAL forráskód:

Jim Storer meglehetősen tehetséges középiskolás diák volt. Nézd meg ezt a kódot. Nagyon érdekes Taylor-kifejezései vannak benne.
Általában bináris keresést végzek azért, hogy meghatározzam a K értékét, amely tökéletesen leteszi a hajót, ha sorozatosan alkalmazom. Ezért módosítottam a programot, hogy csak egy értéket fogadjon el, majd többször alkalmazza azt, amíg a hajó le nem száll vagy fel nem robban. Miközben ezt írom, tudom, hogy a válasz 76.40625 és 76.4453125 között van, és 76.4257813-at próbálom. Kezdem úgy érezni, hogy az időm el fog fogyni, mielőtt megtalálnám a válasz.
Közben eszembe jutott, hogy futtattam ezt a programot egy emulátoron, , amit Luán írtam iPad-hez.
Na, nézzük ezt meg.
- Az iPad A8X chipet tartalmaz, , három maggal, amelyek gigahertzen működnek, vagy valahol ott.
- A Lua C nyelven íródott és A8X-ra fordul.
- Az én PDP8 emulátorom Lua nyelven íródott, a csomag segítségével, amit a Two Lives Left-ből szereztem.
- A FOCAL-t az 1960-as évek végén írták PDP8-ra.
- A Lunar Lander FOCAL-on íródott.
Tehát ott van az A8X, C, Lua, PDP8 és FOCAL. Öt különböző nyelv. Öt különböző mechanizmus, amely azt mondja a gépnek, mit tegyen; mindezt egymásra rakva!
Miért van ez? Miért ilyen sok nyelv? Valójában, felejtsd el az iPadet, a PDP-8-at, a C-t, a Luát és minden mást. Miért van ilyen sok nyelv?
##Почему существует так много языков?
Gondolj erre! Hány programozási nyelvet tudsz felsorolni? Íme, hadd adjak neked egy kis listát:
- 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
Természetesen gondolhatsz másokra is, akiket nem említettem. Ennek a kérdésnek egyetlen válasza lehet. Az oka annak, hogy ennyi számítógépes nyelv létezik:
Nem tetszenek nekünk.
Nos, talán ez túl erős kijelentés. Lehet, hogy azt mondanom kell:
Hollywoodban voltunk.
Redwoodban voltunk.
Átkeltük az óceánt az arany kódért.
Szellemileg leváltunk,
Ez egy éppen határvonal.
Ez arra késztet minket, hogy keressük az arany kódot.De mi öregszünk.
Nos, lehet, hogy magamért kellene beszélnem… Nem akartad csak rákiabálni Neil Youngra, hogy hagyja abba a panaszkodást, találjon egy aranyos lányt, és éljen vele? Igazán nem akartad azt mondani neki, hogy az aranyszív keresése hasztalan volt? Mondd, mit csinálna vele, ha megtalálná?
És mit tennénk a tökéletes nyelvvel, ha megtalálnánk?
PDP-8 és FOCAL emulátorokat hoztunk létre, hogy játszhassunk a 1969-ben középiskolás diák által írt » Lunar Lander«-el!
Ez az, amit gondolok.
Fogadd el. Állj le a kereséssel. Nincs olyan tökéletes nyelv. Mindenhol kerestünk. Fent és lent néztünk. Belülről és kívülről néztünk.
Mindkét oldalról megnéztük a nyelveket.
Belereszkedve és kívülről
és még mindig valahogy így.
Emlékezzünk, hogy ezek nyelvi illúziók.Valójában nem értünk a nyelvekhez…
… egyáltalán.
Igen, ma szokatlan nap van.
De a lényeg az:
Nincs szükségünk másik nyelvre.
Nincs szükségünk arra, hogy tudjuk, merre van az otthon.
Csak arra vágyunk, hogy túllépjünk az életen.
S.Q.L.
Igen, ez egy furcsa nap.
Szóval van egy gondolat. Talán abba kellene hagynunk az új nyelvek létrehozását, és egyszerűen meg kellene nyugodnunk, és választani egyet vagy kettőt, amelyek valóban jók. Ez sokkal egyszerűbbé tenné az életet, nem igaz?
És ha érdekel, a 76.43844461 elég jó megérkezést biztosít 2.23 MPH sebességgel.
Forrás: habr.com
