Érdekes

Lisp Átok

Eredetileg egy http://winestockwebdesign.com/Essays/Lisp_Curse.html.

Rudolf Winestock

Ez az esszé az újabb kísérlet arra, hogy összeegyeztetni a hatalom a Lisp programozási nyelv a képtelenség, a Lisp közösségi reprodukálni a pre-AI Téli eredményeket. Kétségtelen, hogy Lisp egy befolyásos forrás ötletek alatt is az ideje a visszavonulásnak. Ez a tény, valamint a csillogás, a különböző Lisp Gép architektúrák, a jelenlegi Lisp reneszánsz után több mint egy évtizeddel a pusztában bizonyítani, hogy Lisp partizánok kell valamilyen indok az érzése. Ennek ellenére nem tudták lefordítani a hatalom a Lisp egy mozgalom ellenállhatatlan lendülete.

Ebben a tanulmányban, azt állítják, hogy a Lisp kifejező ereje valójában, mert annak hiánya, a lendület.


A hatalom a Lisp saját maga ellensége.

Itt egy gondolatkísérlet, hogy bizonyítani: két programozási nyelvek, sem az, ami vagy objektum-orientált. Az ön feladata, ha úgy dönt, hogy elfogadja, hogy azok objektum-orientált, tartja őket, visszafelé-kompatibilis az eredeti nyelven, modulo néhány szélén esetekben. Behelyezése bármely két programozási nyelvek be ez a gondolat kísérlet megmutatja, hogy ez a könnyebb, a kis nyelvek, mint a többiek. Ez a lényege az a gondolat kísérletet. Itt egy triviális példa: Intercal meg Pascal.

Most, hogy ez a gondolat kísérlet érdekes: Képzeld el, hozzátéve, objektum orientáltság, hogy a C, illetve a Rendszer programozási nyelvek. Döntéshozatali Rendszer objektum-orientált másodéves házi feladat. Másrészt, hozzátéve, objektum orientáltság, hogy C előírja, hogy a programozási szelet Bjarne Stroustrup.

Milyen következményekkel jár ez a divergencia a szükséges tehetség, az erőfeszítés, mert A Lisp Átok:

Lisp olyan erős, hogy ezek a problémák, technikai kérdések, más programozási nyelvek a társadalmi kérdések, a Lisp.

_____________

Vegyük azt az esetet, a Rendszer újra. Mivel a döntéshozatali Rendszer objektum-orientált olyan könnyű, sok Rendszer, a hackerek volna. Inkább az a lényeg, sok egyedi Rendszer, a hackerek volna. Az 1990-es években, ez vezetett a valóságos raktár készlet lista objektum-orientált csomagok a nyelvet. A Paradoxon a Választás, egyedül, garantált, hogy egyikük sem lesz szabványos. Most, hogy egy Rendszer implementáció saját objektum orientáltság létesítmények, ez nem is olyan rossz. Az a tény azonban, hogy sok ilyen csomagok voltak, a munka, a magányos egyének problémákhoz vezetett, amely Olin Borzongás írt dokumentálja a Rendszer Shell, scsh.

Programok által írt egyes hackerek jellemzően követik a semmiből-egy-viszket modell. Ezek a programok fogja megoldani a problémát, hogy a hacker, magát, hogy nem feltétlenül kezelésével kapcsolatos részeinek a probléma, ami a program több hasznos másoknak. Továbbá, a program biztos, hogy a munka a magányos hacker saját beállítás, de előfordulhat, hogy nem vihető át más Rendszer implementáció, vagy, hogy ugyanaz a Program végrehajtása a más platformokon. A dokumentáció lehet hiányos. Hogy lényegében egy projekt a hacker bőséges szabad időt, a program alkalmas arra, hogy szenvedni kell valós felelősség zavarni a hacker. Mint Olin Borzongás megjegyezte, ez azt jelenti, hogy ezek az egyszemélyes projektek általában megoldani nyolcvan százaléka a probléma.

