William Tanksley wtanksle@UCSD.EDU
Sat, 2 Jan 1999 12:58:43 -0800 (PST)

On Sat, 2 Jan 1999, RE01 Rice Brian T. EM2 wrote:

>> >arrows are abstract objects with N slots, the "default" being 2.
>> iteration
>> >on the default arrow type yields multi-dimensional arrow types.  each
>> slot
>> >is a reference to an arrow.  all arrows are available for reference.
>> I'm looking for more specifics.  Here are some.
>>  - what's an abstract object?

>a logical atom is something in a system which is not a construct, although
>statements can be made about them and constructs are made from them.  in our
>system, logical atomicity is relative, so i don't want to stick with one

So an abstract object is a logical atom?  That makes sense.

>however, this is what an 'abstract object' is not:
>	a Self object
>	an execution object
>	data+methods
>	a black box (this is contradictory. i know this.)
>	something with a 'clean' definition (why would we want to reflect on
>something with a clean definition, since we know that multiple ontological
>perspectives annihilate this attempt?)


And I don't think that calling it 'not a black box' is all that bad.  I've
just been pondering that concept with respect to Forth -- see, the
greatest Forth gurus all have an allergy to black boxes, and the greatest
of them all prefers to have all details in someone else's code be left out
so that he can implement them himmself and thus truly understand them.
But Chuck Moore is pathological anyhow :).

It's not a black box; it's a small, handheld tool.

>>  - how is the number of slots significant?

>it signifies positive statements that we make about what the abstract object
>"is" (which is, of course, relative even within the system).

