What Lisp needs to beat Java, etc.

323 views
Skip to first unread message

Aaron K . Johnson

unread,
Nov 23, 2000, 3:00:00 AM11/23/00
to

Hello friends,

It occurs to me that lesser languages like Java, etc. succeed in
the modern world where Lisp seems like a computer science lesson from days
of old because they have, or are perceived to have, an easy way to
write/design a GUI, and to integrate well with low-level OS
libraries/functions. I love Lisp, but there are things that I would never
attempt with it that I would do in a snap with Python (actually a great
language). I could use TK or WxPython to design a GUI frontend to my
functions in less than an hour. Java, Python, Perl, Tcl/Tk etc. also are
"web aware", i.e. they acknowledge that for a language to be "hot", it has
to appeal to the web-using public, and be usable for the web by the
web-using public.
When Lisp gets its elegance across, as well as having easy access
to all the things people like about things like Tcl/Tk, Java, Perl,
Python; and not just obscure kits like Garnet, etc. (One of the problems
is that various implementations go different lengths to provide such
functionality--Java sucks, but at least you know what you're getting and
what you're able to do with it!) There's only one Python, Perl, and
Tcl/Tk, and that helps them stay central and release one version of the
language--not the fragmented state of affairs that both Lisp as a language
and Linux as an OS suffer.

Aaron Johnson.

Fernando Rodríguez

unread,
Nov 23, 2000, 3:00:00 AM11/23/00
to
On Thu, 23 Nov 2000 08:52:14 -0600, "Aaron K . Johnson" <a...@21stcentury.net>
wrote:

>
>Hello friends,
>
> It occurs to me that lesser languages like Java, etc. succeed in
>the modern world where Lisp seems like a computer science lesson from days
>of old because they have, or are perceived to have, an easy way to
>write/design a GUI, and to integrate well with low-level OS

CAPI, CLIM, Common Graphics and whatever gui toolkit MCL has aren't
enough? :-)

>libraries/functions. I love Lisp, but there are things that I would never
>attempt with it that I would do in a snap with Python (actually a great

Obviously, since Python and CL are very different languages with
different goals. Python is a scripting language, great for quick sysadmin
wizardry, but not for building big, complex apps. Use both. :-)

>language). I could use TK or WxPython to design a GUI frontend to my
>functions in less than an hour. Java, Python, Perl, Tcl/Tk etc. also are
>"web aware", i.e. they acknowledge that for a language to be "hot", it has
>to appeal to the web-using public, and be usable for the web by the
>web-using public.

Well... yes, some _standard_ support for doing web stuff would be
nice.


>what you're able to do with it!) There's only one Python, Perl, and
>Tcl/Tk, and that helps them stay central and release one version of the
>language--not the fragmented state of affairs that both Lisp as a language
>and Linux as an OS suffer.

I don't think so: there's plenty of implementations of c and c++ and
they're freaking popular; there's only one Windows and it doesn't make things
easier for it's users... :-P

//-----------------------------------------------
// Fernando Rodriguez Romero
//
// frr at mindless dot com
//------------------------------------------------

Rainer Joswig

unread,
Nov 23, 2000, 3:00:00 AM11/23/00
to
In article
<Pine.LNX.4.21.00112...@ajohnson.21stcentury.net>,
"Aaron K . Johnson" <a...@21stcentury.net> wrote:

> Hello friends,
>
> It occurs to me that lesser languages like Java, etc. succeed in
> the modern world where Lisp seems like a computer science lesson from days
> of old because they have, or are perceived to have, an easy way to
> write/design a GUI, and to integrate well with low-level OS

> libraries/functions. I love Lisp, but there are things that I would never
> attempt with it that I would do in a snap with Python (actually a great

> language). I could use TK or WxPython to design a GUI frontend to my
> functions in less than an hour.

Why does it take so long? On my Mac I use either the interactive
interface builder or a GUI description tool like CLIM.

> Java, Python, Perl, Tcl/Tk etc. also are
> "web aware", i.e. they acknowledge that for a language to be "hot", it has
> to appeal to the web-using public, and be usable for the web by the
> web-using public.

That's what I use CL-HTTP for.

> When Lisp gets its elegance across, as well as having easy access
> to all the things people like about things like Tcl/Tk, Java, Perl,
> Python; and not just obscure kits like Garnet, etc.

> (One of the problems
> is that various implementations go different lengths to provide such
> functionality--Java sucks, but at least you know what you're getting and

> what you're able to do with it!) There's only one Python, Perl, and
> Tcl/Tk

There is not one implementation of those that comes near
the performance of commercial Lisp implementations. If you
are a script kiddie - go use PERL. If you want to be a programmer,
use Common Lisp.

--
Rainer Joswig, Hamburg, Germany
Email: mailto:jos...@corporate-world.lisp.de
Web: http://corporate-world.lisp.de/

Rainer Joswig

unread,
Nov 23, 2000, 3:00:00 AM11/23/00
to
In article <goeq1tg0lu6qm2rpd...@4ax.com>, Fernando
Rodr?guez <spa...@must.die> wrote:

> On Thu, 23 Nov 2000 08:52:14 -0600, "Aaron K . Johnson" <a...@21stcentury.net>


> wrote:
>
> >
> >Hello friends,
> >
> > It occurs to me that lesser languages like Java, etc. succeed in
> >the modern world where Lisp seems like a computer science lesson from days
> >of old because they have, or are perceived to have, an easy way to
> >write/design a GUI, and to integrate well with low-level OS
>

> CAPI, CLIM, Common Graphics and whatever gui toolkit MCL has aren't
> enough? :-)

The Macintosh GUI toolkit is amazingly simple and powerful. Digitool
ships almost all of their Lisp system in source code (you
get the full source code for everything GUI related: editor,
interface builder, graphics functionality, inpector,
backtrace). If you look at the contrib directory at
ftp.digitool.com or on the MCL CDROM, you will find literally
MEGABYTES of cool extensions. MCL has stuff to interface
to MIDI, control video disk players, full access to
QuickTime (people have been programming authoring environments
in MCL), speech I/O, QuickDraw 3d, business graphics,
drag&drop, diverse browers, ...

Georges KO

unread,
Nov 23, 2000, 12:45:39 PM11/23/00
to
"Aaron K . Johnson" <a...@21stcentury.net> wrote :

> It occurs to me that lesser languages like Java, etc. succeed


> in the modern world where Lisp seems like a computer science lesson
> from days of old because they have, or are perceived to have, an easy
> way to write/design a GUI, and to integrate well with low-level OS

> libraries/functions.

Java, Python, Perl, VB, etc. succeed because of their libraries:
I'm not talking of libraries supporting the language (à la Common
Lisp), but libraries for GUIs, databases, Internet, etc...

> I love Lisp, but there are things that I would never attempt with it
> that I would do in a snap with Python (actually a great language). I
> could use TK or WxPython to design a GUI frontend to my functions in

> less than an hour. Java, Python, Perl, Tcl/Tk etc. also are "web


> aware", i.e. they acknowledge that for a language to be "hot", it
> has to appeal to the web-using public, and be usable for the web by
> the web-using public.

As Kent Pitman said, (implementations of) Common Lisp should annex
these libraries. As these languages have an interactive mode, they
may be used by Lisp as interfaces to these libraries by generating
code for that language (cf Erik Naggum in
<31838671...@naggum.net>) and communicating through pipes,
sockets, ... For example, you could say:

(setq data (py:call (urllib (urlopen url) (read))))

to tell Python to return you the result of:

urllib.urlopen(url).read()

where `url' is actually replaced by the value of the Lisp variable
`url'.

Here is a POP protocol example (from the book Learning Python):

from poplib import *
server = POP3('mailserver.spam.org')
print server.getwelcome()
server.user('da')
server.pass_('youllneverguess')

|
|
V

(py:import poplib *)
(py:set server (py:call '(POP3 "mailserver.spam.org"))) ;; `server` is a
(format t "~A" (py:call '(server (getwelcome))) ;; variable in
(py:call '(server (user "da"))) ;; the Python world
(py:call '(server (pass_ "youllneverguess")))

Of course, from here, you can write things like :

(with-pop-account (account "mailserver.spam.org" "da" "youllneverguess")
...))

or wrap the whole stuff in nice packages...

The `glue' would deal with conversions between data structures :

(py:call '((range 1 10))) Lisp world

|
V

range(1, 10) Python world

|
V

[1, 2, 3, 4, 5, 6, 7, 8, 9] Python world

|
V

'(1 2 3 4 5 6 7 8 9) Lisp world

> When Lisp gets its elegance across, as well as having easy
> access to all the things people like about things like Tcl/Tk, Java,
> Perl, Python; and not just obscure kits like Garnet, etc. (One of the
> problems is that various implementations go different lengths to
> provide such functionality--Java sucks, but at least you know what
> you're getting and what you're able to do with it!)

Actually, if stuff described above could be achieved with Perl,
Tcl/Tk, Java, etc. as well, then Lisp would be the Emacs of the
languages ! The language stack would then be :

_____________________________________________
| |
| Lisp |
|_____________________________________________|
| | | | | | |
| | Perl+ | Java+ | Python | Tcl/Tk | What |
| | libs | libs | + libs | + libs | Ever |
| |_______|_______|________|________|______|
| |
| C |
|_____________________________________________|

As (new) languages become more and more interactive, Lisp can
easily talk to all these languages and use their libraries...

> There's only one Python, Perl, and Tcl/Tk, and that helps them stay


> central and release one version of the language--not the fragmented
> state of affairs that both Lisp as a language and Linux as an OS
> suffer.

What's important is that they keep interfacing with all the new
technologies so that Lispers can annex them without having to learn
new languages. Let them work for us: use the libs, dump the
languages !
--
Georges KO (Taipei, Taiwan) g...@gko.net
Décade I, Tridi de Frimaire de l'Année 209 de la Révolution

akjm...@my-deja.com

unread,
Nov 23, 2000, 10:19:40 PM11/23/00
to
In article <joswig-706D70....@news.is-europe.net>,

Rainer Joswig <jos...@corporate-world.lisp.de> wrote:
> In article <goeq1tg0lu6qm2rpd...@4ax.com>, Fernando
> Rodr?guez <spa...@must.die> wrote:
>
> > On Thu, 23 Nov 2000 08:52:14 -0600, "Aaron K . Johnson"
<a...@21stcentury.net>
> > wrote:
> >
> > >
> > >Hello friends,

> > >
> > > It occurs to me that lesser languages like Java, etc. succeed in
> > >the modern world where Lisp seems like a computer science lesson
from days
> > >of old because they have, or are perceived to have, an easy way to
> > >write/design a GUI, and to integrate well with low-level OS
> >
> > CAPI, CLIM, Common Graphics and whatever gui toolkit MCL has
aren't
> > enough? :-)
>
> The Macintosh GUI toolkit is amazingly simple and powerful. Digitool
> ships almost all of their Lisp system in source code (you
> get the full source code for everything GUI related: editor,
> interface builder, graphics functionality, inpector,
> backtrace). If you look at the contrib directory at
> ftp.digitool.com or on the MCL CDROM, you will find literally
> MEGABYTES of cool extensions. MCL has stuff to interface
> to MIDI, control video disk players, full access to
> QuickTime (people have been programming authoring environments
> in MCL), speech I/O, QuickDraw 3d, business graphics,
> drag&drop, diverse browers, ...
>

sound great- wish I could say that there were something Lisp provided
to us linuxers like that- there'd be no reason for any other languages!

aaron.

> --
> Rainer Joswig, Hamburg, Germany
> Email: mailto:jos...@corporate-world.lisp.de
> Web: http://corporate-world.lisp.de/
>


Sent via Deja.com http://www.deja.com/
Before you buy.

akjm...@my-deja.com

unread,
Nov 23, 2000, 10:15:10 PM11/23/00
to
In article <goeq1tg0lu6qm2rpd...@4ax.com>,

Fernando Rodríguez <spa...@must.die> wrote:
> Obviously, since Python and CL are very different languages with
> different goals. Python is a scripting language, great for quick
sysadmin
> wizardry, but not for building big, complex apps. Use both. :-)
>

Look at www.python.org for a listing of python success stories. i think
you'll find that Python is quite robust and capable of very large apps.

> >language). I could use TK or WxPython to design a GUI frontend to my
> >functions in less than an hour. Java, Python, Perl, Tcl/Tk etc. also
are
> >"web aware", i.e. they acknowledge that for a language to be "hot",
it has
> >to appeal to the web-using public, and be usable for the web by the
> >web-using public.
>

> Well... yes, some _standard_ support for doing web stuff would
be
> nice.
>

> >what you're able to do with it!) There's only one Python, Perl, and


> >Tcl/Tk, and that helps them stay central and release one version of
the
> >language--not the fragmented state of affairs that both Lisp as a
language
> >and Linux as an OS suffer.
>

> I don't think so: there's plenty of implementations of c and


c++ and
> they're freaking popular; there's only one Windows and it doesn't
make things
> easier for it's users... :-P

C/C++ is popular for 2 reasons- speed, and OS functionality. (and i
suppose public gullibility ;) )

>
> //-----------------------------------------------
> // Fernando Rodriguez Romero
> //
> // frr at mindless dot com
> //------------------------------------------------
>

akjm...@my-deja.com

unread,
Nov 23, 2000, 10:22:37 PM11/23/00
to
In article <m3y9yae...@symbiose.gko.net>,

Georges KO <g...@gko.net> wrote:
> Java, Python, Perl, VB, etc. succeed because of their libraries:
> I'm not talking of libraries supporting the language (à la Common
> Lisp), but libraries for GUIs, databases, Internet, etc...

I agree 100%

> Actually, if stuff described above could be achieved with Perl,
> Tcl/Tk, Java, etc. as well, then Lisp would be the Emacs of the
> languages ! The language stack would then be :
>
> _____________________________________________
> | |
> | Lisp |
> |_____________________________________________|
> | | | | | | |
> | | Perl+ | Java+ | Python | Tcl/Tk | What |
> | | libs | libs | + libs | + libs | Ever |
> | |_______|_______|________|________|______|
> | |
> | C |
> |_____________________________________________|
>
> As (new) languages become more and more interactive, Lisp can
> easily talk to all these languages and use their libraries...

.
>
> What's important is that they keep interfacing with all the new
> technologies so that Lispers can annex them without having to learn
> new languages. Let them work for us: use the libs, dump the
> languages !

cool- but will we lose some speed doing all those foreign language
calls that are not to C libs?

Aaron.

> --
> Georges KO (Taipei, Taiwan)
g...@gko.net
> Décade I, Tridi de Frimaire de l'Année 209 de la
Révolution
>

Kent M Pitman

unread,
Nov 23, 2000, 11:49:21 PM11/23/00
to
akjm...@my-deja.com writes:

> cool- but will we lose some speed doing all those foreign language
> calls that are not to C libs?

I personally never recommended not calling a C lib. I've merely observed
that there was no C lib to call in many cases and said it's better to
call something than to say "we don't have that". And I think Java has
tons more off the shelf solutions than does C, with new ones appearing
all the time.

Java sucks as an implementation language, IMO, but that's objectively not
enough to stop people from programming in it. And if we don't want to find
ourselves programming in it, then we'd better not ignore the fact that others
are willing to. We can't keep up, except by tying ourselves to it in a way
that makes innovations to it available to us in realtime. If there's a time
lag, we're screwed because we're doomed to be forever at a temporal
disadvantage and not usable as a leading edge tool. If there's no time lag
in accessing cool things, the slowness of an occasional callout (which is
O(1) loss in speed in most cases) can be compensated by the smartness of
other Lisp facilities and even by intangibles like Lisp's ability to debug
things quickly and deliver better "time to market".

Patrick W

unread,
Nov 24, 2000, 1:32:22 AM11/24/00
to

"Kent M Pitman" <pit...@world.std.com> wrote in message
news:sfwr942...@world.std.com...

> Java sucks as an implementation language, IMO, but that's objectively not
> enough to stop people from programming in it. And if we don't want to
find
> ourselves programming in it, then we'd better not ignore the fact that
others
> are willing to.
>
> We can't keep up, except by tying ourselves to it in a way
> that makes innovations to it available to us in realtime.

By making it available to "us", it would make Lisp more available to "them".
That's a win, whichever way you look at it.

Perhaps of the two, the latter is the more important in the long run.

Jochen Schmidt

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
Some day ago I had following idea:

In UNIX versions of the free CLs (CLISP,CMUCL) we can find several
GUI-Toolkits that talk down a socket to a GUI-Server.
The systems I know of are CLM, CLX and cl-gtk (which is outdated).
While reaching some portability over CL-implementations through
the use of the socket-connection, we have no real
cross-plattform-capabilities by using CLM or CLX (Add itionally we have the
fact that this toolkits are ugly compared to higher or more "Lispy"
toolkits like CAPI)
So why not building a GUI-Server in wxWindows - which would run nice on
win32, Linux(Motif), Linux(GTK) and so far I know on BeOS and MacOS too.
wxWindows doesn't provide only GUI it provides us also with a very good
socket-interface (on all supported plattforms).
Most parts would be written on the Lisp side using the GUI-Server whenever
something has to go concrete.
I would prefer a very simple approuch like LispWorks CAPI (or simpler for
the beginnigs).
IMHO if we concentrate on simplicity we could have it in _very_ short time.

What would we get:
A real crossplattform GUI-Toolkit for:

- Linux, Win32, MacOS, BeOS
- Most free and commercial Lisps (e. g. CLISP, CMUCL, ACL, Lispworks...)
- Network distributed GUI (similar to X11 but on a much higher level)

What do you think upon that?

Regards,

Jochen


Aaron K . Johnson wrote:

>
> Hello friends,
>
> It occurs to me that lesser languages like Java, etc. succeed in
> the modern world where Lisp seems like a computer science lesson from days
> of old because they have, or are perceived to have, an easy way to
> write/design a GUI, and to integrate well with low-level OS

> libraries/functions. I love Lisp, but there are things that I would never


> attempt with it that I would do in a snap with Python (actually a great

> language). I could use TK or WxPython to design a GUI frontend to my
> functions in less than an hour. Java, Python, Perl, Tcl/Tk etc. also are
> "web aware", i.e. they acknowledge that for a language to be "hot", it has
> to appeal to the web-using public, and be usable for the web by the
> web-using public.

> When Lisp gets its elegance across, as well as having easy access
> to all the things people like about things like Tcl/Tk, Java, Perl,
> Python; and not just obscure kits like Garnet, etc. (One of the problems
> is that various implementations go different lengths to provide such
> functionality--Java sucks, but at least you know what you're getting and

> what you're able to do with it!) There's only one Python, Perl, and
> Tcl/Tk, and that helps them stay central and release one version of the
> language--not the fragmented state of affairs that both Lisp as a language
> and Linux as an OS suffer.
>

> Aaron Johnson.
>
>

Tim Bradshaw

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
akjm...@my-deja.com writes:

> C/C++ is popular for 2 reasons- speed, and OS functionality. (and i
> suppose public gullibility ;) )
>

I think you really mean `speed of the 10 line programs that fit in 1st
level cache that are all people ever benchmark'. Certainly I don't
think you can mean `speed of delivered large applications': I've used
some impressively slow C++ applications.

--tim

Kellom{ki Pertti

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
Jochen Schmidt <j...@dataheaven.de> writes:
> So why not building a GUI-Server in wxWindows - which would run nice on
> win32, Linux(Motif), Linux(GTK) and so far I know on BeOS and MacOS too.
> wxWindows doesn't provide only GUI it provides us also with a very good
> socket-interface (on all supported plattforms).

If you plan to go that way, why not use Java? It seems that the push
in GUI is in that front nowadays. Moreover, if you want some parts of
the application to run on the GUI server (a'la NeWS), then I would
quite prefer Java to C++ when extending the server.
--
Pertti Kellom\"aki, Tampere Univ. of Technology, Software Systems Lab

Georges KO

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
Kent M Pitman <pit...@world.std.com> wrote:

> > cool- but will we lose some speed doing all those foreign language
> >calls that are not to C libs?

Well, you can write code in that language, much like when you want
to write some parts in C to speed up things, and ask the interpreter
to load it at startup.

> I personally never recommended not calling a C lib. I've merely
> observed that there was no C lib to call in many cases and said it's
> better to call something than to say "we don't have that". And I
> think Java has tons more off the shelf solutions than does C, with new
> ones appearing all the time.

The nature of the "dialog" with C and the other languages are not
of the same nature: with C, it would be by using the classic FFI
approach, whereas with the higher level, the dialog would be through
socket, pipe, whatever: the later has the advantage of not having to
touch the Lisp side when a new module is added to a "slave" language:
you can call it in that language, you can call it in Lisp.

> Java sucks as an implementation language, IMO, but that's objectively
> not enough to stop people from programming in it. And if we don't
> want to find ourselves programming in it, then we'd better not ignore
> the fact that others are willing to. We can't keep up, except by
> tying ourselves to it in a way that makes innovations to it available
> to us in realtime. If there's a time lag, we're screwed because we're
> doomed to be forever at a temporal disadvantage and not usable as a
> leading edge tool.

By having this bridge mechanism, the other languages would do the
dirty job for us.

> If there's no time lag in accessing cool things, the slowness of an
> occasional callout (which is O(1) loss in speed in most cases) can
> be compensated by the smartness of other Lisp facilities and even by
> intangibles like Lisp's ability to debug things quickly and deliver
> better "time to market".

Example: how to get GTK bindings in Common Lisp?

Well, there's a Lisp called librep that binds GTK, so if librep
can be annexed (can be talked to from your Common Lisp
implementation), then GTK would be yours and whenever a better librep
comes out, you just upgrade librep... And if the librep bindings suck,
then you can turn into Python's version... without upgrading anything
on your Lisp side...

That's great, it means that we would have actually MORE choices
than if we were programming in one specific language !

Imagine a Lisp application using Python (libs) to fetch mail, Java
(libs) for the GUI and Perl (libs) for database access stuff :-) or
whatever ...


--
Georges KO (Taipei, Taiwan) g...@gko.net

Décade I, Quartidi de Frimaire de l'Année 209 de la Révolution

Jochen Schmidt

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
Kellom{ki Pertti wrote:

> Jochen Schmidt <j...@dataheaven.de> writes:
> > So why not building a GUI-Server in wxWindows - which would run nice on
> > win32, Linux(Motif), Linux(GTK) and so far I know on BeOS and MacOS too.
> > wxWindows doesn't provide only GUI it provides us also with a very good
> > socket-interface (on all supported plattforms).
>
> If you plan to go that way, why not use Java? It seems that the push
> in GUI is in that front nowadays. Moreover, if you want some parts of
> the application to run on the GUI server (a'la NeWS), then I would
> quite prefer Java to C++ when extending the server.

There are several reasons why I've not chosen Java:

- It is not planned to run parts of the application on the GUI server (as
you mentioned)
- Native Look: wxWindows is using the native look of the several platforms.
- Speed: You can say what you want, actual Java GUIs are _really_ slow
(particularily those written with swing)
- Because I prefer C++ over Java.

But - and there's the point - if someone jumps in to collaborate I could
also live with a Java-Solution. The sideeffect of collaboration would be
that it is much more likely that we end with an working program.

My aim would be to integrate this GUI-Toolkit as good in the several Lisps
I can. At the best there should be no difference between this solution and
e. g. an inbuilt toolkit like CAPI in LispWorks.

Regards,
Jochen Schmidt

Espen Vestre

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
Jochen Schmidt <j...@dataheaven.de> writes:

> - Speed: You can say what you want, actual Java GUIs are _really_ slow

several serious java programmers I've talked have no problems admitting
that java is not suitable for serious GUIs. "BUT", they tend to add,
"it's perfect for servers". However, the java servers I've seen so far
that have really been put to stress tests (real life stress tests,
running on really heavy Sun iron serving a *lot* of clients), have
performed almost unbelievably lousy.
--
(espen)

Aaron K . Johnson

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to

On Fri, 24 Nov 2000, Jochen Schmidt wrote:

> Some day ago I had following idea:
>
> In UNIX versions of the free CLs (CLISP,CMUCL) we can find several
> GUI-Toolkits that talk down a socket to a GUI-Server.
> The systems I know of are CLM, CLX and cl-gtk (which is outdated).
> While reaching some portability over CL-implementations through
> the use of the socket-connection, we have no real
> cross-plattform-capabilities by using CLM or CLX (Add itionally we have the
> fact that this toolkits are ugly compared to higher or more "Lispy"
> toolkits like CAPI)

> So why not building a GUI-Server in wxWindows - which would run nice on
> win32, Linux(Motif), Linux(GTK) and so far I know on BeOS and MacOS too.
> wxWindows doesn't provide only GUI it provides us also with a very good
> socket-interface (on all supported plattforms).

> Most parts would be written on the Lisp side using the GUI-Server whenever
> something has to go concrete.
> I would prefer a very simple approuch like LispWorks CAPI (or simpler for
> the beginnigs).
> IMHO if we concentrate on simplicity we could have it in _very_ short time.
>
> What would we get:
> A real crossplattform GUI-Toolkit for:
>
> - Linux, Win32, MacOS, BeOS
> - Most free and commercial Lisps (e. g. CLISP, CMUCL, ACL, Lispworks...)
> - Network distributed GUI (similar to X11 but on a much higher level)
>
> What do you think upon that?
>
> Regards,
>
> Jochen
>

Jochen and Lispers-

Sounds great. I know so little about how we'd go about coding it.
Is there some sort of documentation about how to begin getting Lisp to
talk to wxWindows. I've used wxPython, and found it to be a faster,
slightly less good-looking version of Tk. My dream-Tk without Tcl slowing
it down, so something like TkInter for Python, but for Lisp. Note that
TkInter still suffers from making calls to Tcl. I never understood why the
Python developers went the route of TkInter instead of wxPython from the
start. After all, since Python is so much better that Tcl in every way,
why rely on Tcl for Gui stuff?
Anyway, is it even possible to make low-level calls to Tk from
another language without Tcl? This would be the cross-platform dream for
Lispers!

Aaron.


Aaron K . Johnson

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to

On 24 Nov 2000, Tim Bradshaw wrote:

> akjm...@my-deja.com writes:
>
> > C/C++ is popular for 2 reasons- speed, and OS functionality. (and i
> > suppose public gullibility ;) )
> >
>

> I think you really mean `speed of the 10 line programs that fit in 1st
> level cache that are all people ever benchmark'. Certainly I don't
> think you can mean `speed of delivered large applications': I've used
> some impressively slow C++ applications.
>
> --tim
>

Apparently, I'm told this is because C was forced into something it was
never meant to do in the first place: Object-Oriented programming.
BTW, I find the whole OO paradigm sort of an annoying catch-phrase
phenomenon that has turned me off to really investigating it, other than
being forced to use it in wxPython.....

-Aaron

Aaron K . Johnson

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to

>
> Example: how to get GTK bindings in Common Lisp?
>
> Well, there's a Lisp called librep that binds GTK, so if librep
> can be annexed (can be talked to from your Common Lisp
> implementation), then GTK would be yours and whenever a better librep
> comes out, you just upgrade librep... And if the librep bindings suck,
> then you can turn into Python's version... without upgrading anything
> on your Lisp side...
>
> That's great, it means that we would have actually MORE choices
> than if we were programming in one specific language !
>
> Imagine a Lisp application using Python (libs) to fetch mail, Java
> (libs) for the GUI and Perl (libs) for database access stuff :-) or
> whatever ...
> --
> Georges KO (Taipei, Taiwan) g...@gko.net
> Décade I, Quartidi de Frimaire de l'Année 209 de la Révolution
>

I still have a bad taste in my mouth from the crawl-speed of things like
STk, that I'm skeptical of the language intercommunication
approach. Again, this is a subjective observation- I don't have
benchmarks.

-Aaron

Pierre R. Mai

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
Jochen Schmidt <j...@dataheaven.de> writes:

> In UNIX versions of the free CLs (CLISP,CMUCL) we can find several
> GUI-Toolkits that talk down a socket to a GUI-Server.
> The systems I know of are CLM, CLX and cl-gtk (which is outdated).

Actually CLX works differently: CLX is the CL equivalent of xlib,
i.e. it talks X protocol directly to the X server. This is a direct
consequence of the fact that X11 had been intended to be used
cross-language from the beginning, without having to go through ugly
foreign function interfaces. Sadly this idea was lost later on, when
most widget sets need to be linked to directly.

> While reaching some portability over CL-implementations through
> the use of the socket-connection, we have no real
> cross-plattform-capabilities by using CLM or CLX (Add itionally we have the
> fact that this toolkits are ugly compared to higher or more "Lispy"
> toolkits like CAPI)

CMUCL's CLM can be made quite similar to CAPI with the use of a couple of
convenience macros. Of course you still have to use CLX instead of GP
for the low-level stuff, should that be needed.

The problems I've found with CMUCL's CLM (which is a different
implementation than the portable CLM part of GINA) is that the server
is not very stable when compiled with LessTif, and is slow as a dog
when compiled with a real Motif.

> What would we get:
> A real crossplattform GUI-Toolkit for:
>
> - Linux, Win32, MacOS, BeOS
> - Most free and commercial Lisps (e. g. CLISP, CMUCL, ACL, Lispworks...)
> - Network distributed GUI (similar to X11 but on a much higher level)
>
> What do you think upon that?

I'd think this would be a nice project for someone, so get started
already ;)

Regs, Pierre.

--
Pierre R. Mai <pm...@acm.org> http://www.pmsf.de/pmai/
The most likely way for the world to be destroyed, most experts agree,
is by accident. That's where we come in; we're computer professionals.
We cause accidents. -- Nathaniel Borenstein

john...@my-deja.com

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
In article <sfwr942...@world.std.com>,

Kent M Pitman <pit...@world.std.com> wrote:
> akjm...@my-deja.com writes:
>
> > cool- but will we lose some speed doing all those foreign language
> > calls that are not to C libs?
>
> I personally never recommended not calling a C lib. I've merely
observed
> that there was no C lib to call in many cases and said it's better to
> call something than to say "we don't have that". And I think Java has
> tons more off the shelf solutions than does C, with new ones appearing
> all the time.

I am learning Lisp. I have a pretty good grasp of C, Python, and Perl.
I really think that Lisp lends itself to many programs I previously
wrote with the languages I mentioned, but I cannot find a Lisp library
that provides basic networking facilities that are needed to write the
type of programs I want to. I looked at clocc
<http://clocc.sourceforge.net>, but it has almost no documentation or
examples that come with it, and I cannot get it to work. I found many
networking libraries for Scheme (SLIB and libraries in Bigloo) but I
want to use Common Lisp. I know there must be certain libraries like
this, because I heard of people using CL to write network programs -- do
you know of any?

Thanks,
-- John

Stock Crack

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to
"Aaron K . Johnson" <a...@21stcentury.net> wrote in message
news:Pine.LNX.4.21.00112...@ajohnson.21stcentury.net...

>
> Hello friends,
>
> It occurs to me that lesser languages like Java, etc. succeed in
> the modern world where Lisp seems like a computer science lesson from days
> of old because they have, or are perceived to have, an easy way to
> write/design a GUI, and to integrate well with low-level OS
> libraries/functions. I love Lisp, but there are things that I would never
> attempt with it that I would do in a snap with Python (actually a great
> language). I could use TK or WxPython to design a GUI frontend to my
> functions in less than an hour. Java, Python, Perl, Tcl/Tk etc. also are
> "web aware", i.e. they acknowledge that for a language to be "hot", it has
> to appeal to the web-using public, and be usable for the web by the
> web-using public.
> When Lisp gets its elegance across, as well as having easy access
> to all the things people like about things like Tcl/Tk, Java, Perl,
> Python; and not just obscure kits like Garnet, etc. (One of the problems
> is that various implementations go different lengths to provide such
> functionality--Java sucks, but at least you know what you're getting and
> what you're able to do with it!) There's only one Python, Perl, and
> Tcl/Tk, and that helps them stay central and release one version of the
> language--not the fragmented state of affairs that both Lisp as a language
> and Linux as an OS suffer.

What Lisp needs to gain more audience (still, I think, a desirable goal),
is:

1. A corporate sponsor with deep pockets and an axe to grind in the form of
a new platform; a sponsor who is willing to lose money on languages and
tools to gain platform market share. This sponsor needs to choose Lisp as
the language of choice for the new platform.

2. An updated spec so the sponsored Lisp dialect can take advantage of the
new platform's splendid characteristics.

3. Some compelling reason for people to use the new platform.

I base this conclusion on analogies to the three current popular languages,
C/C++ (Unix and to some extent Windows platforms, sponsored by AT&T and then
Microsoft), Visual Basic (Windows sponsored by Microsoft), and Java (the
Internet "platform" sponsored by Sun). Similar analogies to even older
languages could be made, such as PL/I (or whatever) for OS/360 and so on.
BTW, I believe these characterstics are necessary but not sufficient for
widespread success of a serious application programming language.

As none of those things are on the horizon, I don't think Lisp is quite out
of the trenches yet.

-- Harley

Aaron K . Johnson

unread,
Nov 24, 2000, 3:00:00 AM11/24/00
to Patrick W

On Sat, 25 Nov 2000, Patrick W wrote:

>
> "Stock Crack" <stock...@flashcom.com> wrote in message
> news:t1u932c...@corp.supernews.com...


> >
> > What Lisp needs to gain more audience (still, I think, a desirable goal),
> > is:
> >
> > 1. A corporate sponsor with deep pockets and an axe to grind in the form
> of
> > a new platform; a sponsor who is willing to lose money on languages and
> > tools to gain platform market share. This sponsor needs to choose Lisp as
> > the language of choice for the new platform.
> >
> > 2. An updated spec so the sponsored Lisp dialect can take advantage of the
> > new platform's splendid characteristics.
> >
> > 3. Some compelling reason for people to use the new platform.
> >
> > I base this conclusion on analogies to the three current popular
> languages,
> > C/C++ (Unix and to some extent Windows platforms, sponsored by AT&T and
> then
> > Microsoft), Visual Basic (Windows sponsored by Microsoft), and Java (the
> > Internet "platform" sponsored by Sun). Similar analogies to even older
> > languages could be made, such as PL/I (or whatever) for OS/360 and so on.
> > BTW, I believe these characterstics are necessary but not sufficient for
> > widespread success of a serious application programming language.
> >
> > As none of those things are on the horizon, I don't think Lisp is quite
> out
> > of the trenches yet.
>

> I think it would take much less than this to give Lisp a shot in the arm.
>
> The language stands on its own merits. People either love it or hate it, and
> those who hate it can look elsewhere - who needs them? Unfortunately those
> who love it often look elsewhere too. Those are the people who would gladly
> be persuaded to stay without corporate sponsorship or marketing slogans.
>
> I think there's little point in looking at the big issues until the small
> ones are taken into account. The reason for Lisp's lack of growth in
> popularity is very simple in my opinion.
>
> Current and future generations of good programmers are learning their craft
> with cheap and free tools on Linux and the BSDs. Suppose you're a 17 year
> old fledgeling programmer and you want to test your skill with a simple IRC
> client or a graphical logic game. You might have dabbled with clisp or cmucl
> and liked the Lisp language, but would you choose it to write your new toy?
> You'd have a hard time doing so, in spite of the the quality of the
> language.
>
> Would you then fork out for an AllegroCL license, or would you *first* think
> of using Python with Tkinter, C++ with QT or wxWindows, C with GTK+ or some
> other option instead? These other options have everything you need to build
> your toy - for nix. None of them come close to Lisp in language potency, but
> they get the simple jobs done. And from little things, big things grow ...
>
> Two simple features would attract a lot of young blood to the free Lisp
> implementations (thence onward and upward):
>
> 1. Easy gui development
> 2. Easy access to comms (web, mail, ftp, etc).
>
> I believe it really is as simple as that.
>

Excellent points. I couldn't have said it better. In particular, i believe
that Lisp needs a more centralized GUI like Tk. It should be universal,
and easy to use. When I say universal I mean EVERY Lisp implementation
should support it, so that code could be portable to any machine. That
Lisp is as popular as it is at all is a miracle (even though its truly
awesome), because most Lisp/scheme code is nowhere near being portable. I
think the portability issue and the GUI issue are of paramount importance.

Consider this from the Lisp FAQ-a list of how the different Lisps have you
save an image-

Lucid: DISKSAVE
Symbolics: Save World [CP command]
CMU CL: SAVE-LISP
Franz Allegro: EXCL:DUMPLISP (documented)
SAVE-IMAGE (undocumented)
Medley: IL:SYSOUT or IL:MAKESYS
MCL: SAVE-APPLICATION <pathname>
&key :toplevel-function :creator
:excise-compiler
:size :resources :init-file :clear-clos-caches
KCL: (si:save-system "saved_kcl")
LispWorks: LW:SAVE-IMAGE

Is it any wonder that the GUI state of things is any better?

-Aaron

Marco Antoniotti

unread,
Nov 24, 2000, 3:00:27 PM11/24/00
to

Jochen Schmidt <j...@dataheaven.de> writes:

> Kellom{ki Pertti wrote:
>
> > Jochen Schmidt <j...@dataheaven.de> writes:

> > > So why not building a GUI-Server in wxWindows - which would run nice on
> > > win32, Linux(Motif), Linux(GTK) and so far I know on BeOS and MacOS too.
> > > wxWindows doesn't provide only GUI it provides us also with a very good
> > > socket-interface (on all supported plattforms).
> >

> > If you plan to go that way, why not use Java? It seems that the push
> > in GUI is in that front nowadays. Moreover, if you want some parts of
> > the application to run on the GUI server (a'la NeWS), then I would
> > quite prefer Java to C++ when extending the server.
>
> There are several reasons why I've not chosen Java:
>
> - It is not planned to run parts of the application on the GUI server (as
> you mentioned)
> - Native Look: wxWindows is using the native look of the several platforms.

> - Speed: You can say what you want, actual Java GUIs are _really_ slow

> (particularily those written with swing)
> - Because I prefer C++ over Java.
>

Why not stick with GTK? Just curious.

--
Marco Antoniotti =============================================================
NYU Bioinformatics Group tel. +1 - 212 - 998 3488
719 Broadway 12th Floor fax +1 - 212 - 995 4122
New York, NY 10003, USA http://galt.mrl.nyu.edu/valis
Like DNA, such a language [Lisp] does not go out of style.
Paul Graham, ANSI Common Lisp

Patrick W

unread,
Nov 24, 2000, 11:03:06 PM11/24/00
to

Bruce Hoult

unread,
Nov 24, 2000, 11:31:19 PM11/24/00
to
In article <t1u932c...@corp.supernews.com>, "Stock Crack"
<stock...@flashcom.com> wrote:

> What Lisp needs to gain more audience (still, I think, a desirable goal),
> is:
>
> 1. A corporate sponsor with deep pockets and an axe to grind in
> the form of a new platform; a sponsor who is willing to lose money
> on languages and tools to gain platform market share. This sponsor
> needs to choose Lisp as the language of choice for the new platform.
>
> 2. An updated spec so the sponsored Lisp dialect can take advantage of
> the new platform's splendid characteristics.
>
> 3. Some compelling reason for people to use the new platform.

> As none of those things are on the horizon, I don't think Lisp


> is quite out of the trenches yet.


Well, Apple once started to try to do it with a Lisp-family language.
They axed the project along with many others when they started to lose
money.

Now they have a new platform coming out which, being a Unix with a
pretty face, may well be quite compelling for many people.

-- Bruce

Rainer Joswig

unread,
Nov 25, 2000, 1:40:38 AM11/25/00
to
In article
<Pine.LNX.4.21.00112...@ajohnson.21stcentury.net>,
"Aaron K . Johnson" <a...@21stcentury.net> wrote:

> Excellent points. I couldn't have said it better. In particular, i believe
> that Lisp needs a more centralized GUI like Tk. It should be universal,
> and easy to use. When I say universal I mean EVERY Lisp implementation
> should support it, so that code could be portable to any machine. That
> Lisp is as popular as it is at all is a miracle (even though its truly
> awesome), because most Lisp/scheme code is nowhere near being portable. I
> think the portability issue and the GUI issue are of paramount importance.
>
> Consider this from the Lisp FAQ-a list of how the different Lisps have you
> save an image-
>
> Lucid: DISKSAVE
> Symbolics: Save World [CP command]
> CMU CL: SAVE-LISP
> Franz Allegro: EXCL:DUMPLISP (documented)
> SAVE-IMAGE (undocumented)
> Medley: IL:SYSOUT or IL:MAKESYS
> MCL: SAVE-APPLICATION <pathname>
> &key :toplevel-function :creator
> :excise-compiler
> :size :resources :init-file :clear-clos-caches
> KCL: (si:save-system "saved_kcl")
> LispWorks: LW:SAVE-IMAGE

If this hinders you to write a Common Lisp application, I think you
should better look at another comp.lang.XXX with (not (eq XXX Lisp)).

> Is it any wonder that the GUI state of things is any better?

Take the file systems. Similar important compared to GUIs.
How does C-based software manage to open files on the different
platforms (VMS, Unix, DOS, Windows XXXX, MacOS HFS, MacOS HFS+, ...)?
Is there a standard for that? For pathnames? File attributes?
Still there seems to be plenty software that has been written,
capable of accessing a file system. Common Lisp has a unified
model of pathnames and stream-based IO - still it does not better
than C.

Actually those who manage to write commercially successful
Lisp software seem to be very silent. Those who can't are
telling us once a week.

I once wrote a small application together with a student to
access our telephone system (German Telekom Octopus) and to provide
us daily usage and billing reports. I think I developed it
on MCL and Genera. It got deployed with CLisp on a SUN Enterprise 250
- the core code ran almost unchanged for a year.
The student ported it to LispWorks on Windows. Later it got
a CLIM GUI. Despite what you are saying, carefully written Lisp
code is extremely portable and able to run for years.

I once talked to people who are maintaining an application with a
million+ (!!) lines of Lisp code. They develop on Lisp machine
and deploy on ACL. A port of this application to LispWorks
took them just three months. For a million lines of Lisp code...
Now you tell me Lisp is not portable. (The joke was when they
looked at CL-HTTP, it was a refreshingly small application for
them.)

If you, for example, use CL-HTTP you can deploy your code with a web
interface on several platforms virtually unchanged (Windows,
Unix, Mac, Lispm). John Mallery takes great care to publish
new devos as Mac, tar.gz and Lispm distribution. I often wish
there were more Lisp developers that are as fearless as he is.
Would you, when the White House asked you to write a web
application to distribute government documents, write your
own web server in Lisp, patch the Lisp machine mailer so that
it actually works, write your own document distribution system
for web and mail access in Lisp, use a CLOS database, and ***deploy***
it on a Lisp machine? Without a single line of C/Java/Perl/... code?
Sure not, you would give up *******************long************************
before, just because there are ten ways to dump a Lisp application??!!
John's approach is different: If there is an obstacle (say a bug
in a TCP interface), it gets debugged and fixed once and forever.
If there is an incompatibility in the different Lisps, he provides
a portable version. What's the result: the code he wrote runs at
the White House for several years now and the White House is actively
**using** it. The system even survived the rush hours during the
Lewinsky affair. ;-) Other used the system on different platforms
(NASA: MCL, Honda: ACL, Incops: MCL, XXX: LispWorks, ...) to
deploy complex user interfaces. Have you ever looked at the Lisp course
(http://www.psychologie.uni-trier.de:8000/elmart) that's running
in MCL+CL-HTTP over the web? This application received an "European
Academic Software Award" in 1998.

I also used Paul Meurer's ODBC interface in MCL
and LWW (works also for ACL). Code runs without any changes.

What's wrong using one of those libraries on top of CLX
for X graphics? Say CLUE, CLIO, XIT, CLIM, ...? Choose one.
Most of can be made running in any Lisp. I even once changed
CLX to run in MCL - this is work of a few hours. MCL than
will connect to an X server. If you are really interested, some
companies are offering portable Lisp GUI libraries. IISY
offered a MCL compatible GUI library for ACL, GBB is offering
"Chalkbox", even students seem to be capable of connecting
Java with Lisp (http://www.ai.mit.edu/people/cvince/date/screen-navigator.html).

To give you a last example. Here in Hamburg, a company developed a
Lisp-based application for the telephone support staff of
the local public transport system. It finds routes through
the extensive public transport system (bus, underground train, trains and
ships). The application has been prototyped and later deployed
in three versions: a) for the support staff with SUN+Screen+Keyboard,
b) SUN + touchscreen + printer using a special console that survives
unfriendly usage for the public and c) a CGI version for the web. (now there
is also a Java version for PCs). If you go to
the Hamburg Central station you will be able to use a such a public
terminal - sure nobody knows that it is written in Common Lisp + CLX.
But it is ***cool***. So damn cool.

Greg Menke

unread,
Nov 25, 2000, 2:05:31 AM11/25/00
to

> Current and future generations of good programmers are learning their craft
> with cheap and free tools on Linux and the BSDs. Suppose you're a 17 year
> old fledgeling programmer and you want to test your skill with a simple IRC
> client or a graphical logic game. You might have dabbled with clisp or cmucl
> and liked the Lisp language, but would you choose it to write your new toy?
> You'd have a hard time doing so, in spite of the the quality of the
> language.

On the other hand, sometimes you get to a point where you're *tired*
of jumping through hoops just to do simple things- and really sick of
being pushed around by a bunch of "features" that some committee of
marketers think you need. Then you start looking for a stable, well
specified environment, which lets you just do what you want without a
lot of fuss and bother. Given those requirements, the list of
languages gets small pretty fast. Notably, Lisp stays on the list-
suffering not from language problems but from a perceived lack of
"integrability". I find ramping up skill in Lisp is lots more
enjoyable than doing so in C++. But, at some point you get annoyed at
the lack of a thorough, organized top to bottom infrastructure in
clisp/cmucl and then Allegro/Lispworks start to look appealing.

Me, as a nominal Lisp amateur, I'm bartering some time working for my
Dad's company in exchange for them buying me a copy of LispWorks.
Why? Because it makes me think differently. C/C++ is all very well,
but I really value how Lisp makes me reconsider everything. The
recent Sapir-Whorf references on this list make that point especially
germane, as C/C++ and all their brood certainly engender particular
approaches- sometimes nearly programming cliches. "Software
Patterns", indeed. Its kind of fun to think "mapcar" when I see a
menu in restaurant... and I can't even begin to say how much I
appreciate NOT having to fiddle with pointers. People can say all
they like about how 'strange' Lisp syntax is- but those that do have
likely not compared it in detail to some of the more exotic C++
notation.

I'm all for cheap/free tools, I think that is certainly the way to
learn. After acquiring a degree of skill, I think a programmer may
end up at a point where choices must be made to satisify their need
for performance and efficiency in their tools, and I think thats where
the commercial Lisp environments come in.

William James suggested people choose their religions to suit their
tempraments, maybe a similar function occurs with programmers & their
languages. Of course, that means some people tend towards COBOL. To
each their own.. ;)

Gregm

john...@my-deja.com

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to
In <m3lmu8c...@localhost.localdomain> Lieven Marchand wrote:

> Lastly, on the lack of libraries, I'd like to suggest to the people
> that complain about it to write some and make them available. Some
> complainers seem to think it their right to demand such things from
> the people who use CL to write applications. Even setting issues of
> intellectual property aside, making available code to the public has a
> real cost. But even on the availability of libraries, the comparison
> should be made carefully. There is in the {Perl, Python, Java, ...}
> community a plethora of libraries for the more simple things like
> HTTP, SMTP etc.

> This stuff is so trivial in CL that I usually roll my
> own since looking for a library, evaluating the licence, compiling it
> and getting it integrated in my environment would take longer than
> just writing it myself.

I am new to Lisp, and I'm looking for libraries such as those for HTTP
and SMTP.

I don't expect other Lisp programmers to write libraries for me, but
many people who come to Lisp from other languages wonder how come there
aren't many available (I'm talking about networking libs here, not GUI
stuff because there are many of those around) since Lisp has been here
for a while.

I'm not lazy, and I'm willing to write my own libraries and make them
publicly available for no charge, but I don't know where to begin. If I
don't even have a basic socket interface (I can't find any libs that
provide even that), how can I write such libraries? You say it's
trivial, and I'm really curious how. Could you please briefly explain
how one would go about writing a thing like that? Where to begin, etc.

Thanks a lot,

Patrick W

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to

"Rainer Joswig" <jos...@corporate-world.lisp.de> wrote in message
news:joswig-17D2BB....@news.is-europe.net...

>
> Actually those who manage to write commercially successful
> Lisp software seem to be very silent. Those who can't are
> telling us once a week.

Maybe they have a point (beyond the obvious implication that they lack the
ability).

I don't think Aaron intended to imply it's not possible to write
commercially successful software in Lisp. I didn't either. I think both of
us, in contrast to you, were discussing aspects of Lisp's lack of surface
appeal to new generations of programmers, *not* suggesting it isn't a great
practical tool for experienced Lispers.

[ John Mallery's fearlessness]


> Sure not, you would give up
*******************long************************
> before, just because there are ten ways to dump a Lisp application??!!
> John's approach is different: If there is an obstacle (say a bug
> in a TCP interface), it gets debugged and fixed once and forever.
> If there is an incompatibility in the different Lisps, he provides
> a portable version.

Would you step back a bit and look at the context of the discussion? I
notice you've got a Lisp machine on your home page, so is it a fair
assumption you've been around Lisp for a long time? I'm assuming you know
what a great language it is, you're comfortable with the tools you use, and
you're confident in your ability to make Lisp do whatever you desire. John
Mallery's fearlessness must have come from a similar confidence. It's not
something that one would or could do having only a passing acquaintance with
Lisp.

Having more people like John Mallery would be a nice side effect of making
Lisp more accessible to new generations of programmers. Not the only side
effect, to be sure. There would be a lot more noise and stupidity as well.
But if 1% of those who pick up on Lisp are enthusiastic and talented, there
will be progress - in tools, literature, community, momentum, public
profile. Without the bare minimum of surface appeal, there will be fewer
talented people who even *try* Lisp. (I don't know JM, but I know a few who
have the same attitude. Most of them have never touched Lisp They're using
Python).

Not knowing what you're missing is a strong disincentive to perseverance.
You and John Mallery may not have that problem. Others ... well ... don't
know what they're missing.


Fernando Rodríguez

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to
On 24 Nov 2000 16:21:15 +0100, Espen Vestre
<espen@*do-not-spam-me*.vestre.net> wrote:


>several serious java programmers I've talked have no problems admitting
>that java is not suitable for serious GUIs. "BUT", they tend to add,

I don't have much experience with Java, but the few java apps I've
used were a serious memory hog and slower than Visual Basic. This is why I'm
not sure if I like the idea (Kent's idea?) of adding extensive support for
calling java libs: I'm scared that java libs will bring java performance...
:-P

>"it's perfect for servers". However, the java servers I've seen so far
>that have really been put to stress tests (real life stress tests,
>running on really heavy Sun iron serving a *lot* of clients), have
>performed almost unbelievably lousy.

Maybe CL vendors should go for that market: java programmers who were left
stranded by java's performance. CL seems like the perfect tool for "servlets"
and it might be a good way to increase our small community.

Fernando Rodríguez

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to
On Sat, 25 Nov 2000 07:40:38 +0100, Rainer Joswig
<jos...@corporate-world.lisp.de> wrote:

>I once talked to people who are maintaining an application with a
>million+ (!!) lines of Lisp code. They develop on Lisp machine

=:-O Damn, I never went past the 80.000... ;-) What does this app
do? Just curious...

>If you, for example, use CL-HTTP you can deploy your code with a web
>interface on several platforms virtually unchanged (Windows,
>Unix, Mac, Lispm). John Mallery takes great care to publish

I was planning to take a look at it or Allegro serve. How would you
compare both (features, documentation, performance...)? O:-)

>deploy complex user interfaces. Have you ever looked at the Lisp course
>(http://www.psychologie.uni-trier.de:8000/elmart) that's running

Yes, and it's _really_ cool. :-)

Rainer Joswig

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to
In article <BkKT5.45138$SF5.8...@ozemail.com.au>, "Patrick W"
<mai...@my-deja.com> wrote:

> Would you step back a bit and look at the context of the discussion? I
> notice you've got a Lisp machine on your home page, so is it a fair
> assumption you've been around Lisp for a long time? I'm assuming you know
> what a great language it is, you're comfortable with the tools you use, and
> you're confident in your ability to make Lisp do whatever you desire. John
> Mallery's fearlessness must have come from a similar confidence. It's not
> something that one would or could do having only a passing acquaintance with
> Lisp.

But I started somehow sometime, writing my share of Pascal, Basic,
Assembler and Modula 2.

> Having more people like John Mallery would be a nice side effect of making
> Lisp more accessible to new generations of programmers.

Maybe it is also the other way round? "The new generation of programmers"
needs to be more accessible? Maybe after some time of experimenting
they will. Like children experimenting with smoking and after
some time the will discover that it is unhealthy not at lot
of fun (besides many telling you).

> Not the only side
> effect, to be sure. There would be a lot more noise and stupidity as well.

Yes, but this is normal.

> But if 1% of those who pick up on Lisp are enthusiastic and talented, there
> will be progress - in tools, literature, community, momentum, public
> profile.

Much of what others want to achieve, is already there. But maybe not
in a way they expect.

If people feel the need for (new) tools, literature, community. etc.
I'd say, go ahead. Create tools, write books, build a community.
You can't expect me to do it for you. I have my own agenda
and write my own tools.

There is also no need to discover and use Lisp. Many programmers can
get along and can survive without ever touching it. Other
programming languages and tools are also productive.
There is no obvious need to drive a Mercedes. But those
who did will know that it is well-engineered and reliable.

> Without the bare minimum of surface appeal, there will be fewer
> talented people who even *try* Lisp. (I don't know JM, but I know a few who
> have the same attitude. Most of them have never touched Lisp They're using
> Python).

They need to learn and discover Lisp. They even need to form the
language for their needs (like the previous generations of users formed
Lisp for their purposes). Lot's of things are simply there and
need to discovered. An example: people would get the impression
that there are no books about Lisp - they look into their
bookstore and they see hundred books about Java and maybe none
about Lisp. They just need to discover that one can order books
and there are book catalogs that one can browse. They also
need to discover that there is a thing called the Internet,
where some of the most important Lisp books are available (CLtL2,
ANSI CL HyperSpec, ...) in various formats.

What they need to be? They need to be programmers in the first
place. Having written 5KLOC of Python doesn't make you a programmer.
Much of the source code you can see at Sourceforge scares me,
it is of incredible poor quality and I wouldn't let it into
my software. Just writing it again gives me much more confidence
in the code. I would agree with Peter Norvig's observations
(http://www.norvig.com/21-days.html) and his motto:
"Teach Yourself Programming in Ten Years".

Lisp is the Zen way of Programming.

Lieven Marchand

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to
"Patrick W" <mai...@my-deja.com> writes:

> A bit more vibrant community wouldn't be a bad thing. I know that's anathema
> to some of you guys, but the attitude in c.l.l. sometimes reminds me of a
> clan of rich retirees languishing in luxury in an exclusive suburb. If
> someone under thirty arrives you can almost people muttering: "There goes
> the neighbourhood".

I was thirthy-ish when I discovered CL but I don't think your image is
correct. I think one of the strengths of Lisp is that is has been used
for forty years to solve the most challenging and complex problems of
the time. The language has been designed with large and complex
applications in mind. This means that to see the advantages of CL it
helps to have experience with other languages in large applications.

A beginning programmer with his shining new C++ compiler and GUI
toolkit reads the tutorial, writes 100 lines of code and has a small
graphical application with an edit widget, some buttons and an
image. Now you show him that you can do this with 40 lines of
Lisp. This isn't going to convince him. Now go to a team of C++
programmers with 10 million lines of code that is such a tangle of
includes and dependencies that it takes a day to compile on an Ultra
10. Give them a demonstration that you can redefine a class in the
listener, write an update function and have the existing instances in
your system consistent with the new definition, and you'll have their
attention.

But it takes a few years of experience of other languages to
appreciate CL. The same thing goes on with the debate of pricing
(esp. Franz's). If you approach it from the hobbyist programmer's
point of view and compare the price of MS Visual
Whatever-it-is-called-these-days to a commercial Lisp, you'll find it
excessive. If you compare it to stuff from Platinum, Computer
Associates or Rational for Enterprise development it's cheap. Note
that these vendors don't target the home market at all. It is in fact
a significant contribution to the Lisp community by Franz and Xanalys
to make available trial versions. Some people here tend to assume they
have a right to them and for them to be free, but these projects cost
real money to Franz and Xanalys.

Lastly, on the lack of libraries, I'd like to suggest to the people
that complain about it to write some and make them available. Some
complainers seem to think it their right to demand such things from
the people who use CL to write applications. Even setting issues of
intellectual property aside, making available code to the public has a
real cost. But even on the availability of libraries, the comparison
should be made carefully. There is in the {Perl, Python, Java, ...}
community a plethora of libraries for the more simple things like
HTTP, SMTP etc. This stuff is so trivial in CL that I usually roll my
own since looking for a library, evaluating the licence, compiling it
and getting it integrated in my environment would take longer than

just writing it myself. On the other hand, libraries for somewhat more
complex stuff are rare in any language since they take a lot of
work. I'm not aware of too many libraries for z39.50 or free asn.1
compilers or stuff like that.

--
Lieven Marchand <m...@bewoner.dma.be>
Lambda calculus - Call us a mad club

Aaron K . Johnson

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to

The interchange below is extremely funny :) . I just want to say this-we
are all friends here, because we all care about the future os an
elegant language. Rainer, obviously, you are a Lisp guru of sorts who
would have much to bring to the community. I think Patrick is doing a
better job of understanding my points here. I don't mean to insult Lisp,
but merely wish to discuss some of the potential reasons why it isn't more
popular than it should be. You may not agree that it isn't popular, but if
you said that, I'd say you are living in isolation, perhaps working for
one of the few companies that DOES use Lisp.

To re-iterate my points, and I want to say Rainer, that your previous
points were well-taken (in particular re:the filesystem).

1) Lisp may never really well take off like say, Python, if the
public doesn't get a free implemetation that they feel and perceive to be
more or as powerful as Python. This means whipping up a GUI in short order
that will without fuss be portable, handsome/eyecatching, easily
maintained, etc.
2) Lisp has to fight an uphill Public Relations battle at this
point that a new language like Python doesn't. Lisp is doing well
considering the years of apprehension and misunderstanding about it being
an ancient academic language.
3) Tutorials must be written (yes, with pretty screenshots, etc.)
that show a powerful Lisp in action, with colorful GUI's. I cannot
understress this point enough. Its human psychology to consider the "cool"
things to be handsome and colorful. Just Look at Tcl/Tk. As a language,
and how it performs-its terrible. But people look at Tk and think "that's
really attractive". Its sounds superficial, but its true, and, after all,
aesthetics ARE important. I still have a hard time imagining Lisp as being
a visually striking platform to code in. Most people do. Again you could
argue with me, but you'd be wrong because you'd be blind to the hard
numbers of where people are looking (Java, Tcl/Tk, Python)

I'll take this up later....gotta go now.

-Aaron

On Sun, 26 Nov 2000, Patrick W wrote:

>
> "Rainer Joswig" <jos...@corporate-world.lisp.de> wrote in message

> news:joswig-B476C1....@news.is-europe.net...


> > In article <BkKT5.45138$SF5.8...@ozemail.com.au>, "Patrick W"
> > <mai...@my-deja.com> wrote:
> >
> > > Would you step back a bit and look at the context of the discussion? I
> > > notice you've got a Lisp machine on your home page, so is it a fair
> > > assumption you've been around Lisp for a long time? I'm assuming you
> know
> > > what a great language it is, you're comfortable with the tools you use,
> and
> > > you're confident in your ability to make Lisp do whatever you desire.
> John
> > > Mallery's fearlessness must have come from a similar confidence. It's
> not
> > > something that one would or could do having only a passing acquaintance
> with
> > > Lisp.
> >
> > But I started somehow sometime, writing my share of Pascal, Basic,
> > Assembler and Modula 2.
>

> Of course. I'm not suggesting you old-timers had all the breaks and life's
> so much tougher than it used to be. In a lot of ways beginners today have it
> much easier - but they're pampered with the wrong luxuries - like junk
> food - plenty of fat but no real nourishment.


>
> > > Having more people like John Mallery would be a nice side effect of
> making
> > > Lisp more accessible to new generations of programmers.
> >
> > Maybe it is also the other way round? "The new generation of programmers"
> > needs to be more accessible?
>

> Sure. I wouldn't argue with that. However, it's not one or the other. It's
> both.


>
> > > But if 1% of those who pick up on Lisp are enthusiastic and talented,
> there
> > > will be progress - in tools, literature, community, momentum, public
> > > profile.
> >
> > Much of what others want to achieve, is already there. But maybe not
> > in a way they expect.
>

> Fair comment. But IMO the current state of affairs is dangerously close to:
> "much of what others want once was there, and still may be if you look hard
> enough".


>
> > If people feel the need for (new) tools, literature, community. etc.
> > I'd say, go ahead. Create tools, write books, build a community.
> > You can't expect me to do it for you. I have my own agenda
> > and write my own tools.
>

> A bit more vibrant community wouldn't be a bad thing. I know that's anathema
> to some of you guys, but the attitude in c.l.l. sometimes reminds me of a
> clan of rich retirees languishing in luxury in an exclusive suburb. If
> someone under thirty arrives you can almost people muttering: "There goes
> the neighbourhood".
>

> > There is also no need to discover and use Lisp. Many programmers can
> > get along and can survive without ever touching it. Other
> > programming languages and tools are also productive.
> > There is no obvious need to drive a Mercedes. But those
> > who did will know that it is well-engineered and reliable.
>

> And the rarer the Mercedes, the better you enjoy yours hmm? ;-)
>
> >... people would get the impression


> > that there are no books about Lisp - they look into their
> > bookstore and they see hundred books about Java and maybe none
> > about Lisp. They just need to discover that one can order books
> > and there are book catalogs that one can browse. They also
> > need to discover that there is a thing called the Internet,
> > where some of the most important Lisp books are available (CLtL2,
> > ANSI CL HyperSpec, ...) in various formats.
>

> True, the books are few - but of a standard you don't find elsewhere.
> (Norvig's PAIP is worth more than any number of C++ books I've bought).


>
> > What they need to be? They need to be programmers in the first
> > place. Having written 5KLOC of Python doesn't make you a programmer.
> > Much of the source code you can see at Sourceforge scares me,
> > it is of incredible poor quality and I wouldn't let it into
> > my software. Just writing it again gives me much more confidence
> > in the code. I would agree with Peter Norvig's observations
> > (http://www.norvig.com/21-days.html) and his motto:
> > "Teach Yourself Programming in Ten Years".
>

> Yes, an interesting article. It concurs with my experience in other fields.


>
> > Lisp is the Zen way of Programming.
>

> Eh? Vague? Unpredictable? Mind-bendingly illogical? Without structure?
> Inscrutable? Liable to whack you over the head with a thick stick at any
> moment? Jesus, man, what sort of software you creating?? ;-)
>
>
>
>


Paolo Amoroso

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to
On Fri, 24 Nov 2000 19:40:43 GMT, john...@my-deja.com wrote:

> wrote with the languages I mentioned, but I cannot find a Lisp library
> that provides basic networking facilities that are needed to write the
> type of programs I want to. I looked at clocc
> <http://clocc.sourceforge.net>, but it has almost no documentation or
> examples that come with it, and I cannot get it to work. I found many

Part of the reason why you don't find much documentation included with
CLOCC is that the project is still relatively young--about 9 months, if I
remember well. Simply put, there are currently few resources for writing
documentation or examples.

As for CLOCC basic networking facilities, I suggest that you look at
src/port/net.lisp, particularly the function names (mostly
self-explanatory), the lambda lists and the documentation strings. Since
the file is short--around 350 lines--you may also try reading the code
itself. For examples of use check src/cllib/url.lisp. At times beginners
overestimate the difficulties of reading source code.


Paolo
--
EncyCMUCLopedia * Extensive collection of CMU Common Lisp documentation
http://cvs2.cons.org:8000/cmucl/doc/EncyCMUCLopedia/

Rainer Joswig

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to

> better job of understanding my points here. I don't mean to insult Lisp,
> but merely wish to discuss some of the potential reasons why it isn't more
> popular than it should be.

You make the assumption that "it should be popular". Why? You are
talking about Lisp in general (which is popular) or about
Common Lisp?



> You may not agree that it isn't popular, but if
> you said that, I'd say you are living in isolation, perhaps working for
> one of the few companies that DOES use Lisp.

No, I'm not simply working for a company that does use Lisp.
If necessary, I make the company use Lisp.

> 1) Lisp may never really well take off like say, Python,

Look, there are areas where Python not even comes close to Lisp.
You are bound to this scripting is programming thing.

> 3) Tutorials must be written (yes, with pretty screenshots, etc.)
> that show a powerful Lisp in action, with colorful GUI's.

See David Lamkins presentation of Macintosh Common Lisp.
See some screenshots of MCL applications on my tiny web site.

> and how it performs-its terrible. But people look at Tk and think "that's
> really attractive".

Then we have a different idea about "attractiveness". The latest
thing that looks relatively attractive is the new MacOS X GUI.
Compared to that most of the stuff out there is UGLY. Plain UGLY
and ANCIENT.

> aesthetics ARE important. I still have a hard time imagining Lisp as being
> a visually striking platform to code in.

See the Sk8 and Igor Engraver screenshots on my web site
(a version of Igor Engraver will be available from Noteheads
for Windows soon - doing cross-platform development for an
application with extreme graphics/font demands using Macintosh
Common Lisp and LispWorks for Windows).
Go to www.wingededge.com and look at the screen shots of Mirai
(an Allegro Common Lisp application). This is as mindblowing as it
gets. Or read a bit about the hundred projects that were done with Sk8:
http://www.cwi.nl/~steven/sigchi/bulletin/1998.2/spohrer.html
See some screenshots of an application called "Eon":
http://www.cs.umass.edu/~tmurray/papers/JLSEon/JLS96.html .
There are lots of examples of highly visual applications
done in Lisp. You just don't know it. Nobody told you.
And you didn't look.

> Most people do. Again you could
> argue with me, but you'd be wrong because you'd be blind to the hard
> numbers of where people are looking (Java, Tcl/Tk, Python)

I'm very fond of visual appeal when it comes to programming, that's
why I most of the time use a Mac. Look&feel is simply so much
better than the Java/Python/TCL/PERL GUI crap.

Kent M Pitman

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to
Lieven Marchand <m...@bewoner.dma.be> writes:

> A beginning programmer with his shining new C++ compiler and GUI
> toolkit reads the tutorial, writes 100 lines of code and has a small
> graphical application with an edit widget, some buttons and an
> image. Now you show him that you can do this with 40 lines of
> Lisp. This isn't going to convince him. Now go to a team of C++
> programmers with 10 million lines of code that is such a tangle of
> includes and dependencies that it takes a day to compile on an Ultra
> 10. Give them a demonstration that you can redefine a class in the
> listener, write an update function and have the existing instances in
> your system consistent with the new definition, and you'll have their
> attention.

Probably they just won't believe you that it's possible. That would mean
they had wasted their life and that's hard to admit. "And anyway",
they'd add to reassure themselves, "if it were possible, it would surely
have been something someone would have made noise about long before now.
No, probably it's just smoke and mirrors and not serious technology I can
gamble 10 million lines of code on."

Erik Naggum

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to
* "Aaron K . Johnson" <a...@21stcentury.net>
| It occurs to me that lesser languages like Java, etc. succeed in the
| modern world where Lisp seems like a computer science lesson from days
| of old because they have, or are perceived to have, an easy way to
| write/design a GUI, and to integrate well with low-level OS
| libraries/functions.

Are you referring to ANSI Common Lisp, the Standard, when you make
these claims? If so, do you consider standardization of a language to
be a negative aspect of its usability? In other words, would you
rather use an unstandardized language with many useful bells and
whistles over a standardized language with many useful, unstandardized
bells and whistles?

All too many of those who complain about Common Lisp have very little
idea what they can do with the language in the available environments,
and seem awfully preoccupied with specific (free) implementations and
what they can do, just like they are willing to use one-implementation
"languages" in ways they _claim_ they would never use a standardized
language, so one must assume that they have some sort of weird hangup
against implementation-specific features unless there is only _one_
implementation.

| I love Lisp, but there are things that I would never attempt with it
| that I would do in a snap with Python (actually a great language).

I'm extremely wary of people who say "I love Lisp, but ...".

There is _nothing_ I would not write in Common Lisp, because just like
Python and whatever other "great" tools are out there, somebody had to
write them and they chose a to build a _language_ to make that tool.
Well, guess what? Common Lisp is the language-building language par
excellence. Why do you need a whole new syntax and cruft just to add
a few nice pieces? That's just an insane abuse of scarce resources,
and a completely misguided notion of "competition".

| I could use TK or WxPython to design a GUI frontend to my functions in
| less than an hour.

Good for you! Have you tried Allegro CL's GUI builder?

| Java, Python, Perl, Tcl/Tk etc. also are "web aware", i.e. they
| acknowledge that for a language to be "hot", it has to appeal to the
| web-using public, and be usable for the web by the web-using public.

Only Java is web-aware qua language as far as I can tell. The rest
have some software written _in_ their language that could make a claim
to being web-aware, but qua language? No way!

You are not really talking about languages, Aaron, but about tools.
If you insist on comparing tools with languages, languages must lose.
An application with an input language that can modify its behavior is
very different from a full-blown programming language with a separate
specification from its implementations, plural.

| When Lisp gets its elegance across, as well as having easy access to
| all the things people like about things like Tcl/Tk, Java, Perl,
| Python; and not just obscure kits like Garnet, etc.

So what's wrong with the _language_ Common Lisp because of this?

| There's only one Python, Perl, and Tcl/Tk, and that helps them stay
| central and release one version of the language--not the fragmented
| state of affairs that both Lisp as a language and Linux as an OS
| suffer.

And what would happen if you added all the stuff that you want to
Common Lisp? I cannot see how it could possibly lead to _less_
fragmentation. You would not use the software written in Common Lisp
if it were there because it is not part of the language (standard),
and so there is no way for Common Lisp to overcome that "I love Lisp,
but" stand that you have chosen to take, is there?

Where, exactly, did you look before you decided what Lisp is missing?

The _only_ way you can get better able to use Common Lisp is, *gasp*,
to _use_ Common Lisp, just like someone decided to _use_ Python, Perl,
etc. If some hypothetical "I love Perl, but ..." crowd had complained
like you do, _nothing_ of what you apparently like about these tools
would ever have happened. Why do these people just get the work done?
Is it because do _not_ "love" their languages? Why is it OK to use
"love" for Common Lisp as an excuse _not_ to use it?

#:Erik, seriously annoyed.
--
Solution to U.S. Presidential Election Crisis 2000:
Let Texas secede from the Union and elect George W. Bush their
very first President. All parties, states would rejoice.

Patrick W

unread,
Nov 25, 2000, 8:29:13 AM11/25/00
to

Rob Warnock

unread,
Nov 25, 2000, 9:38:33 PM11/25/00
to
Jochen Schmidt <j...@dataheaven.de> wrote:
+---------------

| So why not building a GUI-Server in wxWindows - which would run nice on
| win32, Linux(Motif), Linux(GTK) and so far I know on BeOS and MacOS too.
+---------------

This is exactly why the Rice PLT group chose wxWindows for their
"MrEd" <URL:http://www.cs.rice.edu/CS/PLT/packages/mred/index.html>
GUI application toolkit (upon which the "DrScheme" development & teaching
environment is built). MrEd runs on all of Windows 95/98/NT/2000, MacOS,
and Unix/X (including Linux here as a "Unix").[*] It provides:

- A windowing toolbox for creating windows and menus
- A drawing toolbox for drawing to windows, bitmaps,
and printer devices
- An editor toolbox for creating multimedia editors

MrEd's GUI toolbox is integrated with a thread system.
MrEd dispatches each GUI event to the handler thread via
synchronous (single-threaded) callback procedures, but
MrEd also supports multiple eventspaces, which permit
asynchronous (multi-threaded) event handling among
different sets of windows.

MrEd's underlying Scheme engine, "MzScheme", provides a fairly typical
interface to TCP/IP networking, so hooking a Common Lisp application
to a MrEd-based GUI over sockets should be relatively straightforward.

The *real* question is going to be the protocol between the CL application
and a MrEd-based GUI. I don't mean the syntax -- you can certainly use
S-exprs & READ [though one would of course want to stick to the common
subset of the CL & Scheme S-exprs syntaxes] -- I mean the semantics.
There's the inevitable question of trading off simplicity of interface
(which many presume to equate with portability, though that's really a
*different* issue) versus exposing the full functionality (or most of it)
of the backend GUI. Look at this and you'll see what I'm talking about:

<URL:http://www.cs.rice.edu/CS/PLT/packages/doc/mred/index.htm>

The good news is that there's a lot more than Tk there.
The bad news is that there's a lot more than Tk there. ;-} ;-}

+---------------


| I would prefer a very simple approuch like LispWorks CAPI (or simpler
| for the beginnigs). IMHO if we concentrate on simplicity we could
| have it in _very_ short time.

+---------------

Suggestion: Start by defining the protocol. Then publish it for comments.


-Rob

[*] While MzScheme itself does run on BeOS [and even on "bare" x86
PCs, as a kernel based on Utahs' "OSKit"], unfortunately MrEd doesn't,
at least not as distributed. If, as you say, wxWindows *does* run on
BeOS, it might be possible to port MrEd fairly straightforwardly
(though note that the wxWindows which MrEd uses has diverged somewhat
from Julian Smart's original version).

-----
Rob Warnock, 31-2-510 rp...@sgi.com
Network Engineering http://reality.sgi.com/rpw3/
Silicon Graphics, Inc. Phone: 650-933-1673
1600 Amphitheatre Pkwy. PP-ASEL-IA
Mountain View, CA 94043

Patrick W

unread,
Nov 25, 2000, 11:58:19 PM11/25/00
to

"Erik Naggum" <er...@naggum.net> wrote in message
news:31841816...@naggum.net...

>
> All too many of those who complain about Common Lisp have very little
> idea what they can do with the language in the available environments,
> and seem awfully preoccupied with specific (free) implementations and
> what they can do, just like they are willing to use one-implementation
> "languages" in ways they _claim_ they would never use a standardized
> language, so one must assume that they have some sort of weird hangup
> against implementation-specific features [...]

For myself, I'd rephrase it thus:

> Some Common Lisp beginners have very little
> idea what they can do with the language in the professional quality
> commercial environments, and seem more concerned initially with (free)
> implementations and what they can do ... so one must assume that they
> prefer to avoid being dependent on company-specific features when
they're
> getting started.

Aaron K . Johnson

unread,
Nov 26, 2000, 1:34:11 AM11/26/00
to

On Sat, 25 Nov 2000, Rainer Joswig wrote:

> Look, there are areas where Python not even comes close to Lisp.
> You are bound to this scripting is programming thing.
>

Scripting is a proper subset of programming, yes. Python is considered a
"programming language" , as is Perl, etc. Your point? BTW, have you ever
even tried Python? You strike me just as a pure Lisp zealot who won't
accept any critical observations. Don't you have a wish list for Lisp, at
all? Perhaps you don't care whether its free or not? Perhaps you don't
care whether more people use it? I care that more people use it, because
the more people use it, the more its developed, and more money goes into
it (e.g. JAVA) Python has its limitations, yes. Most languages do,
including Lisp. Lisp is great, but its not the fucking holy grail.....



> > 3) Tutorials must be written (yes, with pretty screenshots, etc.)
> > that show a powerful Lisp in action, with colorful GUI's.
>

> See David Lamkins presentation of Macintosh Common Lisp.
> See some screenshots of MCL applications on my tiny web site.
>

The web site you have is really quite slow. Just curious, what's it
running on?

I have to say honestly, I'm really not impressed. Flat 2D look, like the
system was from 1983 or something. The Window themes are what Macintosh
stole from the Linux community (IceWm), only they look much cooler in
Linux.

> Then we have a different idea about "attractiveness". The latest
> thing that looks relatively attractive is the new MacOS X GUI.
> Compared to that most of the stuff out there is UGLY. Plain UGLY
> and ANCIENT.
>

And your screenshots don't. Have a look at www.gnome.org, or
www.enlightenment.org for some real look&feel....

> Go to www.wingededge.com and look at the screen shots of Mirai
> (an Allegro Common Lisp application). This is as mindblowing as it
> gets.

Fairly decent. I hope not as mindblowing as it gets though. Still pretty
good.

> Or read a bit about the hundred projects that were done with Sk8:
> http://www.cwi.nl/~steven/sigchi/bulletin/1998.2/spohrer.html
> See some screenshots of an application called "Eon":
> http://www.cs.umass.edu/~tmurray/papers/JLSEon/JLS96.html .
> There are lots of examples of highly visual applications
> done in Lisp. You just don't know it. Nobody told you.
> And you didn't look.

Now I did, and I must say my initial impression remains. Lisp could look
much slicker....

> I'm very fond of visual appeal when it comes to programming, that's
> why I most of the time use a Mac. Look&feel is simply so much
> better than the Java/Python/TCL/PERL GUI crap.

I think the Mac, although it kind of started the GUI pc thing, has since
really fallen behind the FREE desktops that the Open Source community has
come up with. Notice now that Mac realizes this, they are going to steal
FreeBSD ideas for OS X. Open Source is the best thing that ever happened
to software, and I think the Lisp companies would do well to get with the
spirit of it. Mac will be taking the step. I don't really fucking care if
windows does or not.

-Aaron.


Aaron K . Johnson

unread,
Nov 26, 2000, 2:22:24 AM11/26/00
to

On 25 Nov 2000, Erik Naggum wrote:

> * "Aaron K . Johnson" <a...@21stcentury.net>
> | It occurs to me that lesser languages like Java, etc. succeed in the
> | modern world where Lisp seems like a computer science lesson from days
> | of old because they have, or are perceived to have, an easy way to
> | write/design a GUI, and to integrate well with low-level OS
> | libraries/functions.
>
> Are you referring to ANSI Common Lisp, the Standard, when you make
> these claims? If so, do you consider standardization of a language to
> be a negative aspect of its usability? In other words, would you
> rather use an unstandardized language with many useful bells and
> whistles over a standardized language with many useful, unstandardized
> bells and whistles?
>

Ok, I'll answer: I want standards and "bells and whistles"

I refer you to http://www.lib.uchicago.edu/keith/crisis/crisis.html I
understand this man's sentiment. He says "...the programming languages I
like I feel I can't use". I DO want to use Lisp more. Its syntax (or lack
of it)is just plain superior. See also , in relation to Python:
http://www.strout.net/python/pythonvslisp.html A very fair assessment is
made, I think, of the strengths and weaknesses of both.

> All too many of those who complain about Common Lisp have very little
> idea what they can do with the language in the available environments,
> and seem awfully preoccupied with specific (free) implementations and
> what they can do, just like they are willing to use one-implementation
> "languages" in ways they _claim_ they would never use a standardized
> language, so one must assume that they have some sort of weird hangup

> against implementation-specific features unless there is only _one_
> implementation.
>

Just what language are you trying to insult here? I LIKE Lisp, but I'm
starting to find from a couple of people some religious zealot knee-jerk
reaction to ANY commentary about some potential problems it has to
overcome. I do have a problem with shelling out serious dough for a more
powerful Lisp , yes, and I'm just observing that for all of Lisp's
wonderful syntactical elegence, its a shame that it can't be more than it
is in the public eye. This is not a language war, at least I didn't intend
it to be. I guess Lisp zealots just get infuriated when they hear anything
good about any other language that they might learn from. Python (for
example) learned from Lisp. Now, its Lisp's turn to learn from Python,
which is winning the popular vote. I keep bring up Python, and I want to
say in advance, I'm not trying to provoke a language war. please keep the
tone cordial. So don't write belligerent responses like "Oh yeah, well
take that Python scripting pseudo-language and shove it up your -----" :)


> I'm extremely wary of people who say "I love Lisp, but ...".
>
> There is _nothing_ I would not write in Common Lisp, because just like
> Python and whatever other "great" tools are out there, somebody had to
> write them and they chose a to build a _language_ to make that tool.
> Well, guess what? Common Lisp is the language-building language par
> excellence. Why do you need a whole new syntax and cruft just to add
> a few nice pieces? That's just an insane abuse of scarce resources,
> and a completely misguided notion of "competition".
>
> | I could use TK or WxPython to design a GUI frontend to my functions in
> | less than an hour.
>
> Good for you! Have you tried Allegro CL's GUI builder?
>

I'd be happy to. Wanna write me the check for the cost?

> You are not really talking about languages, Aaron, but about tools.
> If you insist on comparing tools with languages, languages must lose.
> An application with an input language that can modify its behavior is
> very different from a full-blown programming language with a separate
> specification from its implementations, plural.
>

Ok, so I'm talking about tools....then where the f**k are all those cool
Lisp tools that other languages seem to have for no cost and active
development? Am I getting this wrong here? Is Lisp pro-or-anti Open
Source?

> | When Lisp gets its elegance across, as well as having easy access to
> | all the things people like about things like Tcl/Tk, Java, Perl,
> | Python; and not just obscure kits like Garnet, etc.
>
> So what's wrong with the _language_ Common Lisp because of this?
>

Nothing.



> | There's only one Python, Perl, and Tcl/Tk, and that helps them stay
> | central and release one version of the language--not the fragmented
> | state of affairs that both Lisp as a language and Linux as an OS
> | suffer.
>
> And what would happen if you added all the stuff that you want to
> Common Lisp? I cannot see how it could possibly lead to _less_
> fragmentation. You would not use the software written in Common Lisp
> if it were there because it is not part of the language (standard),
> and so there is no way for Common Lisp to overcome that "I love Lisp,
> but" stand that you have chosen to take, is there?
>
> Where, exactly, did you look before you decided what Lisp is missing?
>

The CMU repository for one. The Association of Lisp users. The Johns
Hopkins site. Shall I continue? Most of the GUI tools have stopped being
developed in 1992 or so. NOT an acceptable state of affairs for the
world's hippest language. Read the article "Good News, Bad News, and How
to Win Big". By Richard Gabriel, of Lucid

http://www.ai.mit.edu/docs/articles//good-news/good-news.html
In it he says:
"The real problem has been that almost no progress in Lisp environments
has been made in the last 10 years."
He also says:

"Retain the High Ground in Environments

I think there is a mistake in following an environment path that creates
monolithic environments. It should be possible to use a variety
of tools in an environment, and it should be possible for those who create
new tools to be able to integrate them into the environment.

I believe that it is possible to build a tightly integrated environment
that is built on an open architecture in which all tools, including
language processors, are protocol-driven. I believe it is possible to
create an environment that is multilingual and addresses the
software lifecycle problem without imposing a particular software
methodology on its users.

Our environments should not discriminate against non-Lisp programmers the
way existing environments do. Lisp is not the center of
the world. "


> The _only_ way you can get better able to use Common Lisp is, *gasp*,
> to _use_ Common Lisp, just like someone decided to _use_ Python, Perl,
> etc. If some hypothetical "I love Perl, but ..." crowd had complained
> like you do, _nothing_ of what you apparently like about these tools
> would ever have happened. Why do these people just get the work done?
> Is it because do _not_ "love" their languages? Why is it OK to use
> "love" for Common Lisp as an excuse _not_ to use it?
>
> #:Erik, seriously annoyed.
> --

Don't be annoyed. Peace, man. I'm not the enemy. Just conversing. Don't
get zealous.

> Solution to U.S. Presidential Election Crisis 2000:
> Let Texas secede from the Union and elect George W. Bush their
> very first President. All parties, states would rejoice.
>

I like that idea. Bush can take the whole fucking South, too.

Regards,
-Aaron

Kent M Pitman

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to
"Aaron K . Johnson" <a...@21stcentury.net> writes:

> ... I do have a problem with shelling out serious dough for a more


> powerful Lisp , yes, and I'm just observing that for all of Lisp's
> wonderful syntactical elegence, its a shame that it can't be more than it

> is in the public eye. [...]

> Erik> Good for you! Have you tried Allegro CL's GUI builder?


>
> I'd be happy to. Wanna write me the check for the cost?

I started to write a long reply to this but it mostly came down to this:
Beggars can't be choosers.

You seem to think we can't take criticism, but the truth is that the
criticisms you raise are well known and tedious to hear from people
who have nothing to offer in the way of time or money. Some of us have
devoted our entire lives to getting things as far as they are. When
you criticize things with a tone that suggests you expect us to slap our
foreheads and say "oh my god, we forgot about gui's" or "damn it, why didn't
we think of giving software away for free?", you seriously underestimate
the very real obstacles to the kind of world you are asking for.

Oh, and by the way, if you think it's so easy to build a large, professional
quality system--perhaps a Lisp implementation, or "just" a GUI builder--and
then give it away for free, please do it. I'm sure we'll all welcome your
very generous offer. But if you can't bring yourself to expend such energy
and then take no compensation for it, don't be so quick to suggest that
others should.

Erik Naggum

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to
* "Aaron K . Johnson" <a...@21stcentury.net>
| Wanna write me the check for the cost?

So you don't have a language issue, you have a poverty issue.

I suggest you find a street corner and cry "just which language are
you trying to insult" to passers-by who don't give you a nickel.
That'll make them about as positive to your requests as I am now.

| Don't be annoyed. Peace, man. I'm not the enemy. Just conversing.
| Don't get zealous.

You're underestimating both of us, now. Don't do that.

| I like that idea. Bush can take the whole fucking South, too.

:)

#:Erik
--

Marc Battyani

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to

"Aaron K . Johnson" <a...@21stcentury.net> wrote
...

> I guess Lisp zealots just get infuriated when they hear anything
> good about any other language that they might learn from. Python (for
> example) learned from Lisp. Now, its Lisp's turn to learn from Python,
> which is winning the popular vote. I keep bring up Python, and I want to
> say in advance, I'm not trying to provoke a language war.
...

I don't see your point. Python is easily embeddable so why don't you link a
Python interpreter into your Lisp?
You could then use the packages you want. As it has already been pointed
out, Lisp is quite good in generating code.So you could easily write Lisp
code that writes Python code.

You could also write a read-eval loop in Python over a socket and call it
from Lisp. It's quite easy.

> See also , in relation to Python:
> http://www.strout.net/python/pythonvslisp.html A very fair assessment is
> made, I think, of the strengths and weaknesses of both.

Hum, if I use his grid with the correct values for Lisp, guess who wins ;-)
Here is a better article on the same topic from Peter Norvig :
http://www.norvig.com/python-lisp.html

Marc


Fernando Rodríguez

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to
On 25 Nov 2000 15:13:12 +0100, Lieven Marchand <m...@bewoner.dma.be> wrote:


>But it takes a few years of experience of other languages to
>appreciate CL. The same thing goes on with the debate of pricing
>(esp. Franz's). If you approach it from the hobbyist programmer's
>point of view and compare the price of MS Visual
>Whatever-it-is-called-these-days to a commercial Lisp, you'll find it
>excessive.

Xanalys and Digitool's pricing and licensing _is_ "little-guy"
friendly. Two out of three. This comparatively high pricing affaire isn't a
generic CL's issue...

Greg Menke

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to

> Just what language are you trying to insult here? I LIKE Lisp, but I'm
> starting to find from a couple of people some religious zealot knee-jerk
> reaction to ANY commentary about some potential problems it has to
> overcome. I do have a problem with shelling out serious dough for a more
> powerful Lisp , yes, and I'm just observing that for all of Lisp's
> wonderful syntactical elegence, its a shame that it can't be more than it
> is in the public eye. This is not a language war, at least I didn't intend
> it to be. I guess Lisp zealots just get infuriated when they hear anything
> good about any other language that they might learn from. Python (for
> example) learned from Lisp. Now, its Lisp's turn to learn from Python,
> which is winning the popular vote. I keep bring up Python, and I want to
> say in advance, I'm not trying to provoke a language war. please keep the
> tone cordial. So don't write belligerent responses like "Oh yeah, well
> take that Python scripting pseudo-language and shove it up your -----" :)

Winning the popular vote is of limited significance. The important
question is where will Python/Perl/Java be in 10 years? How stable
are they? What will happen to all the Wonderful New Things written in
the above languages? I suspect once these languages become old, most of
their users will move on to the next New Generation languages.

I'll be interested these languages once the specs are ISO'ed, the
languages are stable and the compilers have been around for 5 or 10
years. If they're not going to last that long, why bother? It takes
a long time to become good at a language.

Some implementations of Lisp may lack some native tools found with the
new languages but thats not the point. As I (imperfectly,
incorrectly) understand it, Lisp is more about solving hard problems
more easily- which is where the design of the language itself is so
critical- than easy problems like creating the latest generation of
widgets, skins, etc.

What things should Lisp learn from Python then?



> > You are not really talking about languages, Aaron, but about tools.
> > If you insist on comparing tools with languages, languages must lose.
> > An application with an input language that can modify its behavior is
> > very different from a full-blown programming language with a separate
> > specification from its implementations, plural.
> >
>
> Ok, so I'm talking about tools....then where the f**k are all those cool
> Lisp tools that other languages seem to have for no cost and active
> development? Am I getting this wrong here? Is Lisp pro-or-anti Open
> Source?

It also might be that serious Lisp development can be done <without>
all these wonderful things. But, please be more specific about what
tools Lisp is missing. I mean important tools, like debugging,
profiling, etc... a GUI is more of a personal preference, but
everybody needs a debugger.

Lisp is plenty open source. There are several Lisp distributions you
can download. Following classic tradition, you are completely free to
add whatever features you want and contribute them back to the
community.

Gregm


Aaron K . Johnson

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to

On Sun, 26 Nov 2000, Kent M Pitman wrote:

> "Aaron K . Johnson" <a...@21stcentury.net> writes:
>
> > ... I do have a problem with shelling out serious dough for a more


> > powerful Lisp , yes, and I'm just observing that for all of Lisp's
> > wonderful syntactical elegence, its a shame that it can't be more than it

> > is in the public eye. [...]
>
> > Erik> Good for you! Have you tried Allegro CL's GUI builder?


> >
> > I'd be happy to. Wanna write me the check for the cost?
>

> I started to write a long reply to this but it mostly came down to this:
> Beggars can't be choosers.
>
> You seem to think we can't take criticism, but the truth is that the
> criticisms you raise are well known and tedious to hear from people
> who have nothing to offer in the way of time or money. Some of us have
> devoted our entire lives to getting things as far as they are. When
> you criticize things with a tone that suggests you expect us to slap our
> foreheads and say "oh my god, we forgot about gui's" or "damn it, why didn't
> we think of giving software away for free?", you seriously underestimate
> the very real obstacles to the kind of world you are asking for.
>
> Oh, and by the way, if you think it's so easy to build a large, professional
> quality system--perhaps a Lisp implementation, or "just" a GUI builder--and
> then give it away for free, please do it. I'm sure we'll all welcome your
> very generous offer. But if you can't bring yourself to expend such energy
> and then take no compensation for it, don't be so quick to suggest that
> others should.
>

In truth, I'm sorry to have insulted. It wasn't intentional, and I do want
to avoid yet another usenet flame thread!

I guess my reply is simply that I'm curious as to why there is such good
software out there for free if the economic model of Open Source Free
Software is so wrong? Why are Linux and FreeBSD so much better than
windows, and cost the price of a CD?

Secondly, for what my limited experience and time are worth, I'd be very
open to picking up a shovel and coding in the trenches. Any one else care
to set up a project? Perhaps a web page that agressively touts Lisp as the
strong language of the past, and most importantly the FUTURE.

Yes, I do still think that Lispers need more PR, and the successes need to
be hyped, and momentum needs to be built. I certainly don't mean to
deflate any of you who have devoted so much effort. So thanks.

Regards,
Aaron.


Aaron K . Johnson

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to

On 26 Nov 2000, Erik Naggum wrote:

> * "Aaron K . Johnson" <a...@21stcentury.net>

> | Wanna write me the check for the cost?
>

> So you don't have a language issue, you have a poverty issue.
>
> I suggest you find a street corner and cry "just which language are
> you trying to insult" to passers-by who don't give you a nickel.
> That'll make them about as positive to your requests as I am now.
>

I didn't throw the first punch, but you just did. So let me reiterate. I'm
just asking for your thoughts about why Lisp is where it is inrelation to
other language in terms of popularity, use, cost, active development
(i.e. GUI tools that are less than 8 yrs. or so old, etc.) No need to be
nasty.



> | Don't be annoyed. Peace, man. I'm not the enemy. Just conversing.
> | Don't get zealous.
>

> You're underestimating both of us, now. Don't do that.
>

> | I like that idea. Bush can take the whole fucking South, too.
>

> :)
>
> #:Erik
> --

> Solution to U.S. Presidential Election Crisis 2000:
> Let Texas secede from the Union and elect George W. Bush their
> very first President. All parties, states would rejoice.
>

A copy of a reply to Kent Pitman, but worth saying again:

bob nerkul

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to
On 26 Nov 2000 10:00:47 -0500, Greg Menke
<gregm-n...@zxy.mindspring.com> wrote:

>
>I'll be interested these languages once the specs are ISO'ed, the
>languages are stable and the compilers have been around for 5 or 10
>years. If they're not going to last that long, why bother? It takes
>a long time to become good at a language.

I should jump in here. Perl will not be standardised. Larry Wall
desires very much that it be a "living language." So in ten years
there will still be a Perl, but it may not be friendly to scripts
written today. Specifically the unpopular bits will be gone, and any
newly fashionable paradigms emerging will be embraced. It's the
difference between Latin and English, and neither is bad for lacking
qualities of the other.

And while I'm here, Lisp doesn't need to beat Java. Lisp doesn't have
a sense of competition. So any discussion can only be totally
subjective. Personally, whether Lisp becomes popular is of little
interest, and if they start writing Java-like (GUI, 'components',
blah... i.e. buzzword compatible) programs with it they won't be much
use to me. That's what I have Perl for.

nerkul

Kent M Pitman

unread,
Nov 26, 2000, 3:00:00 AM11/26/00
to
"Aaron K . Johnson" <a...@21stcentury.net> writes:

> I guess my reply is simply that I'm curious as to why there is such good
> software out there for free if the economic model of Open Source Free
> Software is so wrong? Why are Linux and FreeBSD so much better than
> windows, and cost the price of a CD?

Money doesn't come from nowhere. You have to have something ELSE to get
your money from.

Sun sells iron, for example. That's how it could afford to subsidize the
creation of Java. I was darned surprised they didn't roll out Java hardware
to finally pay for the huge expenditure on Java. Maybe they found some other
way to make money, or maybe they still operate Java at a loss, I don't know.
But the point is that they surely had to take a huge loss up front for years
while conditioning the market to Java, and there is no Lisp vendor that can
afford such a hit.

Gnu sells support, for example. And it's not doing so well financially.
It could hardly be called an economic success. Moral success? Sure. You
can always be a hero by making something of value and giving it away. But
all my interactions with Stallman over the years show him to be extraordinarily
frightened of not having a revenue stream in the future. Redhat? Well,
personally I think it remains to be seen if they have a stable business model
or if they've given away the store by allowing other vendors to copy their
stuff. Sure, there's a huge market of linux stuff out there, but is it just
feeding on the generosity of others or will it eventually cannibalize the
source? I personally think the jury's still out. Yes, Lisp developers
could go after short term riches and then hope the thing has enough life to
just keep going after, but that's a big risk it will fall in the toilet
after. I'd like to see a sustainable model.

You can give away something if you plan to build a vertical market. For
example, if your company is switching to the next layer up. For example,
Harlequin or Franz could decide to be only an AI solutions company, and to
give away Lisp for free. This would be especially advantageous if it hoped
someone else would pick up Lisp and maintain it for them while they invested
in other areas, but then it begs the question of whether they can count on
it for the long run. And if they continue to maintain it, then the problem
comes that a key ingredient of their vertical power (their Lisp engine) is
free for others to take and use as a base to build competing vertical
products. That's dangerous as well. So this is a tricky strategy.

The last model I can think of is the market of people who make stuff and give
it away because they have no business sense. I'm sure there are lots of
people doing that and that people flock to them and say nice things about them
hoping they'll keep doing this. I mostly see this in younger people. As
people age, I think they get burned enough along the way, and they start to
better appreciate the value of the dollar or the relation of "work" to
"dollars" such that they want fair compensation for all they have contributed
and they become less willing to give it away. Sure, a few figure out how to
live cheaply and just always give things away, but that's hardly a model
of economic success either.

I guess my point is that the "market" will always find a way to make money
on just about anything. Any time money trades hands, there are winners and
losers. People make short-term money, sometimes very good money, without
investing in the long term economic health of the market. But if you have
a plan for Lisp to have a long-term sustainable business, rather than ask
the simplistic "why doesn't it work to give it away for free?" why not sit
around and figure out how many person-years go into building a quality product
and how much money is being given away up front. Then ask who can afford
to do that and what their chances of a good return are. The market is kind
of passing the point where it's willing to invest in new companies that only
lose money up front and is returning to traditional models of business that
make more sense. I think that's good. It doesn't mean no innovative solutions
can make money--it just means that being innovative is not a substitute for
being thoughtful. VC people want a 10fold return on their money in three
years. When you figure out how by giving away software you can get a 10fold
return on your money in three years, you might write it up as a business
plan and submit it to a VC outfit. If it makes sense, the fact that you are
poor will not impede you. They will fund you for sure and you'll be on your
way to rescuing us. If you can't get to the point of figuring out these
"little details", then you're at the point we're all at: the clear
understanding that it's tricky to make the transition.

Lisp is ESPECIALLY hampered because the kinds of things people mostly take
risks on in investment are "new" things. Lisp has to be reborn in disguise
to succeed. Some of us like it's tried-and-true nature and it serves us
as a community. Making it new might solve a short-term problem but also might
lose control of what it is out to do. (See my paper on Lisp as a political
party, at http://world.std.com/~pitman/PS/Lambda.html ) You can put lisp's
features into another language, but that may not make it Lisp. Or it may.
But it's tricky in any case. And meanwhile there are a lot of people who
think Lisp has had its time to succeed and has failed. Personally, my take
is rather different: I think people have had their chance to kill Lisp.
God knows they've tried very hard. The reason it doesn't die is that it
continues to offer features not available in other languages, and those
features continue to solve problems other languages don't. It will likely
survive until some language makes a sincere political commitment to care
about those issues--and if another language does, I frankly won't mind Lisp
dying. But it hasn't happened yet.

> Secondly, for what my limited experience and time are worth, I'd be very
> open to picking up a shovel and coding in the trenches. Any one else care
> to set up a project? Perhaps a web page that agressively touts Lisp as the
> strong language of the past, and most importantly the FUTURE.

This presupposes that Lisp's position must be evangelical. The fact is that
one reason Lisp doesn't succeed is partly that it's true that Java or C will
suffice fine for "hello world". One doesn't see the merit of Lisp until
very large applications, where the presuppositions of those other languages
break down. Then, often, Lisp will succeed. But people, because of so-called
"practice effects", prefer to use the language they started with and work
harder and harder to shoehorn their problems into that. THey don't reconsider
their language choice at the right time. So they don't switch. And mostly
they get by--or they get into such complexity they don't see clearly what
was holding them back. It's a very tricky problem since most people think
the kind of problems that Lisp solves are fairy-tale kinds of problems.

I think evangelizing the language is wrong. It just makes you fuss infinitely
against people who argue philosophically to no good end. What will make
Lisp succeed in the sense you want, if anything, is succesful applications.
Build something useful out of Lisp and sell it. WHen it makes money,
people will take note. (Incidentally, this is another reason not to go
open source. There are already open source lisps and (to round numbers)
no one took note. If there is a solution, it is down another path.)



> Yes, I do still think that Lispers need more PR, and the successes need to
> be hyped, and momentum needs to be built. I certainly don't mean to
> deflate any of you who have devoted so much effort. So thanks.

I don't see why this victory cannot be stealth. I think people will take
note if Lisp makes money. But if they don't, let's just all reap the rewards
of using Lisp and let them all wonder forever. I do think Lisp is hampered
by lack of some practical features. But by that I mean only that I personally
am hampered in my ability to get specific features from specific vendors.
That's not something we can legislate as a community. It's something
each vendor has to decide for themselves--which customer is "typical" for
the market segment they need to survive. IMO, the right thing to do is
largely to pester vendors for extensions you need to survive.

The community need is to standardize (formally or informally) those things
which are de facto agreed upon. If all vendors have a drawing interface,
and it's using the same model of relevant factors like brushes, cursors, etc.,
we should make it so you don't have gratuitously different interfaces.
If they all have processes in pretty much the same form, then common
interfaces help. But if only some offer gui builders, then it's premature
to say the community needs a gui standard. The right thing is to get
the vendors that are supporting real commercial work to put out what is
needed to support successes, and if that leads to gui builders all around,
let's standardize. But if it's only one vendor, a standard isn't needed and
will only hold things back. It's not until there is substantial agreement
among vendors that standards help.

Rainer Joswig

unread,
Nov 26, 2000, 3:00:00 AM11/26/00