> So far I've failed three times to write something that is short and to
> the point but brevity has never been my strong point. If you're in the
> mood for a long read, well at least you've been warned in advance and
> I've put a fitting title on it.
>
> The Common LISP Road Block Manifesto
I found it useful and that is despite that fact that on
most days, and most topics, I find discussions of licensing
to be about as interesting as watching paint dry.
You wrote something useful AND interesting; if it had to be
long to make those points, so be it.
To now I haven't posted an introduction preferring to wait for
something to say in addition, even though I was one of the
early participants in the comp.lang.lisp thread on the (now
known as) "Gardeners concept". Even before it was called
"Janitors".
I have been programming (sometimes) in Lisp since 1980. All
things being equal, I would program in Lisp -- but in the real
world all things are seldom equal.
While I have written production programs in some thirty or
more languages, my use of Lisp has always been "for fun"
because the language never provided me all of the combination
of features/availability/readiness etc to allow me to
substitute it for all of the other languages at my disposal.
No matter, I always come back to Lisp because I ENJOY it.
And despite 25 years having passed, I am still a Lisp "newbie".
When (and until) I program everyday in a language for a week
or three my skill level rapidly improves but I have seldom
done that in Lisp.
One of the truly irritating things about the otherwise VERY
helpful Lisp community is that whenever some newbie (or even
expert) offers legitimate constructive criticism and seeks
solutions to these real (for that person) deficiencies of the
actual Lisp implementations, the "experts" tend to explain
why it is NOT a problem rather than how to solve it.
One of those issues is the licensing even if that isn't as
much fun as "writing utilities" it is important.
IF we Gardeners can actually create, or pull together, or
even explain these 'solutions' while rounding off some of the
sharp corners and building some useful "jigs"* that make using
the power tools of Lisp easier then perhaps many of these
problems will disappear.
[* Anyone who has ever owned, and successfully used a radial
saw, knows how incredibly useful that tool SEEMS to be, but
that without the creation of small "jig" projects the simplest
things are nigh on impossible, even though those same projects
become almost trivial once the appropriate jigs and utilities
are created -- these jigs make the saw controllable and
precise, ready to use.]
Woodworkers start to become craftsmen (and women) when they
tailor their power tools with small projects that make using
those extremely efficient tools possible.
I personally need:
A Lisp with a GUI for Windows that is low cost or free
(I don't have a budget for this since it remains
"for fun" until I do something professional, and
I already have both commercial and free tools that
CAN do everything that I MUST do.)
Ideally it would be compatible with other Lisps and work
on other operating systems. I don't currently work
on Macintoshes, but I have written code for Mac,
and for both Unix and mainframes in the past.
I would like to use code offered by Macintosh or
Linux programmers and would be delighted if they
used my code, or perhaps ran some of my programs
on those operating systems.
I may sell some of my productions, but will
probably offer others (or all) for free.
My attempts include CLisp, ECL, ABCL (Armed Bear),
and even some of the Scheme implementations such
as "Dr. Scheme" but I really would prefer Common
Lisp.
My goals include building education software for small
children (infants, tots, pre-school and up.)
Much sound, simple graphics including both drawing
shapes and displaying Jpeg/Gif/bitmaps with perhaps
animations.
These things are easy enough to do in Java, or
perhaps with C++.Net or C# and Visual Basic but
as soon as I start using those languages or libraries
it closes of my options or restricts the availability
of my code and where my programs will run.
Java is NOT on of my production languages but it
is starting to look like my best choice for many of
the things I wish to do.
I still wish my BEST choice were Lisp.
Armed Bear has the advantage of using and working
with Java so it gains many of the features that
make Java a good choice but it's speed can be
a bit (only a bit) of a problem and the support for
close is rudimentary (even according to its docs,
not just in my opinion.)
Ideally we would have a GUI builder, a la Visual Basic,
Java, or Visual Studio (and similar tools for the
Macintosh etc) or be able to take advantage of
such builders from Lisp.
Ideally such a Lisp would produce an EXE, or have a
good way to package the program so that startup
is rapid and efficient. Java suffers frequently
on this point -- not everyone has the run time
pre-installed. Same for Lisp.
Although I was formerly a consultant programming in primarily
either C++ or (years ago) Pascal, and occasionally Visual Basic
when I worked for Microsoft, the beauty of Lisp always brings
me back.
Even though I now have grandchildren:
"I want to be a Lisp programmer when I grow up." <grin>
One of the reasons that Lisp is so beautiful is that it allows
the programmer to tailor the language to the problem (see
Paul Graham's "On Lisp" and other works for elaboration of this
idea.) Lisp shortens the cognitive distance between the problem
and the solution.
BUT, all of these "little issues of implementation" which the
experts try to pretend don't exist (or don't matter) work in
precisely the opposite direction: They increase the complexity
of any solution, require the programmer to work through multiple
levels of tool indirection, and thereby increase the cognitive
distance between not just the programmer and the solution, but
even between the programmer AND LISP.
Right now, I have a couple of hacked together (trivial)
programs for teaching numbers (etc); these are written using
a very C-like subset of C++ (not even MFC) on Windows because
I only wanted to determine if the ideas would work, but my
desire would be to get those running under Lisp.
Over the holidays, I intend to garden on my "kids' programs",
and would really like to use CL for that even if it means
building some of the tools and creating some "jigs."
--
Herb Martin
"I want to be a Lisp programmer when I grow up."
_______________________________________________
Gardeners mailing list
[email protected]
http://www.lispniks.com/mailman/listinfo/gardeners