5 ms·
I've worked with Scheme quite a bit and I've concluded that it's an academic language, not a business language. It definitely lacks a large, vibrant community
by techiferous 17y ago
I've worked with Scheme quite a bit and I've concluded that it's an academic language, not a business language. It definitely lacks a large, vibrant community with mature libraries. There is also too much variation among the various flavors of Scheme which fragments the community. It also lacks good language constructs for managing large software projects (namespaces and such). You have to have a Scheme-enlightened text editor in order to be productive. Despite what people say, it's not as pure and minimal as you'd think (I think there may be five different variations of let).
Instead of pouring a lot of effort into Scheme, let it stay an academic language. It's fine for learning about functional programming.
I moved from Scheme to Ruby and haven't missed Scheme. Sure, Scheme macros are very powerful, but I found that the DSLs that you can create in Ruby are adequate. Ruby also has the advantage of being a multiparadigm programming language.
- lukev 17y agoI know people tend to say this as a response to everything around here, but I think it's genuinely a good response to this: You should try Clojure. It's cleaner than Scheme except for the pains that come along with the JVM, but those redeem themselves by giving you access to zillions of libraries (which was your other complaint). And it has a good community and an awesome benevolent dictator.
- techiferous 17y ago> You should try Clojure. Too late; I'm in the Ruby community and things are just fine here. :) But thanks for mentioning Clojure; I didn't realize its syntax was so Scheme-like. That's news to me. :)
- expeditious 17y ago> lacks a large, vibrant community with mature libraries > too much variation among the various flavors of Scheme which fragments the community > lacks good language constructs for managing large software projects It seems that those points are being recognized and worked on very seriously in R7RS. See http://www.scheme-reports.org/ http://www.scheme-reports.org/ > Instead of pouring a lot of effort into Scheme, let it stay an academic language. Well, the "Little" Scheme (working group 1) should still fit that bill. And the "Big" Scheme (working group 2) is supposed to fix the above problems you mentioned.