3256
Vývoj / Re:Popis architektury GPU
« kdy: 23. 03. 2016, 19:53:07 »Nechce se mi trávit příliš času vynalézáním kola...Můžu se zeptat, na co to chceš? Chceš vynalézat vlastní GPU?!
Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.
Nechce se mi trávit příliš času vynalézáním kola...Můžu se zeptat, na co to chceš? Chceš vynalézat vlastní GPU?!
Nemáte funkce a + b, ale funkci pocet_vyr_skladem_bez_obratu_var_3(sklad, bez_obratu_od, min_cena, max_cena), která vznikla z funkce poc_vyr_bez_obratu_var_2(sklad) pomocí filtru. A je použita na mnoha místech v aplikaci v různých více méně nespecifikovaných kontextech. Odvozeno z ní je dalších x funkcí, které vznikaly v průběhu 10 let. A to je budoucnost FP, no a nebo ještě horší varianta, každý programátor co na projektu kdy pracoval, si vytvořil tuto funkci vlastní :-)))To je ale naprosto v pořádku. Funkci +/2 mám taky na spoustě míst v programu. Protože na všech těch místech dělá to, co tam dělat má. Hezké je na tom právě to, že na kontextu nezáleží a záležet nesmí.
Erlang přístupJj. Moje největší webová aplikace je frontend k monitoringu a správě sítí, takže to jsou pořád nějaký tabulky a grafy a všechno by to mělo být pokud možno dynamický. Takže události, události, události, většina asynchronní - ideální use case pro Erlang

