[cells-devel] What's a cells-store?
Peter Hildebrandt
peter.hildebrandt at gmail.com
Tue Aug 26 13:29:36 UTC 2008
Hi Stefano,
A cells-store is a cells-aware data store. It is internally
implemented on top of a hash table.
The idea is as follows: Imagine you have a cell which depends on a
certain entry or the whole set of data in a table/database.
Several issues arise:
- what if the entry does not yet exist at initialization time?
- what if it is added later?
- what if the entry is overwritten/deleted later?
- what if the cell depends on the whole set of data and new data is
added/existing data removed?
I invented the cells-store so that I won't have to worry about these
things anymore.
Now you just use the bwhen-c-stored operator inside a (c? ...) clause,
and everything behaves as you would expect. You can check out
cells-store-test.lisp (or something like this) for a small example.
My core use case was GUI design: Some ruled cells of certain widgets
depend on cells slots of other widgets, which might or might not exist
at initialization time. So I keep all the widgets in a cells store,
each identified by a unique name, and can just use bwhen-c-stored to
refer to other widgets by name. If they don't exist, a default is
used, and once they are initialized, the cell is executed, and
everything behaves as expected.
HTH,
Peter
2008/8/26 Stefano Dissegna <stefano.dissegna at gmail.com>:
> Reading cells source files, I noticed cells-store. I think it has something
> to do with hash tables, but nothing beside this. What's its purpose? How is
> a cells-store normally used?
>
>
> Thanks in advance for an answer.
>
>
> _______________________________________________
> cells-devel site list
> cells-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/cells-devel
>
More information about the cells-devel
mailing list