datomic 2026-01-28

I believe they're not documented or otherwise promised to, but do find-scalar and find-tuple find clauses cause the query engine to stop working as soon as they unify on something to return?

i gather the same is true of sample in a find spec? all work for the :where clause is computed regardless and :find is just a projection of the resulting relation?

Query operates on and produces sets of relations, find is just a projection. There’s no “short circuiting”

Can think of dataflow as in -> where -> with -> find, each stage gets full result from one before

And I think I prefer it this way—it wouldn't make a lot of sense if running a query with find-scalar might only succeed because it avoided something that would have thrown if it had kept running to produce the full set

those forms save you absolutely no work at all

they're also not supported by the client api

(first results) and (ffirst results) are exact equivalents