At some point I stopped asking, “How do I write this selector?” and started asking a better question: What if component state could be expressed declaratively, while the compiler handled the selector logic needed to make it deterministic? That question eventually became Tasty.