4 ms·
Before down-voting this poor soul: Hobbyist programmer, Schemer (although not smug about it, really), gamer, voracious reader, and highschool student.
by TurboHaskal 10y ago
Before down-voting this poor soul:
Hobbyist programmer, Schemer (although not smug about it, really), gamer, voracious reader, and highschool student.
- qwertyuiop924 10y agoI did say if you had to. In the industry, I can understand why you might have to learn it. I just don't understand why you'd want to. But then, I never liked Java: maybe I just don't "get it".
- ddorian43 10y agoMany of the 'big data' tools are in java. If you want to extend them or even just use them you'll need it(~hbase, apache samza, lucene/solr/elasticsearch etc)
- TurboHaskal 10y agoI highly dislike Java as well but as a professional and somewhat pragmatic programmer I'd be extremely wary of discouraging a fellow developer to learn such a dominant language like Java. Worry not, your Scheme kool-aid will fade out eventually.
- qwertyuiop924 10y agoThat's a fair criticism. Hell, I'll probably have to learn Java sooner or later, like it or not. >Worry not, your Scheme kool-aid will fade out eventually It's not Kool-Aid. I can tell because I am still capable of criticising Scheme, and am not in awe of it. Scheme has a weak stdlib (which is both good and bad), its string handling is painful at best, as srfi-13 doesn't provide a lot of common functionality, its function names are painfully long (call-with-current-continuation. Really? What would you call 'do' if you hadn't inherited it from maclisp? iterate-over-variables-incrementing-until-condition?) Which matters a lot when your whole language is made up of them, or things that look like them (how many times do you want to type 'vector-ref'?). Scheme has no dynamic variables. Chicken, my scheme of choice, and the most viable one for real work, lacks a decent debugger. Gambit and Guile have good debuggers, but Guile is slow, and Gambit has no libraries, so you can't get anything done. Schemestill doesn't have a standard imperative macro system. And the SSC is still working on R7RS-large, which will finally bring together a stdlib large enough to write scheme portable across implementations without snapping and spending the rest of your life in a corner, dribbling about syntax-rules. I like scheme: it's both syntactically and semantically small, beautifully clean, and even decent for some kinds of real work. But it's not even close to perfect, or even ready for industry.