Ale teď momentálně se mi ta představa líbí, je to takový hezky jednotný a přímočarý
S umístění view logiky na frontend jsem začal s Angularem - a v momentě, kdy to uděláš, tak na backendu v podstatě nepotřebuješ framework a vznikne ti SPA. [...] Mám trochu pocit, že SPA a "view logika na frontendu" je v podstatě totéž (protože když už tu view logiku děláš na frontendu, tak mi trochu nedává smysl dělat ovládání toho view na backendu).Mně vyhovuje, že když mám oddělené stránky, můžu si na backendu řešit, která je jak autentizovaná apod. Tohle určitě měnit nechci. Navíc celej ten koncept SPA se mi nelíbí (nemožnost odkazovat přes URL zvnějšku apod.)
stačí mít serializační instance pro data (auto-generované), která si posíláš, "a je to". Když v API něco změníš, kompilátor ti pohlídá, že ti to na frontendu i backendu souhlasíTohle bych právě hodně chtěl, ale určitě kvůli tomu nebudu přecházet na Haskell na backendu. Spíš si asi zkusím promyslet, jestli by se to nedalo pořešit nějakýma makrama v Elixiru, který by mi třeba vygenerovaly boilerplate v JS pro přístup k datům. Momentálně se snažím všechna data přenášet přes websockety (REST jsem už víceméně pohřbil), takže to je jenom otázka definice handlerů pro události ze strany serveru a funkcí pro volání z druhé strany. Nechám si to projít hlavou, možná spojení tohodle + nějaký rozumný framework (Cycle.js nebo React) by bylo pro mě nejlepší.
- Zkompilovaný js je VELKÝ (1MB+)To bych určitě nebyl ochotnej akceptovat. Jednak mě to dráždí principielně
ale hlavně taky potřebuju servírovat mobilům a tam je to s těma datama pořád na štíru... Kolem 100kb je ok, níž se dneska člověk nedostane, kolem 200 už začínám brblat a 400 a víc by bylo vyloženě nepřijatelný
Jestli to nebude tím, že v FP se vytváří výhradně nové projekty a vše je nové, svěží a čisté. Po pár letech provozu projektu to takové nebude.RabbitMQ je devět let starý, CouchDB 11 let, Ejabberd 14 let. Nezaznamenal jsem, že by si někdo stěžoval na codebase.
Jinak FP taky obsahuje dědičnost, negativní důsledky dědičnosti v FP představuje použití funkce uvnitř funkce.To je asi tak jako bys řekl, že v autě je taky dědičnost a tou dědičností je šaltrpáka. Proč mást pojmy? Dědičnost je dědičnost a v FP není.
Změní-li se chování té vnitřní funkce rozhodí to ne zcela odvoditelným způsobem chování jiných funkcí. Což taky zatemňuje. Závislosti mezi funkcemi jsou taky časem hodně složité a dostatečně temné.Pokud mám funkci add(a,b) a "+" v ní přepíšu na "-", tak se ten program samozřejmě rozbije. Proti špatně napsanému kódu mě žádné paradigma neochrání. Výhoda FP je v tom, že ty funkce bývají tak jednoduché a dobře definované, že je jasné, jestli dělají co mají nebo nedělají. U Haskellu pak mám navíc silný typový systém, který spoustu chyb odhalí.
Tomuhle nerozumím. Vždyť JavaScript je také funkcionální. Chcete jazyk, který bude jen funkcionální a nebude podporovat jiná paradigmata?V JS se dají používat některé FP patterny. Napsal jsem, že bych byl ochotný používat framework, založený jenom na nich (jako je např. ten cycle.js - viz http://cycle.js.org/ ) a pro moje účely by to možná bylo i racionálnější než čistě funkcionální jazyk.
Mám dobrou zkušenost s F# a frameworkem WebSharper. HTML však renderuji pomocí Reactu.Matně si vzpomínám, že jsem o WebSharperu něco někdy slyšel. Díky za tip, kouknu. Jak je to ale s praktickým používáním? Vidím tam VisualStudio, NuGet... to jsou vody, do kterých bych se nerad namočil jenom kvůli frontendu

Obdobně dobrou zkušenost mám se Scalou a ScalaJS. Navíc ScalaJS má binding pro React (osobně jsem ho však nezkoušel, když jsem to používal, tak ještě neexistoval).Díky, to jsem taky nezkoumal.
V těchto jazycích ale nejde napsat serverovou část, nebo ano?Nejde mi o sjednocení frontendu a backendu (možná jsem to napsal trochu nesrozumitelně). S Phoenixem jsem extrémně spokojenej a nedám ho ani za nic
Hlavní motivace, proč uvažuju o změně, jsou asi tyhle:Navíc budou mít menší komunitu než F# a Scala.To rozhodně - předpokládám, že o několik řádů
Nějaký úplně skvělý framework, okolo kterého by byl hype jako v dobách RoR, tady asi (pro CljS) není. Spíš to jsou jednotlivé knihovny, které si člověk sám poskládá dohromady přesně tak, jak potřebuje. Takže možná to F#.Tak to by nebylo nic pro mě, to mi za prošoupané klávesy se závorkami nestojí
)
Uvazoval jsi o ClojureScriptu?Ne, protože LISP-like jazyky nějak nejsem schopnej překousnout
Je v Clojure-světě nějaký vyloženě famózní framework, který by stál za to se kousnout a tu nechuť překonat?
Weby mě neživí, dělám je jenom pro interní potřebu, takže tu oblast úplně detailně nesleduju a budu rád za postřehy vás, kteří se v tom pohybujete víc a máte smysl pro FP.
Šlo by trochu rozvést, co je na tomhle příkazu špatně?Nic, jenom je to možná trochu nevhodný příklad. Ta nevhodnost se Saltem jako takovým nijak nesouvisí.
jakýkoliv normální profesionál když vidí někde "nová technologie", tak zavře uši a nic už vědět nechce, s terminologií to nemá nic společnéhoNo, frontenďáci jsou celí říční, aby měli každej týdej úplně novej make systém a co 14 dní jinej framework. Ale je samozřejmě otázka, jestli jsou frontenďáci "normální profesionálové"
Varující je, že čisté FP se prakticky nepoužíváTo video, co jsem odkazoval výš, se právě docela detailně zabývá tím, proč to tak je (podle řečníka). A ve spoustě věcí má podle mě pravdu. Jakmile normální programátor uvidí někde napsáno "IO monády", tak zavře uši a nic už vědět nechce. Kdyby viděl "print x `andThen` print y", nemá problém. Čisté FP jazyky doteď žily/žijí převážně v akademickém prostředí a z toho vychází i všechna ta kultura a texty kolem toho. Nejlíp to vyjadřuje okřídlené:
Haskell gets some resistance due to the complexity of using monads to control side effects. Wadler tries to appease critics by explaining that "a monad is a monoid in the category of endofunctors, what's the problem?"
já ho za lopatu nemám (prakticky netuším kdo to je), ale IMHO mele blbosti, ty analogie jsou chybnéJe to autor Elmu. http://elm-lang.org/