Na co všechno je dobrý LISP?

Viky

Re: Na co všechno je dobrý LISP?
« Odpověď #60 kdy: 29. 03. 2011, 14:07:33 »
To je jako by ses na srazu diskotékových DJs vyptával, co si myslej o Bachovi, jestli má smysl se jím zabývat a jestli má smysl učit se hrát na piáno. Asi takovou relevanci má diskuse o LISPu tady

Další zajímavá poetická parela do sbírky :) Skoro se mi zdá, že LISP člověka naučí hlavně tohle :)

Smím se zeptat, proč diskuse o LISPu tady nemá smysl? Je tu zjevně dost lidí, kteří o programovacích jazycích něco ví, s několika mají vlastní zkušenosti, včetně nějakých neprocedurálních, a pravděpodobně mají za sebou nějakou tu informatiku na VŠ.

V jakém už jiném prostředí by diskuse o LISPu měla smysl? V tom citovaném kroužku asociálů?

:)
Je informatika a "informatika" a VŠ a "VŠ" - dneska se "informatika" učí na každé "VŠ", jinak by se jim tam nikdo nehlásil, protože přece informatika dneska frčí.
Asi jo - asi nejlépe v tom kroužku asociálů. Nejlepší je se samozřejmě o tom pobavit a nejlépe názorně s někým, kdo se tím zabývá. Ale takových zas tak moc není. Druhou možností je vzít si nějakou učebnici - třeba Practical Common Lisp - a dokopat se k tomu, že si to člověk sám vyzkouší a prostuduje si řešení jiných. A že to ze začátku třeba nemusí být ono - když se lidi, jako je např. Alan Kay vyjadřují o LISPu jako o jediném programovacím jazyku, který by stálo za to zachovat, pokud by všechny ostatní měly zaniknout, pak to rozumného člověka naťukne, že to asi opravdu stojí za prozkoumání, když už nic jiného.
Ostatně pochybuji, že existuje člověk, který by po prvním pohledu na LISP zajásal, co to je za geniální věc. Když už jsme u těch poetických přirovnání - LISP prostě není ten typ ženské, co na první schůzku přijde jen v kalhotkách a hned roztáhne nohy. Ale až k tomu konečně dojde, tak to zase stojí za to. ;D


Re: Na co všechno je dobrý LISP?
« Odpověď #61 kdy: 29. 03. 2011, 14:20:13 »
Je informatika a "informatika" a VŠ a "VŠ" - dneska se "informatika" učí na každé "VŠ", jinak by se jim tam nikdo nehlásil, protože přece informatika dneska frčí.

Aha, takže teď se navíc budeme ještě kádrovat. Ach jo. No tak třeba já mám MU Brno - je to dostatečná kvalifikace pro to, aby mi mohla být sdělena aspoň ta nejtriviálnější zásvětná tajemství tohodle hermetického kroužku?

Nejlepší je se samozřejmě o tom pobavit a nejlépe názorně s někým, kdo se tím zabývá.

Sorry, ale tady platí to, co jsem psal výš - IMHO jestli nkdo neumí srozumitelně vysvětlit alespoň základní věci v pár větách, tak to pravděpodobně ani nestojí za zkoumání...

když se lidi, jako je např. Alan Kay vyjadřují o LISPu jako o [...]

Než se mlátit po hlavě citáty slavných, tak to už asi raději ta poetická přirovnání...

JS

Re: Na co všechno je dobrý LISP?
« Odpověď #62 kdy: 29. 03. 2011, 14:48:00 »
Já jsem našel něco jiného: http://goo.gl/DDBnR  (když si tam přidáš "C#", LISP úplně zmizí ze scény...)

Zvlastni. Pridal jsem tam Java, a dostal jsem take klesajici trend. I kdyz jestli to nebude tim, ze v praci kolikrat hledam reseni pro C# na Google, kdyz programuji v Lispu, tak ani necekam, ze neco najdu.

Konkrétních argumentů jako šafránu, zato emotivních srovnání typu "jazyk pro programátory a ne pro cvičené opice", "reálná a komplexní čísla", "nářadí" habaděj...

