> I have decided that man's best friend is 1) a dog, 2) hexdump. ;)
Indeed! Though in this case, when exploring the structure of a PicoLisp
database, I would recommend 'show' and 'edit'.
Perhaps you already found "http://picolisp.com/wiki/?usingedit"? It
explains this specifically in the DB context.
> I'm a bit confused with which is the "entity object" and which are the
> "B-Tree nodes".
Entities are objects of class '+Wrds', for example. Each such object may
grow to arbitrary size, has the list of its classes in the value, and
relations in the properties.
B-Tree nodes, on the other hand, are not objects in the OOP-sense. They
store the tree data in their value (the property list is empty), and
keep a fixed size (as determined by the block size of that DB file)
and split into two if this size is exceeded.
It doesn't matter in wich file these symbols reside. A single DB file
may hold both entities and tree nodes, though often trees are in their
own files because of different block size requirements.
> I think I will need eventually is for the Wrds file to hold lemmas, so
> objects that are semantically unique. And before had used a List prefix
> as a way of holding the article ("Teil" "r") ("Teil" "s") for that
> reason. Later there will be verbs which can be reflexive or not. And
> these are also part of the word semantically, are different lemmas.
> > In all (+List +String) cases it is a bit tedious to handle these for
> > data in the GUI. Note that you can use +ListTextField to map a
> > single text field to a list of strings.
> This is any case is a must, and if it is easier for the GUI to use and
> to reformat a simple string (for display) then just do that. And so
> maybe stick with just the ((rel wrd (+Key +String))?
Yes, that's best I think. Using plain +String, with +Key because they
are unique, and e.g. (gui '(+E/R +TextField) '(wrd : home obj) 60) for