Re: Storing data and code in a Db with LISP-like interface

From: Neo <neo55592_at_hotmail.com>
Date: 28 Apr 2006 08:35:52 -0700
Message-ID: <1146238552.854074.157840_at_u72g2000cwu.googlegroups.com>


>>> Don't say flexible data, 'cause that's machine code. .
>> And I didn't :)
.
> Years ago, when db's like Oracle costed big-bucks and I worked for cheap companies I was inspired to pursue something similar so I can empathize with your cause ;-)

Ok, but my desire to develop the most general/flexible/systematic method of representing things has very little to do with the cost to purchase Oracle or SQL Server Enterprise (which I own). It has to do with limitations/impractically of other data models (RM, nested-link-lists, etc) to represent anything in a systematic manner.

> > you are already nearly out of the Matrix :)
.
> No worries. After 20 years of solid business and enteprise development I have returned to my roots. Games ;-) I hope you didn't mind my game-ishness.

Didn't even notice it. Maybe it a bad sign we are alike in some way :)

> Ok but don't be surprised if the world needs to be changed inside out
and upside down when the processing side comes into it.

I am counting on it. Much like what an andriod may need to represent/process, most of it being unknown beforehand, thus a very general data representation and processing methodology is required. For now I am focused mainly on the data side. And as the original example in this thread, code stored in db itself was able to determine root of a hierarchy entered prior to it's existance and new hierarchies added later and should work with the Food Judge Example also (although I haven't verified it).

> The RM is powerful enough to represent business data, it rocks the business world but it utlimately lacks computational power and conviction to go all the way in every realm.

:)

> Prolog is very cool and as Nick originally pointed out, you appear to be trying to reinvent it.

:) Depending on a specific person's "tunnel-vision", I haved accused of reinventing the hierarachal data model, network data model, multi-value databases, XML, Prolog, LISP and word processors.

> My first post to your thread (which I don't think you saw) was an encouragement that advocated extending Prolog as a /possible/ way to fast track your pursuit.

You'll have to excuse my stubborn-ness on this issue but the methodology used by Prolog and LISP to represent things will ultimately limit their potential. One can see this with RM already. Not even a completely rewritten SQL will extend it much.

>> While there were a few minor issues, overall Prolog was able to represent most things in the dbd's Food Judge Example B. So now we extend to Food Judge Example C ... .
> Neo I'm sorry, that little thing called day job plus wife and 3 kids are getting in my way so I will not have the time to provide you with detailed LISP and or Prolog equivalents. From what I've seen both can easily do the above (if that's any value to you?)

I do believe you/Prolog would get a lot further than RMDBs, but I have doubts in some areas which could only have been verified by implementing, but I can understand the impact on your time.

Let me see if I can engage you (or another ProLoger/LISPster) in a much simpler example. The goal: Find the thing with whom john's relationship is opposite that of with mary. Below is dbd's abbridged script:

(create person instance john)
(create person instance mary)
(create person instance bob)
(create verb instance like)
(create verb instance hate)
(create like opposite hate)
(create john like mary)
(create john hate bob)

// This query finds, it is bob.
(select john

          (select (& (select verb instance *) (select john * mary))
                     opposite
                     *)
          *)

Note: I deduct points for methodologies that are not systematic :) Received on Fri Apr 28 2006 - 17:35:52 CEST

Original text of this message