Jako muzeme diskutovat konkretni aspekty. Me se treba hodne v CL libi system restartu (i kdyz jsem ho zatim nepouzil), a to je takova vec, ktera se bezne nezminuje. Co by te zajimalo? Vysvetleni konkretnich vyhod je zabavnou formou podane na http://landoflisp.com/.

Re: Na co všechno je dobrý LISP?
« Odpověď #63 kdy: 29. 03. 2011, 15:01:49 »
Jako muzeme diskutovat konkretni aspekty. Me se treba hodne v CL libi system restartu (i kdyz jsem ho zatim nepouzil), a to je takova vec, ktera se bezne nezminuje. Co by te zajimalo? Vysvetleni konkretnich vyhod je zabavnou formou podane na http://landoflisp.com/.

No tak zase takovouhle formou to nemusím mít :)

Co by mě konkrétně zajímalo? Ta nejzákladnější otázka: proč bych měl Lisp použít? To mi to opravdu někdo neumí říct v deseti větách a přidat k tomu relevantní důkazy?

Přijde za mnou člověk a řekne "Naprogramuj mi aplikaci na XY". Měl bych použít Lisp? Pro která XY? Proč? Bude ten program rychlejší, stabilnější, uživatelsky příjemnější, budu ho mít rychleji napsaný, bude snadnější jeho nasazení na běžném OS, bude se lehčeji udržovat, bude kód srozumitelnější pro někoho, kdo přijde po mě, bude kód znovupoužitelnější?

Chápej, mně taky přijde pěkný, že program a data jsou totéž, takže si můžu nakrásně vzít funkci, smazat každou druhou operaci a poté tu takhle upravenou funkci spustit, ale ať přemýšlím, jak přemýšlím, ještě jsem to nikdy nepotřeboval (a to jsem už programoval hodně ulítlý věci, včetně třeba migrace spouštěného kódu po síti na jiný stroj apod.) - natož, aby to ocenil nějaký potencionální zákazník.

JS

Re: Na co všechno je dobrý LISP?
« Odpověď #64 kdy: 29. 03. 2011, 15:38:06 »
No tak zase takovouhle formou to nemusím mít :)

Kdybys kliknul na odkazy v tom komiksu, tak by ses mozna i neco dozvedel. Nicmene..

Co by mě konkrétně zajímalo? Ta nejzákladnější otázka: proč bych měl Lisp použít? To mi to opravdu někdo neumí říct v deseti větách a přidat k tomu relevantní důkazy?

Ja myslim, ze Lisp se da pouzit opravdu na cokoliv, i kdyz jine programovaci jazyky mohou byt pro nektere veci vhodnejsi. Zalezi na tom, co jak umis. Nevim, co jsou "relevantni dukazy". Kazdy ti bude tvrdit, ze prave ta jeho volba byla pro jeho projekt ta dobra.

Ptas se jako programator, nebo kapitalista? Programator by se mel spis ptat, proc by se mel Lisp trochu naucit. Z mnoha duvodu ano. Kapitalista by se mel spis ptat, zda ma programatora v Lispu. Pokud ano, at to necha na nem. Pokud ne, na odpovedi nezalezi.


Re: Na co všechno je dobrý LISP?
« Odpověď #65 kdy: 29. 03. 2011, 15:52:23 »
Kdybys kliknul na odkazy v tom komiksu, tak by ses mozna i neco dozvedel. Nicmene..

Ptám se naprosto srozumitelně: umíš výhody Lispu uvést v deseti větách a přidat relevantní důkazy? Nechci na nic klikat, nechci se Lisp učit, nechci poslouchat citáty slavných. Je to tak složité?

Nevim, co jsou "relevantni dukazy".

No tak to je pak opravdu těžké... Co třeba odkaz na šéfa nějaké firmy, jak říká, že po přechodu od C# na Lisp zvýšili produktivitu práce na dvojnásobek? Co třeba odkaz na nějaký projekt, který v Lispu realizoval za pár dní něco, co se jiná srovnatelně velká skupina lidí snažila dělat měsíce? Co třeba odkaz na akademický projekt, v rámci kterého se (zjevně díky Lispu) podařilo udělat něco, do čeho se do té doby nikomu nechtělo (protože neznal hermetické tajemství Lispu)?