Dr. Mark Tarver az esszé, Bipoláris Lisp Programozó, van egy találó leírása ez a jelenség. Azt írja, ezek a magányos farkas Lisp, hogy a támadók vagy a

…képtelenség, hogy fejezze be megfelelően. A kifejezés, hogy ‘dobd-el design’ teljesen arról, hogy a BBM, majd jön a Lisp közösség. Lisp lehetővé teszi, hogy csak chuck dolgokat le olyan könnyen, könnyű -, hogy ez a természetes. Láttam, hogy ez a 10 évvel ezelőtt, amikor keresek egy GUI-t, hogy a Lisp. Nem probléma, volt 9 különböző kínálatát. A baj csak az volt, hogy sem a 9 megfelelően dokumentált, de egyik sem volt hiba ingyenes. Alapvetően minden ember hajtotta végre a saját megoldás, ami bejött neki így volt jó. Ez egy BBM hozzáállás; nekem működik, nem értem. Ugyancsak a termék nem igénylő, vagy arról, hogy bárki más segítségére, hogy tegyen valamit.

Még egyszer fontolja meg a C programozási nyelv, ez a gondolat kísérlet. Miatt a nehézség, hogy a C objektum-orientált, csak két komoly kísérletek a probléma volna tapadás: C++ , Objective-C objective-C legnépszerűbb, a Macintosh, míg a C++ szabályok mindenhol máshol. Ez azt jelenti, hogy egy adott platform, az a kérdés, melyik objektum-orientált kiterjesztés a C használni már válaszolt véglegesen. Ez azt jelenti, hogy az objektum-orientált létesítmények azok a nyelvek is dokumentálták, hogy integrált fejlesztői környezet tisztában vannak azzal, hogy a kód könyvtárak kompatibilis őket, stb.

Dr. Mark Tarver dolgozatát a bipoláris Lispers teszi a lényeg:

Most ezzel szemben a C/C++ megközelítés egészen más. Olyan rohadt nehéz bármit is tenni csipesszel, ragasztó, hogy bármit is jelentős, amit csinál, igazi teljesítmény. Szeretné, hogy a dokumentum. Is te vagy a felelős, hogy szükség van a segítségére C projekt jelentős méretű; szóval, te vagy a felelős, hogy a szociális munkát másokkal. Kell, hogy valahol.

Minden, a szempontból a munkáltató, vonzó. Tíz ember, aki közli, dokumentum dolgokat rendesen dolgozni, együtt jobb, mint egy BBM hacker Lisp, aki csak a helyébe egy másik BBM (ha találok) a nem valószínűtlen esemény, hogy ő lesz végre egy kis időt, menj le, anélkül, hogy rebootable.

Ezért azok, akik már tudom, C ne kérdezd, hogy “Mi objektum rendszer kéne tanulni?” Ehelyett használja a C++ vagy objective-C attól függően, hogy mi a kollégák segítségével, majd lépni a “Hogyan használjuk az objektum-orientált szolgáltatás X?” Válasz: “Jó ez, az talál.”

_____________

Igazi Hackerek, persze, már régóta ismert, hogy az objektum-orientált programozás nem csodaszer, hogy a partizánok azt állította. Igazi Hackerek költözött a fejlettebb fogalmak, mint megváltoztathatatlan adatszerkezetek, típus inferencing, lusta kiértékelés, monads, nyilak, mintaillesztés, kényszer-alapú programozás, stb. Igazi Hackerek is ismert, egy darabig, hogy C vagy C++ vagy nem megfelelő a legtöbb program, hogy nem kell önkényes kicsit-firkálgatok. Mindazonáltal, a Lisp Átok még mindig tart.

Néhány önelégült Lisp-szerelmesek megkérdezett a jelenlegi termés a tudományos nyelvek (Haskell, Ocaml, satöbbi), valamint a talált rájuk akartam, mondván, hogy bármely jellemzője az övék, vagy már jelen Lisp vagy könnyen végrehajtott — javítani — Lisp makrók. Ők valószínűleg igaza van.

Kár, hogy a Lisp hackerek.

_____________

Dr. Mark Tarver — kétszer is-jegyzett, fent írt egy dialektus, Lisp úgynevezett Qi. Kevesebb, mint tízezer sornyi makrók futtatása tetején Clisp. Végrehajtásakor a legtöbb egyedi jellemzői, Haskell, OCaml. Bizonyos tekintetben Qi felülmúlja őket. Például, Qi típus inferencing motor Turing-teljes. Egy olyan világban, ahol a csapatok a tehetséges tudósok voltak kellett írni Haskell, egy ember, Dr. Tarver írta Qi egyedül.

Elolvasom újra, majd összegezzük.

_____________

Gyakorlat az olvasó: Képzeld el, hogy egy erős rivalizálás alakul ki közötti Haskell, Common Lisp. Mi történik ezután?

Válasz: A Lisp Átok visszaüt. Minden második vagy harmadik súlyos Beszédhibás hacker fognak hullani a saját végrehajtása lusta kiértékelés, funkcionális tisztaság, nyilak, mintaillesztés, típus inferencing, meg a többi. A legtöbb ilyen projekt lesz magányos farkas műveletek. Így lesz nyolcvan százaléka a funkciók, hogy a legtöbb ember kell (más nyolcvan százaléka minden esetben). Ők is rosszul dokumentált. Ők nem vihető át Lisp rendszerek. Néhány nagy ígéret előtt, hogy elhagyott miközben a projekt fenntartó megy ki kell fizetni a számláit. Több fogja verni Haskell mentén ez vagy az a dimenzió (újra, egy másik minden esetben), de az elfogadás lesz akadályozza a láng háborúk a comp.lang.lisp Usenet csoportba.

Végjáték: Egy véletlenszerű régi Lisp hacker gyűjteménye makrók ad hozzá egy nem dokumentált, unportable, a bogaras végrehajtása 80% – a Haskell, mert Lisp erősebb, mint Haskell.

_____________

A sztori tanulsága az, hogy a másodlagos, valamint harmadlagos hatások számít. A technológia nem csak az befolyásolja, hogy mit tehetünk a tekintetben, hogy a műszaki problémák, ez is befolyásolja a szociális viselkedés. Ez a társadalmi jelenség hurok vissza befolyásolja az eredeti technológiai kérdéseket vizsgált.

Lisp egy fájdalmasan ékesszóló mintával ezt a leckét. Lisp olyan erős, hogy ösztönzi az egyéni függetlenség a lényeg, hogy hidegvérűség. Ez a függetlenség készített elképesztően jó az innováció, mint a Lisp Gép nap. Ugyanez a függetlenség is akadályozza erőfeszítéseket, hogy feltámassza a “Lisp le” rendszerek a régi; nem “Lisp OS” projekt gyűlt össze a kritikus tömeget bukása óta Symbolics, LMI.

Az egyik eredménye, hogy ezek a másodlagos, illetve harmadlagos hatások, még akkor is, ha Lisp a legkifejezőbb nyelvet valaha olyan, hogy elméletileg lehetetlen, hogy egy több kifejező nyelv, Lispers fog tanulni a más programozási nyelvek. A Smalltalk srácok tanított mindenki — beleértve a Lisp hackerek — egy-két dolgot az objektum orientált programozás. Clean programozási nyelv, valamint a Mozart/Oz kombó lehet, hogy egy pár meglepetés a saját.

_____________

Lisp Átok nem mond ellent a maxim Stanislav Datskovskiy: a Munkáltatók sokkal inkább, hogy a munkavállalók lenne helyettesíthető, ahelyett, hogy maximálisan eredményes. Is igaz. Nagy nehézségek árán tudja valaki, plumb a venality a vezetői osztály. Azonban az utolsó sorok az esszé vagy problematikus. Azaz:

A “szabad szoftver” a világ, türelmetlenül ellenzi ipari dogmák, a retorika, de nem a gyakorlatban. Nincs koncepció elkerülték a kocka farm pokol valaha szerzett igazi vontatási között az amatőr tömegek.

