Lisp for enterprise computing? - lisp
This is a discussion on Lisp for enterprise computing? - lisp ; Raffael Cavallaro wrote:
> how many average java programmers even know what closures are? or what
> memoization is? (I had one tell my I had made a typo - he thought I was
> trying to write "memorization") or ...
-
Re: Lisp for enterprise computing?
Raffael Cavallaro wrote:
> how many average java programmers even know what closures are? or what
> memoization is? (I had one tell my I had made a typo - he thought I was
> trying to write "memorization") or a general condition system (not just
> execeptions)? or a metaobject protocol?
Well, I'm going to cheat a little bit and broaden the choices of the
languages to use in the comparison. Perl has lexical closures and
dynamic scoping, similar to Lisp's special variables. I could be wrong,
but I think that Java's anonymous inner classes gives something of the
flavor of closures, albeit with far less taste to it. Java has some
sense of reflection to it, though not something as far reaching as the
MOP. Of course, I haven't used Java in a little over five years, so
they may have added something. One can even find discussions of
multiple dispatch, and some kind of attempt at implementing it, in more
than one popular C++ book. And Lisp isn't even the only homoiconic
(every time I see that word it makes me think it should be referring to
someone who is a legend in the gay community) language. Of course,
Prolog is probably a poor choice to use as a comparison if one is trying
to make a sales pitch for Lisp being a good blue collar language.
And one definitely doesn't have to learn everything all at once. One
can use CLOS without even knowing about the MOP or know about the MOP
without ever using it. One can use the pretty printer without knowing
anything about writing one's own dispatch functions for it. I was
personally using ERROR and HANDLER-CASE in much the same way that the
"average" Java or C++ programmer would use try/catch before I copped
onto restarts and the more general power of Lisp conditions. I think
that many people are unnecessarily scared off of Lisp because it has
this reputation for being so exotic. It *is* different but it's not
*that* different. Personally, I really like the approach of something
like _Practical Common Lisp_ in that it just starts introducing language
features in a context of using them to solve problems.
> years of experience won't necessarily teach you what these things are -
> you need to learn certain abstract concepts and the propensity and
> ability to learn such abstract concepts are marks of intelligence.
Well, I don't think that any one language can lay claim to any of these
traits. In fact, there are probably quite a few people running around
using abstract concepts who've never written a program in any language.
-
Re: Lisp for enterprise computing?
On 2008-03-21 14:14:58 -0400, Mikael Jansson <mikael.jansson@gmail.com> said:
> C++ and bash gets my bills
> paid; does that mean I have a lower level of intelligence?
All along we've been talking about *average* java programmers, not
programming wizards who happen to be working a java gig to pay the
bills. Clearly there are able programmers - presumably like yourself,
since you read c.l.l and are clearly interested in things beyond what
pays your check - who know other languages but need to work in more
mainstream languages because that's where the most lucrative job
opportunities are.
However, whatever language is hiring the most programmers will of
numerical necessity draw a larger proportion of mere warm bodies -
people who are less able, less curious, less intelligent, and just
there for the paycheck. This numbers game also drives the lower
requirements of the language used - when management decides they want a
large number of easily replaceable, mediocre programmers rather than a
small number of hard to find excellent ones, management must select a
language that is easier for easily replaceable, mediocre programmers to
learn effectively.
-
Re: Lisp for enterprise computing?
On 2008-03-21 21:15:10 -0400, Damien Kick <dkixk@earthlink.net> said:
> Well, I don't think that any one language can lay claim to any of these
> traits. In fact, there are probably quite a few people running around
> using abstract concepts who've never written a program in any language.
No doubt, but we were talking about programmers, not the general population.
The point is very simple - java may have little used, recent bolt-ons
to provide some of the things built in to common lisp, but the average
java programmer doesn't use them or know much about them. The same is
not true of their lisp equivalents - you have to know the lisp
equivalents or you can't really be said to be a lisp programmer:
you cannot be said to be a lisp programmer if you don't understand
macros; you can be said to be a java programmer if you don't understand
macros; you cannot be said to be a lisp programmer if you don't
understand closures; you can be said to be a java programmer is you
don't understand closures; etc.
-
Re: Lisp for enterprise computing?
On 22 Mar, 18:23, Raffael Cavallaro <raffaelcavallaro@pas-d'espam-s'il-
vous-plait-mac.com> wrote:
>
> [...]
>
> However, whatever language is hiring the most programmers will of
> numerical necessity draw a larger proportion of mere warm bodies -
> people who are less able, less curious, less intelligent, and just
> there for the paycheck. This numbers game also drives the lower
> requirements of the language used - when management decides they want a
> large number of easily replaceable, mediocre programmers rather than a
> small number of hard to find excellent ones, management must select a
> language that is easier for easily replaceable, mediocre programmers to
> learn effectively.
(Just so you know, I was playing the devil's advocate just to see what
you'd answer. You did, excellent explanation -- I'll borrow it in the
future!
)
It's a sad state where people don't care about what they do. Or is it?
Perhaps, it is only programmers (and a few other professions) that
are--or can be--passionate about their work. I've never had a second
thought about what to work with (or hobby, for that matter...), so
it's hard for me to imagine.
--
Mikael Jansson
http://mikael.jansson.be
-
Re: Lisp for enterprise computing?
On Fri, 21 Mar 2008 07:48:35 +0000, Slark wrote:
> Actually, don't most programmers know about memoization? You see it in
> lots of code (including java...) - of course the autohors may not know
> the technique has a name, but that's largely irrelevant (until you come
> to try communicate with others!)
Indeed. Most of computing uses the term "caching" in this context.
Admittedly not quite the same animal, but in the same genus.
Cheers,
--
Andrew
-
Re: Lisp for enterprise computing?
Campo wrote:
> It's not politically correct to say this but I will say it: CL is for
> smart people. Most programmers are too stupid to program in Lisp. If
> your IQ is not several deviations above the norm you should stick to
> Java or Python.
Really? That's me told, then.
-dan
-
Re: Lisp for enterprise computing?
On Mar 21, 11:29 am, Pascal Costanza <p...@p-cos.net> wrote:
> Pascal Costanza wrote:
> > Raffael Cavallaro wrote:
> >> On 2008-03-20 16:54:42 -0400, Pascal Costanza <p...@p-cos.net> said:
[...]
> If you follow that recipe, newbies will be productive in 2-3 months.
>
> I don't have hard empirical data for that, but it worked pretty well in
> a few cases I have observed, and what I hear is that this is the same
> experience for other people (for example, ITA).
>
> My conclusion is that Common Lisp is pretty simple to learn, at least
> the stuff you need in 80% of the cases, or so.
Having worked for a very large Lisp-project, the overall experience
was that newbies were productive in a few weeks. OK, their code was
perhaps not what an experienced Lisper would write, but it was
accepted for production use, where it ran for years.
> I don't know how Java currently fares in that regard.
Or any other language, for that matter.
Ernst
-
Re: Lisp for enterprise computing?
On Mar 21, 6:55 pm, Sohail Somani <soh...@taggedtype.net> wrote:
> ** By the way, before anyone thinks I am not for IQ because I got a low
> score, this is not true. On two different WAIS tests some time apart I
> got more than 130. But being me, I know this is obviously not a good
> gauge! I'm sure you will agree ;-)
>
I took a test in a pop sci magazine and only got 127. Aww, does this
mean I can't argue with you anymore? 
--
Mikael Jansson
http://mikael.jansson.be
-
Re: Lisp for enterprise computing?
On Mon, 24 Mar 2008 07:40:48 -0700, Mikael Jansson wrote:
> On Mar 21, 6:55Â pm, Sohail Somani <soh...@taggedtype.net> wrote:
>
>> ** By the way, before anyone thinks I am not for IQ because I got a low
>> score, this is not true. On two different WAIS tests some time apart I
>> got more than 130. But being me, I know this is obviously not a good
>> gauge! I'm sure you will agree ;-)
>>
> I took a test in a pop sci magazine and only got 127. Aww, does this
> mean I can't argue with you anymore?
Like I said, not a good guage!
--
Sohail Somani
http://uint32t.blogspot.com
-
Re: Lisp for enterprise computing?
Pascal Bourguignon <pjb@informatimago.com> writes:
> Stefan Arentz <stefan.arentz@gmail.com> writes:
>
>> gavino <gavcomedy@gmail.com> writes:
>>
>> [...]
>>> Is that really true? 70% of java project FAIL? link?
>>
>> I think it is more like 70% of ALL software projects beyond a specific
>> size fail. Including those in Common Lisp :-)
>
> Indeed. But since Common Lisp code is at least 10 times more compact
> than other languages, there are very few CL programs that go beyond
> that specific size. That's why in CL the percentage of successful
> software projects is higher.
Unfortunately they can stil be counted on one hand :-)
S.