From: Kenny Tilton
Subject: (trying again) From the June Lisp-NYC meeting: "BL on CL: Bruce Lee on Common Lisp"
Date: 
Message-ID: <3EE89C66.5070204@nyc.rr.com>
The following one-act play debuted Off-Off-Fuggedaboutit-Broadway at the
Time Out Sports Bar on Tuesday, June 10, 2003. We did not wait for
Guffman before proceeding.

The part of Bruce Lee was played by Anton van Straaten, with playwrite
Kenny Tilton filling in as The Interviewer. van Straaten sent chills
down the spines of the audience, and Tilton did a good job of staying
out of his way.

Also noteworthy: Jay Sulzberger's walk-on cameo performance brought the
show to a halt, and Marc Spitzer provided comic relief by heckling about
Lisp variables being strongly-typed.

All of Bruce's speeches quoted verbatim from:

     Lee, Bruce "The Tao of Jeet Kune Do", Copyright 1975 by Linda Lee.
     ISBN 0-89750-048-2

The show probably went something like this:

          "BL on CL: Bruce Lee on Common Lisp

Please give a warm welcome to Mr. Bruce Lee, known to most of you as a
star of action films and television.

What you may not know is that Bruce is also held in extremely high
regard by many real martial artists. �The Tao of Jeet Kune Do�, his book
on martial arts, until it was published for widespread distribution, was
given by teachers to their students only after they had passed the
highest tests of proficiency in their chosen art.

Bruce joins to today to talk about Lisp.

Q: One prominent feature of Lisp is that variables are not typed.
Programmers assign any type of object to any variable. They just focus
on the algorithm. Your thoughts?

Bruce: To obtain enlightenment in the martial arts means the extinction
of everything which obscures the �true knowledge,� the �real life.� At
the same time, it implies boundless expansion...

Q: So you like macros. But getting back to untyped variables, some C++
advocates argue that strong static typing is essential because it lets
the compiler catch certain bugs.

Bruce: How can there be methods and systems to arrive at something that
is living? To that which is static, fixed, dead, there can be a way, a
definite path, but not to that which is living. Do not reduce reality to
a static thing and then invent methods to reach it.

Q: We�ll get to generic functions in a moment, Bruce, but what about the
bugs the Lisp compiler does not catch?

Bruce: The great mistake is to anticipate the outcome of the engagement;
you ought not to be thinking of whether it ends in victory or defeat.
Let nature take its course and your tools will strike at the right moment.

Q: Gotcha. Just code, because testing can find the bugs.

Bruce: One who is possessed by worry not only lacks the poise to solve
his own problems, but by his nervousness and irritability creates
additional problems for those around him.

Q: Another controversial feature of Lisp is that of variable capture by
so-called unhygienic macros. Bad idea?

Bruce: The localization of the mind means its freezing. When it ceases
to flow freely as it is needed, it is no more the mind in its suchness.

Q: So you see capture as a feature. What about the silly whining we hear
about the ubiquitous parentheses as delimiters?

Bruce: Voidness is that which stands between this and that...all forms
come out of it and whoever realizes the void is filled with life and
power and the love of all beings.

Q: This and that, left and right...I like it. But you know, as good as
Lisp is, a lot of people are concerned that not many people use it.
Everyone else uses Java or C++. It is after all a little scary using
something no one else uses.

Bruce: To express yourself in freedom, you must die to everything of
yesterday. From the �old�, you derive security; from the �new�, you gain
the flow.

Q: Die? Still sounds scary. Even some Lisp gurus concede Lisp is too
big. One called it a ball of mud.

Bruce: Jeet Kune Do favors formlessness so that it can assume all forms
and since Jeet Kune Do has no style, it can fit in with all styles. As a
result, Jeet Kune Do utilizes all ways and is bound by none and,
likewise, uses any technique or means which serves its end.

Q: But other languages adhere to core guiding principles,
all-blank-all-the time. Smalltalk and Java are all objects, Prolog is
all rules, certain constraint languages used constraints even to assign
to a variable. Isn�t a core principle vital to a language?

Bruce: One can function freely and totally only if he is �beyond
system.� The man who is really serious...has no style at all.

Q: Don�t we need a steady, theoretical beacon to guide us as we wrestle
with a problem?

Bruce: To fit in with an opponent one needs direct perception. There is
no direct perception where there is resistance, a �this is the only way�
attitude.

Q: But folks respond favorably when they hear a language has a deep
consistency, such as Scheme where, as van Stratten says, �everything is
a function�.

Bruce: Good man, that van Straaten! Stylists, instead of looking
directly into the fact, cling to forms (theories) and go on entangling
themselves into an inextricable snare. Set patterns, incapable of
adaptability, of pliability, only offer a better cage. Truth is outside
all patterns. When one is not expressing himself, he is not free. Thus,
he begins to struggle and the struggle breeds methodical routine. Soon,
he is doing his methodical routine as response rather than responding to
what is.

Q: Well that certainly sucks. But please shorten up those answers, we�re
almost out of time. I guess you must like the interactive quality of
Lisp development.

Bruce: Truth is a relationship with the opponent; constantly moving,
living, never static.

Q: That�s a big �yes.� What about the runtime dynamism, with functions
as first class objects and all that.

Bruce: If nothing within you stays rigid, outward things will disclose
themselves.

Q: What�s your favorite variant of Lisp?

Bruce: Scheme! [Interviewer scowls, actor returns to script] If you want
to understand the truth in martial arts, to see any opponent clearly,
you must throw away the notion of styles or schools, prejudices, likes
or dislikes, and so forth...In this silence, you will see totally and
freshly.

Q: You don�t want to lose any fans, do you?

Bruce: It is futile to argue as to which single leaf, which design of
branch, or which attractive flower you like; when you understand the
root, you understand all its blossoming.

Q: OK, don�t tell us. But what can we do to make Lisp more popular?

Bruce: Wisdom does not consist of trying to wrest the good from the evil
but in learning to �ride� them as a cork adapts itself to the crests and
troughs of the waves.

Q: In other words, learn Java. Any other words of advice for our listeners?

Bruce: Be at once absorbingly open and rootily relaying your captivating
total presence with appropriate inward time.

Q: What do you mean by that?

Bruce: [holds up blank sheet of paper]

[Exeunt]

-- 

   kenny tilton
   clinisys, inc
   http://www.tilton-technology.com/
   ---------------------------------------------------------------
"Everything is a cell." -- Alan Kay