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?
Yes
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
Thank you!
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
no
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