Hacker News new | comments | show | ask | jobs | submit login
Ask HN: Why isnt Scheme popular in production environments?
15 points by why-el 1770 days ago | hide | past | web | 6 comments | favorite
We are talking about what was characterised by some (Douglas Crockford comes to mind) as the best language ever designed. Given the rising popularity of functional languages, what can we learn from the experience of Scheme? Would love to hear your thoughts.

Different businesses have different criteria to evaluate their tools by. OCaml has had some limited success in the financial market, and I think Scheme may have as well, due in part to the ease with which high performance code can be written that closely mirrors the formulas they're used to working in anyway.

For your run of the mill business, ease of finding developers to do the work, and ease of finding maintenance developers not just today but 10 years from now is a much larger consideration. In addition for publicly traded companies (or management that's too weak to stand up for their choices) picking a "accepted" language to do their work in offers a certain degree of deniability should the project fail (the outdated joke about no one ever getting fired for choosing IBM seems appropriate here).

I think, when it comes down to it, the relative merits of the language itself are actually a fairly minor consideration for most businesses, they simply go with one of the industry standards because it involves the least risk on their part. The only way I see that changing is if more companies take a strong stand and publicly push less popular languages into the spotlight and make a strong case for the advantages you can see by embracing them.

Implementations and libraries are too balkanized. A problem which related languages like Common Lisp and Clojure don't have, and thus you're more likely to see them in use.

Even ultra-fans like Philip Greenspun (him of the eponymous tenth rule) picked more "batteries included" languages like Tcl when you had to interface with a database and web server.

In recent years, things have improved (e.g. Racket or Chicken), but on the other hand, lots of other languages aiming at the same market share enjoy popularity (from the aforementioned Clojure to Ruby, Ocaml and JavaScript).

I think it's a really interesting question.

My candid answer would be that many factors popularize a language; and being a "great language" isn't necessarily one of them.

Companies see programmers as a fungible resource. There are far fewer Scheme programmers around than say Java, C# so companies will go with those "popular" languages so that their cost of programmers is reduced. Stupid, false economy by PHB's - but that's life!

Clever entrepreneurs, like Paul Graham :-), have used Lisp / Scheme to launch empires. Savvy technically competent entrepreneurs will trump PHB run rust-belt companies over and over again.

It's not stupid. The job of any CTO is to minimize risk and the talent pool of a niche language drying up is definitely a risk. Every startup I have worked at has thought carefully about talent pool and language choice.

In general, the family of Lisp languages do not offer access to GUI interfaces comparable to those users have come to expect. The exception, perhaps, being Clojure. It however depends on JVM (or .NET). The web side is another matter, but Crockford himself has chosen a different direction.

This website of course does use a Lisp language. Make of that what you wish.

Applications are open for YC Winter 2018

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact