edit: And also, you don't need to write Java in a factories on top of factories style just because some choose to do that. The same is even more true of xml configuration.
edit: And also, you don't need to write Java in a factories on top of factories style just because some choose to do that. The same is even more true of xml configuration.
I'm not sure, but I think that C and C++ ecosystem has at least the same amount of libraries available as Java. And the reason why I mention this is that many Lisps have FFI which makes integrating those libraries almost seamless. Aside from Gambit-C, which compiles Scheme code to C and so supports inline C code, for example Racket has very nice DSSL for FFI, which reduces the need for glue code to one or two lines of code per imported function.
Integration with native Java libraries is easier from JVM languages, of course, but then there are many Lisps for JVM too. And for CLR, where tail call elimination exists. So if you want to write in Lisp, but are worried about lack of libraries, you really have many options. Clojure is alright, but saying that it's the only choice if you need access to libraries is not quite true.
Uh, no. Not for the kind of applications and systems that get built these days.
"Leverage proven techniques and technologies"? What does that even mean?
Leverage = take advantage of
Proven = demonstrated to have worked
Techniques = using one approach versus another
Technologies = existing code
Buzzword bingo does not add value. It only obscures meaning. Of course your code works. Of course you use existing technologies. That work. In existing code. That you leveraged. Using techniques. And technologies.
Jesus, I hate this kind of language.
He was saying many other people have contributed java libraries his programs can use, so that he doesn't have to hire an expert in HTTP, or computational geometry, or many problem domains that aren't the direct concern of his application, yet are necessary for it to work.
He said it in a compact way. It's a form of compression.
(ii) Never use a long word where a short one will do.
(iii) If it is possible to cut a word out, always cut it out.
(iv) Never use the passive where you can use the active.
(v) Never use a foreign phrase, a scientific word, or a jargon word if you can think of an everyday English equivalent.
(vi) Break any of these rules sooner than say anything outright barbarous.
Having said that, I really liked the Google Guava library, although a good bit of that stuff is working around or solving problems with Java itself.
https://opennlp.apache.org/ http://nlp.stanford.edu/
Cloud provider automation libraries
http://jclouds.incubator.apache.org/
Distributed stream computing
https://incubator.apache.org/s4/
Asynchronous event driven IO, battle tested, mother recommended
In-process webserver
....to name a few. It's probably useful to take some thing that you'll need and look in ecosystem X for it (say... .NET) and then compare what's available there to what's available on the JVM. In my experience, the JVM wins out almost every time when it comes to number of options and maturity of options.
I have been very attracted to the idea of Lisp, specifically as I discovered teepeedee and teepeedee2 as being some of the first truly fast web servers [0], and now I found wookie,[1] an evented web server running on top of libevent. I really want to play with that.
The closest thing I know of to people running "prod services on Lisp" are the Untyped guys in the Racket Scheme community [2], and not much else. I know pg and company became famous on Viaweb and Lisp, but since then there are scarce examples. However, the amount of bitching libraries and cool books (pg's book included) make me want to buck the trend and do it anyway, even if no one watches and I end up in my own ditch writing code to dig my way out for the all the unstable or non-existent pieces of code waiting for me.
[0] https://github.com/vii/teepeedee2
[0] Google App Inventor http://googleresearch.blogspot.com/2009/08/under-hood-of-app...
[1] Quickdocs is written in Lisp http://quickdocs.org/
[2] Jak and Daxter http://www.gamasutra.com/view/feature/2985/postmortem_naught...
[3] Maxima http://maxima.sourceforge.net/
[4] Prime Trader (Lisp Works) http://www.lispworks.com/success-stories/netfonds-primetrade...
[5] Franz success stories http://www.franz.com/success/
Your list is very cool, but I meant people writing production web services and startups that are often featured here. Of them all, the most interesting one I saw a month or so ago was someone writing production services in Haskell. That generated a lot of interest, and I have not heard of anyone brave enough to do it with a Lisp, save Clojure.
I was unaware of Jak and Daxter, but I would hope people who use Common Lisp, manage their packages in Quicklisp, and do other CL stuff know what Quickdocs. I am in that camp. :-)
Personally, I use SLIME + Emacs as I do not do enough CL development to warrant dropping over a thousand USD for a license and I find SLIME good enough for my usage.