Fare's response on threads
Lynn H. Maxson
lmaxson@pacbell.net
Sun, 17 Sep 2000 12:48:38 -0700 (PDT)
Responding to Derek L. VerLee response to my response about Fare's
response to his (Verlee's) inquiry, a series of reflective
communications.<g>
"First, I dont think anyone is claiming sentience or free will in
the way the humans experiance it, or in even anything but the most
stretched definitions of the words."
I would feel better if anyone pursued such a claim for the
challenges it offers, but, in fact, a disclaimer with respect to
"reflection" occur in an earlier set of responses on this list. I
accept this as fact except for Fare's continued references in his
documentation and communications to the "system" and what "it"
does.
If we agree that software running on hardware together form a
"system" of automata, then the best that they can offer is
mimicry. They mimic (within their horribly restricted domains)
what (and how) humans have instructed them to do. While we may
for convenience in communication refer to such mimicry as "the"
system, in truth it is "our" system: nothing occurs there not
"allowed" by us.
Now why do I stress such a distinction, that regardless of how we
refer to something we remain cognizant of its "true" nature? For
me it gets to use of metrics, a means of measuring, and within a
group of such measures a quantitative means to allow comparisons.
This means doing what computer science has never done: provide a
system of comparative linguistics. In a history which to date
encompasses literally thousands of programming languages and
variants we despite other claims to computer "science" have
provided for no "objective" comparative (quantitative) measures.
Let's be clear competition for "a" or "the" Tunes HLL exists. We
are not cojoined in an independent, collaborative discovery
process. Instead we have candidates. We have candidates even if
we do (or did) not offer them as such. When I first came to this
group I had a language, SL/I (Specification Language/One), which I
felt met the requirements that Fare has documented. In point of
fact I had no intention of or interest in offering SL/I as a Tunes
HLL. From my perspective SL/I is a pure, but universal
specification language. Whatever choice made here on a HLL would
be implementable in SL/I. The primary purpose of SL/I lay in
producing a tool, the Developer's Assistant, which would enable
the implementation of any language or languages including itself:
self-reflexive, self-defining, and self-extensible.
On the other hand why should Tunes opt for anything less? It's
not a matter that not doing it is bad for some reason, but why
would you select a choice of one HLL which required the use of one
(or more) different HLLs for its implementation? Why would you
settle for a 10%, 50%, 75%, or 99.9999% when you could have 100%?
Now within the definition of HLL I include symbolic assembly
language, having spent my early years functioning as a (manual)
compiler in writing in actual machine code. With the advent of
imrovements to symbolic assembly first offered in IBM's H-level
Assembly Language and now in its Advanced Assembly Language it
certainly provides more native HLL support than either C or C++
(if you exclude their "need" for third-party libraries).
"The highest goal of computer science is to automate that which
can be automated. Most computer scientists, it seems to me, have
forgoten this high goal (with the exception of the TUNES crew,
which is one of the things that has me so intrigued with TUNES)."
Here we have to part company. As an IT professional with some 44
years of practice in application development however tempting to
make automation an end in itself I see it as a means. Moreover
one in which we have to measure its cost relative to its value.
That equation dominated automation decisions in the early years
when such decisions ran into the tens and hundreds of millions of
dollars.
However, as hardware has become significantly less expensive in
that time to now software costs have continued to rise. Those
costs continue to offer an economic barrier with respect to the
cost versus value judgements for automation. Thus if a HLL does
not offer a "solution" to the cost equation relative to other
HLLs, then for other than esoteric anomalies what does it have to
offer?
Let's be even more specific.
We have two ways of defining a variable, explicitly and
implicitly. It is one thing for a language to "support" one or
the other, it is another for it to "require" one exclusive of the
other. Any language metric in which one language supports both
while another "allows" only one provides a means of comparison.
Now, so what? Well, consider another attribute (a Fare HLL
requirement). Extensibility. Does an implicit variable defining
language support extension to explicit? If it does not (and only
on its own linguistic terms) and another does, should we not have
a means, a metric, a measure, which clearly depicts this?
You may be impressed by a Slate that has been implemented in
Scheme or a Self that has involved the use of some other language,
but I am not. For if you cannot implement Slate entirely with
Slate or Self entirely with Self, then you are not talking about
"a" Tunes HLL, but multiples. I would have to go back over the
list, but I don't remember "self-sufficient" as a Tunes HLL
requirement. If it was, then none of the current candidates would
qualify.
You must understand then as I develop SL/I that I can make no
references to something being handled by the "system", a cop out
(IMHO) which occurs frequently in these discussions. Nothing is
handled by SL/I except in SL/I. It is not an academic exercise
which is left up to the student.<g>
At the same time I believe that the Tunes HLL requirements need
specifying to incorporate a "proper" metric to allow "objective"
comparisons of features. To that end I would refer to the rules
in Prolog which allow specification of a set of relationships
(instances) and algorithms. With such and in that manner we could
"automate" the comparative evaluation. It would certainly save
time when it comes to offering a Tunes HLL candidate relative to
existing ones as well as indicate when someone has offered a
"better" (in some manner) choice.
Now if you cannot provide such an operational definition with
clear measures for differences, then you have failed a basic tenet
for a "science" or the claim to represent one. For my money we
can defer consideration of Tunes HLL candidates until we have
given Fare the assistance he has requested with his requirement
definitions. At that point we may tolerably better associate our
efforts with "computer science".