Idea: would be nice if e/Offload took f! & args and called (apply f args): we often want query to re-run when a related stream changes that is not used by the primary function body, so end up moving it out to a clj function.
Would mess with optional m/blk setting, but maybe an explicit e/OffloadIO vs e/OffloadCompute. I guess this could be a helper 🙂
(e/Offload #(partial apply f xs)) ?
the wordy pattern is when f should rerun on an unrelated value. I.e. rerun (e/Offload #(f a b c)) when db changes and we get (e/Offload ((fn [_db] (fn [] (f a b c))) db))
I just realized we can simplify to (e/Offload (fn [] db (f a b c)))
ah