Re: Lisp article at IBM
- From: Tim X <timx@xxxxxxxxxxxxxxx>
- Date: Sun, 11 Feb 2007 19:19:44 +1100
Pascal Costanza <pc@xxxxxxxxx> writes:
Frank Buss wrote:
nhabedi@xxxxxxxxx wrote:
My point is that it is wishful thinking to believe that the IT
industry (whoever that is) will soon lose interest in Java just
because Steve Jobs doesn't like it anymore - no matter how many iPods
and iPhones Apple sells.
And one reason why Lisp isn't as popular as Java is because it is difficult
to write platform independant programs with a GUI in Lisp and you have to
do some reasearch before you find the right library for e.g. network
connections, which is standard in Java and Python. There are some GUI
frameworks, like LTK and the lispbuilder libraries, but it is still
difficult to create one-click-installable applications with it. With Java
you just distribute a JAR file and that's all. On Windows some users have
to download Java, first, too start it, but it has a simple installer and on
some computers it is pre-installed, like on some Dell and Lenovo computers.
Not quite. See for example
http://www.artima.com/weblogs/viewpost.jsp?thread=193593 - especially the
section about "The Installation Problem" (and this is from a guy who actually
likes Java).
(One problem with users of non-mainstream languages is that they seem to
believe that many infrastructure issues are greener on the other side, while
that is actually not the case.)
Maybe a good idea would be something like a platform and Lisp
implementation independant byte code layer for Lisp. On top of this
something like application archives could be defined, like the Java JAR
files. Different Lisp implementations could still provide different
high-level features or different byte code JIT compilers, but once you have
a byte code file, it runs on every system and Lisp implementation.
Bytecodes are a very bad distribution format. See for example
http://www.ics.uci.edu/~franz/Site/pubs-pdf/C05.pdf for some reasons. It is
indeed the case that the JVM has to reconstruct information from bytecodes that
would be easy to obtain from an AST in order to perform optimizations.
Based on this observation, the best distribution format for Lisp code is
minimally compiled Lisp as defined in
http://www.lispworks.com/documentation/HyperSpec/Body/03_bbb.htm - or maybe
even just plain source code...
to some extent, I suspect one significant reason we (the lisp user community)
has problems getting increased acceptance/support from the IT community is
because we have too many smart users with strong theoretical grounding. It
often seems that every suggestion for improvement ends up in a thread debating
every small issue and ends up going nowhere. this is not a negative criticism
and debate is important. Most of the time, the issues raised are valid and need
to be considered. However, it does seem that the result is extremely
slow progress. I sometimes wonder if we do get caught up in the small (but
important) details and miss the big picture and whether we would be better off
adopting a more pragmatic "full speed ahead and damn the torpedoes" attitude
and what that would cost in the long run.
It is possible part of the problem here is that lisp is so powerful and one of
the few languages which is able to adapt to the complexities of the real world
with such ease and elegance. Often it seems that change will either lose some
of this power or elegance or, as a result of having such a powerful
combination, there are just too many alternatives to get community consensus.
Maybe its simply we don't have a benevolent dictator that is able to monitor
debate and when they feel there has been enough make a decision which is
accepted as final (noting of course that I'd be pretty upset if some aspect of
the language I loved was changed because some dictator made a decision to do
so).
While I'd love to be using lisp at work, I'm skeptical we will ever see it as
one of the maintstream development platforms. However, i have a similar
attitude to this as to the development of GNU linux as a mainstream operating
system. While I like both a lot and think they should have wider acceptance
than they do, I don't really care if they don't. I'm pleased I have lisp to
code with and I'm pleased I have GNU Linux, but if the rest of the world cannot
see the advantages, well, thats their loss and I'd rather keep things as they
are than sacrifice power, elegance or reliability simply to see increased
popularity. I'd rather not have a portable networking library if its not as
good as one I can write myself, I'd rather distribute source code if machine
independent byte code made things as clunky, slow or ugly as java and I'd
rather have a world with a lot of different lisp dialects than one unified, but
crippled or restricted "standard" and accepted version.
another point is that the real acid test is success. GNU Linux has been quite
successful in the server environment because it provides a reliable OS on
commodity hardware that avoids many of the issues with Windows and isn't as
expensive as *nixes like Solaris. GNU Linux has not been as successful on the
desktop because, from the average end-user perspective, its not as easy to use
or allow simple easy access to common requirements, such as accessing different
multimedia content or collaborate with the majority of users using Office etc.
Likewise, while there are a few success stories based on lisp, these seem very
insignificant when compared to the number of success stories for other
languages. If the rest of the industry is to be convinced regarding the
superiority of lisp, then someone had better come up with the goods. However,
there is a significant problem here. Software has become large, complex and
feature rich. The day of the single developer creating a multi-million dollar
success story coding a killer app are pretty much gone. These days, you need
significant venture capital and a bloody good original idea (and a team of good
developers). However, venture capitalists are conservative by nature and
obtaining significant investment for something written in lisp is a lot harder
than attempting the same with a trendier language with recent success stories.
I even heard that many venture capitalists these days won't consider your
proposal unless you also plan to out source the development to India/Chaina -
apparently the reasoning goes that most start-ups fail and as its half the cost
to do development in India, this means it will fail for half the cost. Rather
simplistic and misleading analysis in my view, but my opinion is irrelevant
since I'm not a venture capitalist. There is also the problem that business
really doesn't care how elegant, efficient or even extensible your application
and evelopment platform are. All business cares about is that the application
solves the problem and does it today - it doesn't matter if its slow, requires
more processing power, storage or maintenance, it just needs to solve the
problem. Its efficiency, elegance or probable usable life is irrelevant udner
todays management paradigm - just as long as its here today and words to
address the problem now is all that matters. Like other aspects of modern
society, form is often sacrificed for function - look at all the ugly houses
built today. Even if you wanted to build one that is both functional and
attractive, your going to have a hard time because you can't get the raw
materials or the skilled trades people to build it unless your willing to put
in significantly higher investment. Even when you do, your likely to run into
local government planning restrictions or zoneing problems - for IT, replace
planning/zoneing with patent and copyright!
Tim
--
tcross (at) rapttech dot com dot au
.
- Follow-Ups:
- Re: Lisp article at IBM
- From: Juan R.
- Re: Lisp article at IBM
- From: Pascal Costanza
- Re: Lisp article at IBM
- From: mark.hoemmen@xxxxxxxxx
- Re: Lisp article at IBM
- References:
- Lisp article at IBM
- From: Bill Atkins
- Re: Lisp article at IBM
- From: Ken Tilton
- Re: Lisp article at IBM
- From: Pascal Costanza
- Re: Lisp article at IBM
- From: nhabedi
- Re: Lisp article at IBM
- From: Espen Vestre
- Re: Lisp article at IBM
- From: nhabedi
- Re: Lisp article at IBM
- From: Frank Buss
- Re: Lisp article at IBM
- From: Pascal Costanza
- Lisp article at IBM
- Prev by Date: Re: Lisp article at IBM
- Next by Date: Re: Lisp, Web server, Glue
- Previous by thread: Re: Lisp article at IBM
- Next by thread: Re: Lisp article at IBM
- Index(es):
Relevant Pages
|
|