4 ms·
Lisp is probably never going to get huge and that's ok. It's a niche language for a subset of the programming community that has a specific set of values, and n
by BadassFractal 13y ago
Lisp is probably never going to get huge and that's ok. It's a niche language for a subset of the programming community that has a specific set of values, and not everybody needs to or wants to share them. Obviously lisp users think you're missing out if you're not using a lisp, and will help you out as much as possible if you decide to join the so called renaissance. However I think the community understands that it's not for everybody.
I also suspect the initial jump into a purely functional paradigm (and then even further into code as data) might be too big of a hurdle to overcome for most developers, who are better off staying productive in their existing idioms.
- fusiongyro 13y agoThe interesting takeaway from the article is that Elisp is probably the most popular Lisp. That might be an important fact if you're an autodidact. As to your second point, I think code-as-data is both a smaller hurdle and a bigger part of Lisp than functional programming, which was always more of a thing in Scheme and really didn't catch up to "modern" FP until Clojure. Any programmer can appreciate the usefulness of macros and templates. The argument for pure functional programming is a lot more cerebral. I'm sure I would have been more productive if I only knew one language. The "which language should I use?" conversation that seems so debilitating would simply never happen.
- girvo 13y agoMy thing is that Lisps feel... Wrong, I suppose, for doing web development. They don't seem to match my way of thinking when architecture web apps. I say this as someone who wrote a routing framework for Pharen, a Lisp dialect that compiles to PHP, so it's less pure than other dialects and has the "power" of PHP underneath it. Still didn't fit. Perhaps I need to change the way I think. For solving maths problems and crunching numbers (I have most of a BSci in Mathematics) its brilliant (Clojure in particular). Fits perfectly.
- BadassFractal 13y agoYou're right, it's probably in the eye of the beholder. To me something like a Clojure Ring app makes perfect sense. You get a request map, pipe it through a bajillion functions until you hit the DB, then you take the results of your DB operations and pipe them back through a bajillion functions all the way back to HTTP.
- girvo 13y agoOh, request-response maps (heh) well to lisps; I copied Ring's API for my project. My biggest issue I guess, is getting out of a Class and Interface mindset. That said, do you have any advice for how to think about state in regards to web development? The database and its various assumptions were my biggest headache. What is the go-to library for Clojure here?
- islon 13y agoWell, in a typical web application (the server part) all your state is normally in the database so you don't need to worry about it. Just use pure functions that process the request get/put the data in the database and give the response. Do you have any specific needs for state other than the database?
- gnosis 13y agoMinor nitpick: Lisp is not a purely functional language. It's a multi-paradigm language. You could, of course, program in a more functional style in Lisp (and that style is encouraged more in some Lisps than others), but you're not forced to.
- BadassFractal 13y agoFair enough, I stand minorly corrected!