3 ms·
> Things don’t always fit exactly. Maybe once enough new ideas are collected, a new category would emerge… except you can’t see its shape because everything’s a
by wellpast 7y ago
> Things don’t always fit exactly. Maybe once enough new ideas are collected, a new category would emerge… except you can’t see its shape because everything’s already been sorted.
This is so very true and precisely why PL type systems (in their common usage, which involve creating ADTs/classes/records -- taxonomies) are so bad for the necessary creative evolution that software systems must undergo to keep up with the dynamic real world.
Dynamic entities, untyped maps, allow for creative evolution; type-oriented ADTs ubiquitous in typed PLs blind you and _bind_ you in exactly the way this post describes.
- jmeister 7y agoAs someone looking to learn Haskell, I was pondering over this from another post on the frontpage: https://news.ycombinator.com/item?id=22843181 https://news.ycombinator.com/item?id=22843181 Just out of curiosity, do you significant experience in a statically-typed FP? What’s your favourite language right now? Your comment reminds me of Rich Hikey’s famous talk, so I would guess Clojure?
- wellpast 7y agoI have a similar take on Haskell and I do think its adherents are more clinging to a near-religious like commitment to the language and its counterproductive purity. That said I think > I feel learning Haskell was worthless. is a little harsh. I suppose b/c I don't think learning (anything) is ever worthless. Yes I'm a Clojurist, per se. I agree with even Rich Hickey who will even say that it's fundamentally not about the specific programming language. However I do think Haskell falls into a different category. Most PLs at least make pragmatic concessions. PLs with strong static typing take a fundamentalist approach that does not give any flex and therefore I find anti-pragmatic. But why not learn a strong static PL? Why take my or anyone else's word for it? The best way to discover the right tools is to pick them all up and wield them. If outcome is your goal, if productivity is your sincere goal (as opposed to something else like intellectual curiosity or purposeful rigidity...b/c you're, say, afraid of change) then I do think you will gravitate away from static typing in many cases. Especially in the prevalant case of development of web and distributed data systems.
- wellpast 7y agoAnd to answer your question my experience in strongly typed functional FP was building a few applications in Elm, a derivative/cousin of Haskell.