5 ms·
> I don't get this perspective, are there only three good features invented every decade? To be honest, programming language design has been a solved problem s
by mseepgood 7y ago
> I don't get this perspective, are there only three good features invented every decade?
To be honest, programming language design has been a solved problem since the 1950s when LISP came out.
- api 7y agoWhy does nobody use it? I've never heard a satisfactory answer from LISPers. "People are dumb" is not a satisfactory answer.
- jdmichal 7y agoThe best answer I've seen is the Lisp Curse. It's basically the idea that Lisp is so flexible that every project becomes its own DSL / idiomatic version of Lisp. Imagine what's being discussed here, except that every programmer actually has the power to just make the change rather than have to submit it to the central Rust team for consideration and eventual implementation. http://winestockwebdesign.com/Essays/Lisp_Curse.html http://winestockwebdesign.com/Essays/Lisp_Curse.html
- kazinator 7y agoI had the same thought. Lisp puts an end to the bikeshedding; everyone can build their own shed and paint it whatever they want, without having to break upstream. It also applies to the recent "Why I'm Leaving Elm" article. https://news.ycombinator.com/item?id=22821447 https://news.ycombinator.com/item?id=22821447 Part of the struggle depicted in the article is between user defined language extensions "competing" with the upstream compiler. That's exactly a social problem that becomes a technical problem in Lisp.
- pcwalton 7y agoThere are a multitude of reasons, but I think the biggest ones are (1) the unfamiliar syntax; (2) the fact that Lisp runtimes tend to want all code that interacts with it to also be Lisp instead of focusing on FFI and interoperability; (3) Unix and C were free and so went viral.
- astrange 7y agoBecause of the rule of least power, it's actually bad for a language to be able to do anything.
- unlinked_dll 7y agoIf this were true we wouldn't have done so much research into programming languages over the last 50 years. PL design is not a problem to solve, it's the study of the way to express problems and their solutions. As long as their are new problems and ways to solve them, we'll find new ways to improve PL designs.
- pcwalton 7y ago1950s Lisp didn't even have lexical scope, for goodness sake. (If you don't know what dynamic scoping is, best to leave it that way—it's horrendous.)
- deleted 7y ago[deleted]