A system for maintaining consistency between inter-dependant values with caching and lazy evaluation.
Project description
- Cellulose provides a mechanism for maintaining consistency between
inter-dependant values with caching and lazy evaluation.
You can think of it like a spreadsheet program – Many cells are are calculated from the values of other cells. When one cell changes, all of the dependant cells get updated with new values.
However, cellulose goes quite a ways beyond this. It guarantees that when a value is read, it is consistant with all the values it depends on. It also is lazy (read: efficient.) Calculating a value is put off till the very last possible moment, and only recalculated when absolutely needed.
Dependency discovery and cache invalidation are fully transparent and automatic. This greatly reduces a major source of bugs in software.
A goal of the project is to be as simple as possible, (but no simpler,) so that anyone wanting to seriously use it could easily understand the internals.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file Cellulose-0.1.tar.gz
.
File metadata
- Download URL: Cellulose-0.1.tar.gz
- Upload date:
- Size: 23.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a7d7c5a97299af392bba7b89996da08136d44aefbf0f6be1b954465f289fdb82 |
|
MD5 | 38a2b4492cf3adf8617a63126f469dce |
|
BLAKE2b-256 | f1ef7a8f585f2729281b7f7c4391c78c02d06a54c290a69090085ccfd062a836 |
File details
Details for the file Cellulose-0.1-py2.4.egg
.
File metadata
- Download URL: Cellulose-0.1-py2.4.egg
- Upload date:
- Size: 39.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a31cabe9a44c4ba89d55ae1e9c03f20e12ab7584f18edad233b37373330cd1e0 |
|
MD5 | 3d85d99e7817840a9ca8c6dd9026c644 |
|
BLAKE2b-256 | 35b23ebc243149de138755de4faec21f95ed056b14d32023a8489413f702cc39 |