objects and messages

RE01 Rice Brian T. EM2 BRice@vinson.navy.mil
Tue, 20 Oct 1998 18:45:04 -0700


My ship's LAN has been down for a few days, so forgive the delay.  I
feel that I should take a stand on how I must interact with the group,
although it may seem quite unfair.  I'm going to avoid directly
answering anyone's questions until I'm ready.  (i.e. OS Design... )  One
reason is that I'm on a 'karma-shakedown' if you will: I seem to be
accumulating a lot of bad karma stress at work and losing my ways of
channeling it.  So I've got to avoid arguments, which also means I'll
try not to contradict.  So here goes.

If we are to consider Tunes as an ultimate abstract type system, then of
course abstraction (maybe this word is not right to use any longer) is
our concern.  The usual way of telling the computer what we're thinking
is using text symbols and relationships in code based on adjacencies,
etc.  In other words, Syntax.  That fabulous word associated with all
known languages.  Since I have chosen to deal with the relativity of
ontologies both explicit and implicit, the relativity of syntax should
also be dealt with.

What makes a comma and a parenthesis symbol part of a language?  What
does an assignment of any kind mean?  Why are these things necessary?
Why, in so many computer languages, is the meaning of the arrow symbol
(->,>>,<-,...) so disparate and incompatible?  Why must programs consist
of sentences?  Are we lecturing to the computer?  What would an
effective HCI dialog involve, in terms of an abstract programming model
(not ML)?  Isn't punctuation just another barrier between the user and
computer?  What about dynamic syntax?  How would syntax information be
presented to the user for quick absorption and/or recognition ('oh,
we're talking in That manner now.')?  Why must all un-ordered objects be
represented as ordered ones in current implementations?  What affect
does this paradigm have on the user?

As for semantics:

What are types?  What do they represent in logical theory?  Why do we
need symbols to manipulate semantical systems (i.e. 'there exists some
object x such that that object (x) ...')?  How can we create
'intensional' systems of semantics where referral is never implicit?
(the obvious answer of reflection is not specific enough for me here)
(such a system would have objects where hyper-programming would be taken
to its extreme: in the user's view, there is only one object with the
desired behavior: it is the thing defined by the behavior specified.
referral would be invisible, eliminating the basic need to parse)  How
could we reflect on logical symbols (and, or, imp, iff, not, forall,
there_exists) themselves?  What 'types' would they have?  Are they just
symbols for a language (i.e. equivalent to semantics-tableaus) or more
than that?  Should we create systems for multiple types, aggregate
types, tuples of types, or types only through orthogonal type-systems?

Is anyone here familiar with model theory?  If so, how can we make it
representation-independent?  In other words, how do we reflect on it to
decompose the standard logical symbols it is based on into other logics,
for instance (like modal/multi-modal/arrow logics)?

Don't worry, I'll get to some good answers tonight, as soon as I get rid
of these blues.