Ptas se jako programator, nebo kapitalista? Programator by se mel spis ptat, proc by se mel Lisp trochu naucit.

Moc nechápu, jaký v tom je rozdíl, když oba mají (resp. měli by mít) ten samý cíl: pracovat rychle, efektivně, kvalitně a komfortně, ale ok, ptám se tedy raději jako programátor: zkusil jsem c, c++, objective C, javu, python, boo, prolog, haskell, maličko tuším, co je to lambda kalkul a transparentní intenzionální logika. Co tak zásadně nového mě naučí lisp (především oproti prologu, haskellu a zmíněným formalismům)?

JS

Re: Na co všechno je dobrý LISP?
« Odpověď #66 kdy: 29. 03. 2011, 16:22:04 »
Co tak zásadně nového mě naučí lisp (především oproti prologu, haskellu a zmíněným formalismům)?

Makra.

Re: Na co všechno je dobrý LISP?
« Odpověď #67 kdy: 29. 03. 2011, 16:27:12 »
Makra.

A co je na nich tak zásadně nového?

JS

Re: Na co všechno je dobrý LISP?
« Odpověď #68 kdy: 29. 03. 2011, 17:08:00 »
Makra.

A co je na nich tak zásadně nového?

Je to dalsi zpusob abstrakce, tj. zpusob jak zkratit program. Vlastne je to spis meta-abstrakce - umoznuji tvorbu dalsich abstrakci a jejich implementaci (a DSL atd.). Treba cely CLOS lze napsat pomoci maker.

Je to asi jako kdyby jsi doted programoval v Basicu a ptal se, co tak zasadniho ti prinesou funkce, kdyz znas GOSUB.

Ale chapu, ze je to obtizne pochopitelne - ja s tim mel take potize (Common Lisp jsem se zacal ucit predevsim kvuli systemu restartu, ktery me zaujal, paradoxne jsem ho zatim nepouzil).

Re: Na co všechno je dobrý LISP?
« Odpověď #69 kdy: 29. 03. 2011, 17:27:15 »
A co je na nich tak zásadně nového?

Je to dalsi zpusob abstrakce, tj. zpusob jak zkratit program.
[/quote]

Aha.

stewe

Re: Na co všechno je dobrý LISP?
« Odpověď #70 kdy: 29. 03. 2011, 17:43:28 »
co je to system restartu? v skratke, nechce sa mi to hladat, (poprosim nejaky hutny vycuc :))

dakujem

JS

Re: Na co všechno je dobrý LISP?
« Odpověď #71 kdy: 29. 03. 2011, 18:05:20 »
co je to system restartu? v skratke, nechce sa mi to hladat, (poprosim nejaky hutny vycuc :))

dakujem

Nevim, jestli to bude 100% spravne (nepouzivam to), ale zhruba receno, Common Lisp ma krome klasickych vyjimek take conditions a restarty. Pokud vyvolate condition (coz je typicky v pripade chyby), na ni muze reagovat condition handler nekde vyse v hierarchii volani. Pekne na tom je, ze vyvolani condition neznici zasobnik. Z te chyby se pak muze ten condition handler zotavit restartem (ma na vyber nekolik moznosti), coz je vlastne volani kodu ktery se nechal zaregistrovat v hierarchii volani nekde mezi puvodcem condition a condition handlerem. Nejvyssi condition handler je typicky REPL loop interpretu, takze pokud vam bezi program, a vyhodi condition, muzete si ji rovnou za behu odladit. :-)

To ma spoustu vyhod - kod se muze lepe zotavit, protoze se neztrati zasobnik; neni treba znovuvyhazovat vyjimky, aby se dospelo nekam, kde se s chybou da nalozit; kod ktery rozhoduje, jak s chybou nalozit, nemusi resit, co konkretne udelat (je rozdeleny condition handler a restart).

Vice informaci http://www.gigamonkeys.com/book/beyond-exception-handling-conditions-and-restarts.html.

nm - novomente

