Date: Wed, 24 May 2000 22:36:18 -0400
|Subject:||Pointrel Data Repository System for Python v0.01 released|
I finally got some information management code out the door...
The Pointrel Data Repository System is a loosely coupled set of concepts for data representation. It can be thought of as an information storage architecture. The code referenced here implements the simplest concepts in this system. William Kent's...
....ROSE/STAR system described in his 1979 book "Data and Reality" is similar to the Pointrel Data Repository System in intent in many ways.
The Pointrel Data Repository System includes a triadal data storage system. Using triads, one can build arbitrary complex networks of relationships. These dynamic relationships can define the equivalent of records or objects in a database. Triads are simply groups of three pointers that can point to other triads. In addition, as a concession to efficiency, each triad can be associated with a string. Rather than focus on lists or objects, Pointrel focuses more on relations.
This initial distribution is one possible implementation in Python of this "idea", which I have been playing around with in various languages for about twenty years. I've been going for an elegant compromise between flexibility, speed, and simplicity in storing and retrieving information. The Pointrel system aims at having a small number of unifying concepts that can be arranged in endless ways to build layers of complexity above them.
load of v0.01 and further info available at...
This version is made available under an X11/MIT "open source" type license.
The core Python source file for the Pointrel System is only 20K, but I hope you'll agree it can do quite a bit for such a small size and thus has a high usefulness per byte ratio. Of course, it can't quite match the ratio of the Forth "idea", which can fit a whole OS/Compiler/Linker/Editor in 1K.
See also the announcement posted yesterday on comp.lang.python...
The followup post contains a good example of how to use the Pointrel System.
Future versions may include support for operating directly under Squeak (in Smalltalk) and as a Server.
[Note: I am sending this note to people as interested individuals, not in any way as an extended activity of the Engelbart Colloquium
...in which I have occasionally participated, and not as a contribution to any related code base for that colloquium. This is for liability & other reasons, and hopefully someday soon such disclaimers will not be an issue when/if the Engelbart Colloquium "open source" vs. "permission to use" issues discussed in that colloquium are resolved. Note that the license does not prohibit use of the code by any organization, as long as they abide by the terms of the license including accepting the disclaimer of liability.]