• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    LUDWIG_Funkcionální programování (Haskell, LISP, XQuery, OCaml, F#, Scala, ...) - praxe, teorie a uplatnění

    Clojure's core typed vs Haskell

    8 hlasy od 8 respondentů
      A monad is just a monoid in the category of endofunctors, what's the problem? http://vimeo.com/38223410



      All programming languages evolve towards Lisp.

      Haskell is faster than C++, more concise than Perl, more regular than Python, more flexible than Ruby, more typeful than C#, more robust than Java, and has absolutely nothing in common with PHP. — Autrijus Tang

      There may, indeed, be other applications of the [lambda calculus] than its use as a logic. — Alonzo Church, 1932
      rozbalit záhlaví
      KOJA
      KOJA --- ---
      SHAGA, LISKNI_SI: Mockrat dekuju!

      Chapu, ze nasledujici otazka je tady dost chucpe ale odvazim se.

      Muj rozhled je dost omezeny - zivi mne C++ a okolo sebe jsem videl vzdy temer vyhradne dalsi proceduralni jazyky (java, python). Posledni dobou mam pocit, ze komponenty pro distribuovane systemy se komoditizuji (xml-rpc, grpc, zeroMQ, rabbitMQ, kafka, docker, kubernetes, hdfs, cephfs, ...). Prijde mi, ze asi nejvic veci vzniklo v ramci java ekosystemu (videno u sousedu, treba se pletu) byt rozhrani mivaji budto pro vicero jazyku nebo bez vazby na konkretni jazyky (REST API, protobuffery, ...).

      Takze pokud jste to nemysleli tak, ze byste i dneska kladli hlavne duraz na to aby engine vznikl ve funkcionalnim jazyce (cemuz mozna trochu odporuje ten perl? nevim), mam to tedy brat tak, ze Erlang ma skvele nastroje a Erlang VM se skvele hodi na ten middleware a v souctu vam to vychazi rozumnejsi volba nez treba (pardon) java (vcetne intellij apod.) a nejaky open-source middleware?

      Pro jistotu opakuju - nejde mi o zadny flame ani netlacim nejaky nazor, jsem proste zvedavy a vy mate tu smulu, ze vypadate rozumne :-) Vychazim hlavne z toho, ze programatoru v C++, jave, pythonu jsou plne pracaky a kdejaky Google/Facebook/etc vyviji open source projekty pro "enterprise" distribuovane systemy zatimco Erlang ani Haskell tolik rozsireny asi nebude.

      Predem diky za nazory.
      LUDWIG_
      LUDWIG_ --- ---
      SHAGA:
      LISKNI_SI: Pouzivali jste Dialyzer?
      SHAGA
      SHAGA --- ---
      KOJA: Hodně napsal už tady kolega liskni_si, který na našem analytickém engine zanechal nesmazatelné stopy :) Nicméně - engine jako takový využívá z Erlangu jen subset, čili není až tak závislý na tom, co dělá Erlang Erlangem. Nicméně ten analytický engine poměrně mohutně využívá služeb našeho vlastního middleware, který je také napsaný v Erlangu a ten bych v ničem jiném (tedy kromě Elixíru) rozhodně nepsal - je to distribuovaný systém posouvající zprávy z jednoho konce clusteru na druhý a dělající s těmi zprávami během cesty různá kouzla a na to je Erlang (nebo cokoliv jiného běžícího nad Erlang VM) naprosto fantastický.
      LISKNI_SI
      LISKNI_SI --- ---
      KOJA: Legrační je, že ta aktuální (druhá) verze analytickýho enginu byla postupně napsaná v Haskellu, Perlu a Erlangu — stejný algoritmy, stejně pojmenovaný funkce, stejný všecko, jen "trochu" jiný jazyky. V Haskellu se psal prototyp, přepis Perl aby zapadlo do tehdejší codebase, přepis do Erlangu protože Perl byl pomalej a blbě zapadal do tý cloudový infra.

      Kdybych to psal dneska, vynechal bych ten Perlovej mezikrok, ale mezi Erlangem/Haskellem bych váhal. Haskell běží o dost rychlej a líp se refaktoruje, ale Erlang se úplně totálně megabožsky rychle kompiluje a testuje, a na produkci je to radost běhat, ladit, monitorovat. V Haskellu jsou knihovny na úplně všecko, v Erlangu chybí základní datový struktury, ale ten rozdíl v operations je tak velkej, že bych to přesto zvažoval.

      (je ale možný, že kluci, kteří na tom narozdíl ode mě pracují dodnes, to vidí jinak anebo maj další postřehy)
      KOJA
      KOJA --- ---
      SHAGA: Muzu se ciste ze zvedavosti a bez znalosti FP optat na nazory? O FP, potazmo Erlangu nevim ani zbla - proklikani tutorialu k Haskellu a opakovany prchlivy dojem, ze chapu monady nepocitam.

      Kdybys/te ten analyticky engine zacinal/i psat na zelene louce, jak bys/byste se divali na Erlang dnes? Co je na nem nejzajimavejsiho? Je to OTP? Meni treba situaci to, ze se za posledni leta vice zpopularizovaly i dalsi funkcionalni jazyky nebo, ze se objevila virtualizace v podobe Kubernetes/Docker Swarm a pod.?

      Nechci zadny flame, jen jsem zvedavy na cizi zkusenosti. Uvazuju tak, ze jazyk je to relativne exoticky, takze asi mate padne duvody proc ho pouzivat.
      SHAGA
      SHAGA --- ---
      UETOYO: Elixir máme rádi (osobně), ale nasazený ho nemáme, přeci jen Erlang děláme už docela dlouho a tou dobou Elixír ještě nebyl. A nechceme naší už i tak heterogení platformu zanášet dalším jazykem.

      Děláme v oboru www.gooddata.com.
      UETOYO
      UETOYO --- ---
      SHAGA: V jakém oboru se pohybujete? Jinak hodně slyším o Elixiru, máte s ním nějaké zkušenosti?
      SHAGA
      SHAGA --- ---
      Hola, kdybyste někdo chtěli v Praze dělat profesionálně Erlang, tak se mi ozvěte, mám tu nějaké otevřené pozice. Zkušenost s Erlangem není povinná, spíš je dobré umět programovat a vědět něco o funcionálním paradigmatu jako takovém, s takovým základem se to doučíte rychle. Junioři, senioři, je mi to fuk, poradíme si.
      UETOYO
      UETOYO --- ---
      RUDOLF
      RUDOLF --- ---
      hehe, tohle nedávám.. ale tady by mohlo pobavit

      Typing the technical interview
      https://aphyr.com/posts/342-typing-the-technical-interview
      CABOWITZ
      CABOWITZ --- ---
      v ramci vyhledani informaci o livecodingu a haskellu jsem objevil tuto podivuhodnou meta-hru :)
      Nomyx, the game where you can change the rules
      http://www.nomyx.net/
      UETOYO
      UETOYO --- ---
      SHINIGAMI: "jako kluka ho ta technika prece jen bere trochu vic"
      Opravdu?
      SHINIGAMI
      SHINIGAMI --- ---
      KOMPAS: tak vis jak, kdyz maj neco delat nebo jit spat, tak jsou uzasne aktivni a zvidavi, jen aby se tomy vyhli;).

      LISKNI_SI: 9 a 7, s tim ze ten mladsi se samozrejme snazi segru dohnat a predehnat, a jako kluka ho ta technika prece jen bere trochu vic..
      LISKNI_SI
      LISKNI_SI --- ---
      SHINIGAMI: Kolik mrňousovi je?
      KOMPAS
      KOMPAS --- ---
      SHINIGAMI: dobře ty
      SHINIGAMI
      SHINIGAMI --- ---
      Diky moc, mrknu na to a zkusim to na mrnouse aplikovat. Posledni dobou se vic zajimaji o to co tak delam (pravda, obvykle k veceru, naposled natahli vecerku o hodku a pul tim, ze jsme se tu hrabali v kusu assembleru:), treba je to chytne.
      JINX
      JINX --- ---
      UETOYO
      UETOYO --- ---
      LUDWIG_: To je skvělý!
      MARASAN
      MARASAN --- ---
      SHINIGAMI: Logo
      LUDWIG_
      LUDWIG_ --- ---
      SHINIGAMI: zkusenost primo nemam, ale jeden clovek v googlu mel tenhle hobby projekt:
      GitHub - google/codeworld: Educational computer programming environment using Haskell
      https://github.com/google/codeworld

      https://code.world
      UETOYO
      UETOYO --- ---
      SHINIGAMI: viz You begin with a very small and simple subset of Scala, and progress to the level of Scala proficiency that you care to reach.
      Kliknutím sem můžete změnit nastavení reklam