Re: Graph database

2020-03-13 Thread Alexander Burger
On Fri, Mar 13, 2020 at 10:22:12PM +0100, Alexander Burger wrote:
> Perhaps this helps? https://software-lab.de/doc/tut.html#ext
> 
> It is really very simple.

Understanding PicoLisp symbols is perhaps the important point.

   https://software-lab.de/doc/ref.html#symbol

The rest is just making symbols persistent.

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe


Re: Graph database

2020-03-13 Thread Alexander Burger
On Fri, Mar 13, 2020 at 04:02:44PM -0500, Lawrence Bottorff wrote:
> Could you point me to a beginner's treatment of this topic, especially an
> example of a graph database, and what exactly a picolisp pointer is?

Perhaps this helps? https://software-lab.de/doc/tut.html#ext

It is really very simple.


> I'm afraid I don't even know what you mean by a pointer in this context. I
> know from C what a pointer is, but a picolisp pointer is beyond my
> comprehension.

Exactly the same as C pointers. The 32-bit version of PicoLisp *is* even written
in C.

The external symbols *point* to each other when loaded inte memory, via
properties or arbitrary Lisp structures. And they are loaded *into* memory on
demand, implicitly when they are accessed (lazy loading).

The higher DB levels then implement entity and relation classes, B-Trees etc.,
all on top of external symbols.

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe


Re: Graph database

2020-03-13 Thread Lawrence Bottorff
Could you point me to a beginner's treatment of this topic, especially an
example of a graph database, and what exactly a picolisp pointer is?

I'm afraid I don't even know what you mean by a pointer in this context. I
know from C what a pointer is, but a picolisp pointer is beyond my
comprehension.

On Fri, Mar 13, 2020 at 3:28 PM Alexander Burger 
wrote:

> Hi Lawrence,
>
> > I take it the picolisp graph database follows more the Neo4j property
> graph
> > idea than any RDF/OWL triples, correct? That seems obvious, but I thought
> > I'd check. I haven't dived in deep, buy you seem to use Lisp objects to
> > create a vertex. But then what are the edges? Again, I'm just getting
> > started.
>
> Sorry, I know absolutely nothing about Neo4j or RDF/OWL, but the edges are
> in
> fact trivial.
>
> As everything in PicoLisp is a pointer (except short numbers), the edges
> are
> indeed just pointers to other symbols. All those symbols in a DB (called
> "external symbols") are loaded lazily on demand.
>
> ☺/ A!ex
>
>
>
>
> --
> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
>


Re: Graph database

2020-03-13 Thread Alexander Burger
Hi Lawrence,

> I take it the picolisp graph database follows more the Neo4j property graph
> idea than any RDF/OWL triples, correct? That seems obvious, but I thought
> I'd check. I haven't dived in deep, buy you seem to use Lisp objects to
> create a vertex. But then what are the edges? Again, I'm just getting
> started.

Sorry, I know absolutely nothing about Neo4j or RDF/OWL, but the edges are in
fact trivial.

As everything in PicoLisp is a pointer (except short numbers), the edges are
indeed just pointers to other symbols. All those symbols in a DB (called
"external symbols") are loaded lazily on demand.

☺/ A!ex




-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe