>>>>> "CMG" == Carlos M Gutierrez <carlos@gutierrez.com> writes:
CMG> How about using DB-style databases, but the additional information
CMG> would be stored separated by '|'s
Well, that's a possibility, but it's a pain to then have to deal with
quoting.
CMG> $user{'luser1@luser.com'} = "fullname|digests|var3|var4|varN|";
And if any of those fields contain a '|'? Or any other character you might
choose? Tabs are probably a good choice because you can safely smash them
to spaces in all cases we can control, and they aren't legal in all cases
we can't control (email addresses + comments).
CMG> or is this similar to "MLDBM"? (not familiar with it)
MLDBM lets you store complex data structures (lists of lists of hashes of
hashes of lists of scalars, say) as the values of a tie'd hash. It's just
a cute hack using Data::Dumper behind the scenes, which is why it would be
great for some things but might end up being pretty bad for what we need.
Someone needs to do some testing.
CMG> One could have secondary indexes to speed some lookups, but
CMG> synchronization and locking between 2+ dbm files becomes a tricky.
Especially if you assume that the machine will crash in the middle.
The real problem with databases is that people can't poke about in them,
and rest assured that people want to do so. I suppose it's easier to start
with a flat file format having the data fields and then decide what to do
about a database later. Right now I'm trying to operate at an even more
basic level of duplicating the 1.9x functionality.
- J<
Follow-Ups:
References:
|
|