Egy lábjegyzet, kínál, Linux, mint egy példa erre hajlandó folytatni a különböző ötletek. Az biztos, hogy van egy pont, amikor operációs rendszerek (a legfelső hozzászólás, különösen, felháborítóan tompa). Nincs egy pont, amikor a programozási nyelvek. A Python, Ruby befolyásolta Lisp. Sok a rajongók express tiszteletben Lisp, valamint a kamat kiterjesztett a Lisp reneszánsz. Néhány igazságot, a JavaScript már le, mint “Rendszer, a” C “ruházat” annak ellenére származó azok a kocka farm pokol.

Mégis, annak ellenére, hogy ez a befolyás, mind a vállalati nyílt forráskódú világ, Lisp még mindig csak töredéke a fejlesztő elme megosztani, amely a jelenlegi termés fejlett script nyelvek vonzottak. A zárt, a céltudatosság, az MBA ez nem lehet az egyetlen magyarázat. A Lisp Átok több magyarázó ereje.

_____________

A szabad fejlesztői környezet rendelkezésre Lisp további szemléltetni, hogy a Lisp Átok.

Ez kínos, hogy pont ez ki, de meg kell tenni. Felejtsd el a Lisp Gép; még mindig nem tudjuk, fejlesztési rendszerek, amelyek megfelelnek az átlagos Smalltalk hacker természetesek (“mindig úgy éreztem, hogy Selypít a felsőbbrendű nyelv, Smalltalk a kiváló környezet.” – Ramon Leon). Hacsak nem fizet több ezer dollárt, Lisp hackerek továbbra is ragaszkodik az Emacs.

James Gosling, a szerző az első Emacs futott Unix, helyesen rámutatott, hogy az Emacs-nak alapvetően nem változott a több mint húsz éve. Ez azért van, mert az Emacs fenntartói még rétegződés kód tetején egy design, amely értékben vissza, ha Emacs egy phd-hallgató projekt az MIT AI Lab, azaz, ha az Emacs fejlesztési volt még, hogy közvetve által finanszírozott nemzeti adósság. Egy Slashdotter kifogást emelhet, hogy az Emacs már elég képes, bármire képes, hogy más fejlesztési környezet, csak jobb. Azok, akik használják Lisp Gépek mást mond.

Miért nem a Lisp hackerek fel a Smalltalk srácok a megfelelő helyre? Miért nem csinálnak egy ingyenes fejlesztési rendszer, amely hívásokat bánja, az elveszett dicsősége, a LispM, még akkor is, ha nem tudnak szaporodni egy másik LispM?

Az ok, amiért ez nem történik meg, mert a Lisp Átok. Nagyszámú Lisp hackerek volna, hogy együttműködnek egymással. Nézd meg jobban: Nagy számban olyan emberek, akik vált Lisp hackerek volna, hogy együttműködnek egymással. Ők volna, hogy együttműködnek egymással a tervezés, ami nem volt már adott a kezdetektől fogva. Pedig nem lenne semmilyen külső fegyelem, mint például egy kockázati tőkebefektető vagy egyéb vállalati mester, hogy távol tartsd őket a pályán.

Minden projekt súrlódás a tagok között, nézeteltérések, konfliktusok stílus filozófiája. Ezek a társadalmi problémák ellen-úgy viselkedett, az a tény, hogy nincs nagy projekt megvalósítható egyébként. “Mindannyian együtt, vagy mi fog lógni külön-külön.” De kifejező Lisp teszi ezt a kiegyenlítő erő sokkal gyengébb; mindig el lehet kezdeni egy saját projekt. Így, egyes hackerek úgy dönt, hogy a baj nem éri meg. Szóval vagy kilép a projekt, vagy nem csatlakozik a projekt elején. Ez a Lisp Átok.

Akár hack Emacs, hogy valamit, ami elég jó. Így a Lisp Átok az ally, a minél Rosszabb, annál Jobb.

_____________

A kifejező ereje Lisp van hátránya. Nincs olyan, hogy ingyen ebéd.

Menj a honlapon http://www.forallworld.com.

Leave a Reply