Re: Na co všechno je dobrý LISP?
« Odpověď #72 kdy: 29. 03. 2011, 18:18:35 »
Tak jsem trochu googlil a zjistil jsem. Co rici zaverem. LISP se stava pouzivanejsim, jak je patrne z nekterych srovnavacich tabulek.

Možná jsi použil špatné nástroje Googlu. Z jakých tabulek je patrné, že je Lisp stále používanější?

No zase takovy vzestup to neni, ale da se tam sledovat nejaky pokrok a nebo zajem o LISP:
http://regulargeek.com/2010/01/14/googles-go-and-apple-development-are-gaining-ground/

http://langpop.com/
to je zase z yahoo, vyhledavani na ruznych serverech. V uvodnich tabulkach se LISP statecne drzi, zatimco v tech dalsich nize nekde vyrazne vynika pred jinymi jazyky.

Nutno si ale precist napr. tento clanek:
http://en.wikipedia.org/wiki/Measuring_programming_language_popularity

----------------

Take by me zajimalo nejake konkretni pouziti LISPu, jeho vyhod a prednosti. Treba v robotice. Mam tuseni, ze jsem cetl, ze je LISP selfprogramming language. Kdyby treba nekdo napsal: "Tak jsem na VS programoval robota, ktery delal to a to. Zkousel jsem ruzny veci a jazyky az jsem dosel na LISP a tam jsem to vykoumal tak, ze ten robot se uci z toho, co dela a vidi a sam si preprogramovava svuj vlastni system chodu. Takze ted dela to a to uplne jinak, chytreji a efektivneji a pritom se porad uci."

Ale mozna bych se mel podivat spise na nejake jine webove stranky, treba stranky skol nebo jine, ktere se zabyvaji umelou inteligenci, kdyz teda LISP se pouziva hlavne v teto oblasti.

Každý... tahá pilku. (asi nekde v lese v horach) A pak si dá ... co mu přinese bernardýn v soudku na krku. ;D

jehovista

Re: Na co všechno je dobrý LISP?
« Odpověď #73 kdy: 29. 03. 2011, 18:41:33 »
Take by me zajimalo nejake konkretni pouziti LISPu, jeho vyhod a prednosti. Treba v robotice. Mam tuseni, ze jsem cetl, ze je LISP selfprogramming language. Kdyby treba nekdo napsal: "Tak jsem na VS programoval robota, ktery delal to a to. Zkousel jsem ruzny veci a jazyky az jsem dosel na LISP a tam jsem to vykoumal tak, ze ten robot se uci z toho, co dela a vidi a sam si preprogramovava svuj vlastni system chodu. Takze ted dela to a to uplne jinak, chytreji a efektivneji a pritom se porad uci."

Ale mozna bych se mel podivat spise na nejake jine webove stranky, treba stranky skol nebo jine, ktere se zabyvaji umelou inteligenci, kdyz teda LISP se pouziva hlavne v teto oblasti.

Studoval jsem umelou inteligenci a robotiku a LISP se tam(podle me) pouzival proto, ze se dal bez nejakych serepeticek zapisovat rovnou algoritmus(nejake prohledavani stavoveho prostoru apod.) a vsichni studenti meli stejnou startovaci caru. Vic bych za tim nehledal.

Kit

Re: Na co všechno je dobrý LISP?
« Odpověď #74 kdy: 29. 03. 2011, 20:26:00 »
Studoval jsem umelou inteligenci a robotiku a LISP se tam(podle me) pouzival proto, ze se dal bez nejakych serepeticek zapisovat rovnou algoritmus(nejake prohledavani stavoveho prostoru apod.) a vsichni studenti meli stejnou startovaci caru. Vic bych za tim nehledal.
A proč ne? Copak v Lispu nejde udělat neuronová síť a k ní i proces učení?

Zmínil bych jednu z výhod Lispu proti ostatním jazykům: Velmi rychlé prototypování. Každá funkce se dá ladit zvlášť a přímo do aplikace lze zakomponovat testování včetně automatických testů.

A důkazy? Ty jsou na http://lisperati.com , nebudu je opisovat.