A Common Lisp implementation of spreadsheet-like dataflow programming for CLOS objects.
Cells is a Common Lisp library that implements dataflow programming for the Common Lisp Object System (CLOS). It provides spreadsheet-like reactive programming capabilities where cells automatically update when their dependencies change, enabling declarative state management in Lisp applications.
Common Lisp developers building applications with complex state dependencies, particularly those interested in reactive programming paradigms and spreadsheet-like data modeling.
Cells offers a unique approach to state management in Common Lisp by bringing spreadsheet-like reactivity to CLOS objects, eliminating manual update logic and making data dependencies explicit and automatically managed.
A Common Lisp implementation of the dataflow programming paradigm
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides spreadsheet-like formulas for CLOS, allowing developers to define data relationships declaratively, similar to Excel cells, as highlighted in the README's focus on spreadsheet-like programming.
Seamlessly integrates with Common Lisp Object System, making it a natural fit for Lisp's object-oriented programming without requiring external frameworks.
Manages complex data dependencies automatically, eliminating manual update logic and reducing bugs, which is core to its dataflow programming approach.
The README explicitly states there is no documentation other than the test suite, making it difficult for developers to learn, debug, or implement without direct help from the author.
As a niche Common Lisp library, it lacks a broad community, pre-built components, or extensive resources, which can hinder adoption and troubleshooting.
The mention of ports to Clojure and JavaScript, with MatrixCLJS having more capabilities, suggests reduced focus on the Common Lisp version, potentially leading to stagnation.