Christopher Allan Webber

Where can I put my Guile data?

Christopher Allan Webber at

Looking for places to store my activitystuff tests for a little demo. It looks like my options are:

  • guile-dbi, very minimalist, just the basic SQL commands, nothing higher-level at all. Hasn't seen commits in 2 years and very few even then. Still, maybe simplicity here is a bonus: probably everything still works.
  • Do the above, and try to make a nice wrapper around jsonb which might be nice because activitystreams are json by default (more on jsonb)
  • Just do everything in-memory to start with, and for persistence, serialize everything to basic scheme structures with read/write functions. Upsides and downsides to this are obvious.
  • Minimalist key-value store with guile-gdbm (also hasn't seen commits in a while)
  • Could go totally crazy and try using slib's relational database system. Really interesting database manifestio behind it. Looks pretty interesting, but almost no users, given complexity.
  • Craziest option: use OpenCog's atomspace which has Guile bindings. (examples) Supposedly single-threaded, also all functions seem to operate on some global state.
  • Yak shaviest option: finally write"mollydb", a simple json-files with minimal index (xapian?)

Claes Wallin (韋嘉誠), Claes Wallin (韋嘉誠) shared this.

Show all 8 replies

Also guile-wiredtiger.

Looks like wiredtiger was accquired by MongoDB. It looks still active though, and also a really interesting project.

Curiously it's GPLv2 or GPLv3, not or later.

Christopher Allan Webber at 2015-05-31T17:47:39Z

3rd party software included in the WiredTiger distribution

The WiredTiger software distribution includes additional 3rd party software licensed under a variety of licenses. This software is NOT included in the WiredTiger library binary as built by the distribution. This software is used for peripheral tasks, such as building the WiredTiger documentation, testing the WiredTiger software or graphically displaying WiredTiger run-time output. If you extract portions of the WiredTiger software distribution for inclusion in other packages, or redistribute selected portions of the WiredTiger sources, please review the copyright notices and LICENSE files included in the WiredTiger distribution for the terms and conditions of such redistribution.

huh?

Christopher Allan Webber at 2015-05-31T17:50:57Z

That explanation makes sense to me. Some software ends up part of the library binary, some is tooling to create the binary and their licenses don't apply to the binary, they are distributed by "mere aggregation" in the source distribution. What's your peeve?

Claes Wallin (韋嘉誠) at 2015-06-01T10:34:51Z

X11R5 likes this.

Somehow I never found out that guile-pg exists... guile bindings for postgres!

Christopher Allan Webber at 2015-06-07T17:50:21Z

X11R5 likes this.