Ah.  Like a Folder in Zope (www.zope.org) -- all Folders are identical,
but they become different when you put stuff in them (including other

Except that Arrows have a fixed number of possible references.

>>  - what is "iteration on the default arrow"?

>do you remember the Lisp-style linked list metaphor that i used for an arrow
>grouping mechanism, where {tail, head} becomes (car cdr)?  This is the same
>idea.  The way that you make a 3-slot arrow from a two-slot arrow is by
>combining the first arrow with a second whose tail points from the entire
>first arrow to the third slot.  Here it is in formal terms: an arrow of type
>(or dimension or order) N is an (N-1) type arrow and a primitive arrow (type
>2) which leads from the whole (N-1) type arrow to the Nth slot.  a type 2
>arrow is a primitive type with respect to this iteration.  none of this
>means that the size of an arrow is limited to the counting numbers (the
>ordinals / natural numbers) vice infinitary cardinals.

First of all, I see that when you say 'N dimensions' and 'N slots' you're
saying the same thing.  Wrong?  Right?

Okay.  And the 'type' of an arrow is essentially the same as its dimension
(sure, it's a different number, but big deal).

No problem about iteration, although I don't see how you're going to solve
any real problems that way.  This is FAR too abstract to actually
implement, at least as described.

Unless all you want is a gesture -- well, here you are: (define (arrow
head tail) (cons head tail)).

>this last statement suggests my attitude towards iteration: it is NOT a
>computation to be processed by a von Neumann architecture which calculates
>each iteration in some finite time interval with only as much time span
>available as the number of counting numbers.  neither is it equivalent to
>such a process in any way.  said attitude toward iteration which i just
>distinguished my viewpoint from does not truly understand abstraction.

Of course.  A pity ... I've been looking for a model of computation which
actually accounts for the fact that computers are finite (no current model
takes it into account), and all I see is a new one even worse (in that
regard) than all the others.  No insult intended.

>>  - what's a reference?  How does it differ from a slot?

>a reference is just a way to specify the connections between arrows in
>"arrow space", if you will.
>a slot is just a term that i picked up from Self which is misapplied here,
>since the object-slot ontology is not the issue.  i apologize.  i guess that
>a slot could be distinguished as the potential of an object for a positive
>statement of connection with another arrow.

Ah, eminently implementable.  So a slot is a data item which either
indicates an arrow or is empty.  No sweat.

>>  - what's the use?

>well, i could mention object-orientation and lambda-abstraction, but those
>uses (i believe) are obvious to you.

At the risk of seeming an idiot, I'll say that they're not.  I can see how
this system could implement objects, but since this system is itself
implemented using object-oriented design I don't see that as very special.
I don't see how it would implement objects in a way in any way superior to
any other system in current use (just my statement of ignorance and plea
for help).

As for lambda abstraction -- that doesn't make sense to me.  Lambda
calculus is about attaching names to things, and your description of
arrows hasn't mentioned names.  Unless you're going to spell them out with
arrows (but you didn't mention fonts).  Sorry; that was sarcasm, not a
request.  Perhaps it serves to illustrate my fundamental confusion.

>the main new benefit is arbitrary
>cross-cutting of ontologies _without_ the invocation of any special
>reflection method.

In the vulgar tongue, you can slice theories of knowledge in half.  Sounds
... unique.  Doesn't sound useful, unless you're a really agressive
debator.  I'm joking, but I'm serious that this sentance doesn't mmake any
sense to me.

>in other words, this language reflects "right out of the
>box", so to speak.  aspect-orientation will emerge as a property of the
>kinds of systems that Tunes requires.  (obviously this last statement begs
>explanation.  this will follow soon.)

Love to see it, although strangely enough I grok this more fully than most
of the rest of what you're saying.  I don't know how your system will
"implement" it, but I suspect I understand it anyhow.

>> You may have done a lot of study to get this theory, but I wonder whether
>> you've ever tried writing it down before.  You're using terminology from
>> diverse fields in ways which are not directly related to the original
>> field -- it's a healthy guess that the meanings have changed, but it's
>> _hard_ to guess how.  Your so-called specification won't be complete until
>> it contains all of the things I mentioned in my last post, with all of the
>> possibly ambiguous terms de-ambiguized.

>sorry.  i guess that i've messed with my mind a bit too much.

I totally understand that.  I _always_ do that to my ideas, and my first
posting is sometimes disasterously sloppy.  I'm _slowly_ learning how to
really think my ideas through while I'm writing about them.

>on the other
>hand, i could be quite irrititated by your apparent insatiable desire for
>terminological strictness.

I _really_ appreciate the time and patience you're putting in towards
giving us some understanding of your theory.  Please keep in mind that
none of us have any clue what you're talking about; we are plodding along
on no evidence aside from your own assurance.  We have no references; no
user testimonials; no common background; not even any proffered examples
of possible uses.  These are not things you have to provide, BTW, just
things that most acadamians would insist on.

But there's more to mmy questions than a mere theoretical hunger for
details (although I admit to that).  You asked us for an immplementation;
therefore, you are the 'customer'.  As such, I really need to find out
_what_ you want us to implement.

Hmm, here are some more questions from my textbook.  "Am I asking the
right person?"  "Am I asking the right questions?"  "Are there any more
questions I should be asking?"

>i personally don't give a damn about Western thought about language.

Your unfortunate loss.  Western thought is not the only way of thinking,
but it is immensely powerful and useful.

>i do indeed see it as destructive, for reasons
>which should not find their voice here, although they are far more complex
>than the things with which this project is directly concerned.

Indeed.  The end of total scientific comprehension is the total
destruction of the thing studied.  Heisenberg assures us that this isn't
an accidental effect of an unfortunate mistake in western thought, though;
it's fundamental to all of observation.

>[statement i made which turned out to be quite esoteric :)]
>> Very Zen.  As such, I can't argue with it -- viewed as a koan, it holds
>> too much truth in its own contradiction.  Viewed as anything else, of
>> course, I have to call it rubbish.

>yes.  one of my central mental excursions is throught the complex infinitely
>dimensional manifolds of human (and otherwise) thought.  i have to admit,
>then, that mathematics is in a way my "religion" of sorts for transcending
>the Eastern ideas of Zen and the Western ideal of the Overman.  it's a shame
>for you that i don't canonize my ideas into dogma so that you can reduce my
>thoughts to a controllable item.

Well...  You don't have to understand my motivations to explain your idea
to mme.  Nor vice versa.  I wouldn't mmind hearing more, but only if you'd
like to, and at that only if it doesn't take time away from your mmaking
Arrows implementable.

It's kind of a pity that you're spending so much energy transcending
everything, though.  Like Western Science for its own sake, transcending
as such is a futile pursuit.  Transcend only the wrong; embrace the good.