sermoz/dyrel.py
Dynamic relational engine embedded in Python
What is DyRel?
DyRel is a live environment for relational programming in Python. Its key features are:
-
Liveness
The program you're working on is always up and running, it is live and
talking to you at any time. You have instant feedback on your actions.
This allows for much better programming experience and more productive
development. -
Incrementality
The effects on the system add up incrementally, just like they do in the
real world. No need to necessarily restart, recompile, reassemble from
the ground up when you make a slight change. Everything is made with
changeability and incrementality in mind. -
Reactivity
Some things are defined in terms of the others. When these other things
change, the first ones automatically change accordingly. -
Relational model
All your program state is specified with relational model instead of the
more usual object graphs. This allows for much more uniform handling of program
logic. -
Derivation
You specify basic facts and rules that describe how to deduce more knowledge
about your domain. The system maintains derived information in an
incremental and reactive way.