This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-10-10
Channels
- # 100-days-of-code (2)
- # announcements (2)
- # aws (11)
- # beginners (114)
- # boot (6)
- # calva (11)
- # cider (11)
- # cljdoc (2)
- # cljs-dev (7)
- # clojure (126)
- # clojure-berlin (1)
- # clojure-conj (4)
- # clojure-dev (1)
- # clojure-germany (12)
- # clojure-italy (22)
- # clojure-spec (96)
- # clojure-uk (111)
- # clojurescript (27)
- # core-async (8)
- # cursive (17)
- # datomic (26)
- # devops (5)
- # editors (15)
- # emacs (13)
- # events (1)
- # figwheel-main (27)
- # fulcro (64)
- # hyperfiddle (29)
- # jobs (8)
- # jobs-discuss (7)
- # liberator (4)
- # off-topic (46)
- # om (9)
- # onyx (1)
- # overtone (1)
- # perun (8)
- # re-frame (28)
- # reagent (35)
- # reitit (5)
- # shadow-cljs (96)
- # spacemacs (1)
- # testing (10)
- # timbre (8)
- # tools-deps (63)
- # unrepl (1)
- # yada (10)
Should I pick clojurescript or elm?
I do boxing 😄
do you like types or lisp? also, what are your external needs. clojurescript likely works with external libs better than elm
Elm types, friendlier errors, maybe easier ramp up(? ) ClojureScript data structures, whole program optimization, code splitting
That's off the top of my head for strengths of each platform.
I'd compare cljs against Reason instead, seems to have more support / life expectancy (see https://news.ycombinator.com/item?id=16510723 . Might be random opinions from the internet though)
@alexpashkov123 If you don’t like websockets and you do like breaking updates ELM, if you like runtime exceptions, and easy javascript interop Clojurescript
Cljs is also a one man show (mostly)?
for fun/hobby just pick the style you like better: ML or lisp. if for work figure out what "trick" would help your project the most and which ecosystem supports it best
Swannodette cannot be just one person, there must be an army of devs behind that account
You can get away with using ocaml+bucklescript if you prefer ml style syntax more, reason seems to based largely on these 2
we have spec for some runtime validation but in general if you pick clojure you are picking it for the dynamism
If you think the benefits of static languages (no runtime errors, etc.) outweigh the downsides (repetitively declaring data structure, tight coupling to types) then Elm is the best
If you think the benefits of dynamic languages (rapid experimentation, loose coupling) outwiegh the downsides (runtime errors) then go for clojure
If you think the benefits of javascript (popularity) outweigh the downsides (( ZA̡͊͠͝LGΌ ISͮ̂҉̯͈͕̹̘̱ TO͇̹̺ͅƝ̴ȳ̳ TH̘Ë͖́̉ ͠P̯͍̭O̚N̐Y̡ H̸̡̪̯ͨ͊̽̅̾̎Ȩ̬̩̾͛ͪ̈́̀́͘ ̶̧̨̱̹̭̯ͧ̾ͬC̷̙̲̝͖ͭ̏ͥͮ͟Oͮ͏̮̪̝͍M̲̖͊̒ͪͩͬ̚̚͜Ȇ̴̟̟͙̞ͩ͌͝S̨̥̫͎̭ͯ̿̔̀ͅ) )
The problem with any "new" language is probably the ability to make things fast. You probably want to engineer a beautiful solution, but sometime you'll have to do something FAST or do experiments. Elm is probably not good for that (you can't cheat, you need to match types and wrap interop correctly)
It is very good for making idiots (me) build well architected applications. The Elm architecture is very nice and the fact that the language drives you so heavily toward it is super beneficial
@mauricio.szabo that's true. I've written more Lisp interpreters than I can count, and can write one in about an hour in Clojure/C#/Python. I've been spending most of my free time for a week now writing one in F#. 😄
Especially with statically typed languages it's really tempting to make the code elegant so sometimes I waste hours figuring out how to code golf some function.
For an extreme example of what a reusable component can end up looking like take a gander at elm-autocomplete
It even sounds dumb to me saying it now, but losing out on the React ecosystem really hurts too