Re: Pizza Example
Date: Mon, 12 Apr 2004 23:48:18 GMT
"Dawn M. Wolthuis" <dwolt_at_tincat-group.com> wrote in message
> "Eric Kaun" <ekaun_at_yahoo.com> wrote in message
> > Of course it's amenable, just much less so. It's its lack of symmetry
> > consistency that poses a problem. By nesting values inside values (and
> > a further layer inside that, I believe), you complicate the algebras,
> > closure, and optimizations. Relational is much simpler, hence its power.
> Possibly conceptually simpler as a mathematical model, but in real life it
> does not seem to be simpler at all. The end-user sees it as symmetric
> the vocabulary is in place for that to be the case.
> LIST STUDENTS COURSES WITH COURSE_NAME LIKE "A..."
> might list the students and all of their courses with a name starting with
> LIST COURSES STUDENTS WITH STUDENT_NAME LIKE "A..."
> might list the courses and all of their students with a name starting with
> It is not symmetric when the vocabularly has not been put in place for it
> be so, for example, if the student name (which would obviously not be the
> stored foreign key for the student and is not physically stored in the
> COURSES file) is not placed in the vocabularly of the COURSES
I see. It just seems like you're simulating symmetrical access (e.g. relational joins) by mapping a hierarchical structure into a pseudo-relational view. Is creating this vocabulary necessary for any linkages, regardless of "nesting level"?
> > On a related note, things like objects add a great deal of complexity in
> > pursuit of "intuitive" modeling techniques; specifically hierarchies,
> > graphs, and a persistent (no pun intended) confusion between variables
> > values. That additional complexity always comes at a cost, and it's
> > unfortunate that people are so uncomfortable with symbolic logic and
> > disciplines that they bite into much more complexity than they would
> > otherwise have to, simply because the "operational" (procedural)
> > appears intuitive.
> It doesn't just "appear" intuitive -- it typically IS more
> intuitive. --dawn
Maybe, but I still wouldn't base a computational model on intuition. After all, the aim of symbolic logic (and Leibniz's Dream) is to automate reasoning through sheer symbol manipulation - precisely what formal means (pertaining only to form - symbolic representation). So we're at something of a crossroads - we either proceed in a direction that continues to make intuitive sense (and if it's to end users, I'd place little stock in this), or we proceed down a path of greater automation.
I don't see the two converging, just as none of the "higher-level" languages have ever succeeded (or WILL ever succeed) in making end-users into programmers. We may as well bite the bullet and use effective means for automating reasoning, which is the reason (no pun intended) that we invented the lil' buggers...
> P.S. I've been mulling over Date's write-up on the issue of whether a
> can "be" a relation. The argument against it seems to come down to ...
> you were to create a class that defines a relation type, then you would no
> longer be consistently following the relational model". I suspect I'll
> some questions or opinions on that matter soon.
Since you're so good at it, how about starting another thread? I have some things to say on this, and it's a neat discussion, but I'd rather you launched it...