Dispatch a call through a dispatcher()'s executable cache, compiling on a
miss. An input the dispatcher cannot execute is an error, named after the
offending argument; there is no fallback for the caller to take.
Arguments
- dispatcher
(
Dispatcher)
A dispatcher fromdispatcher().- args
(
list)
The (already evaluated) argument list of the call.
Value
dispatch() returns the call's result. With backend = "pjrt" that
is the output buffers wrapped into "AnvlArray"s and re-nested by the
compile callback's out_tree (see dispatcher()); with any other
backend it is whatever the compiled closure returned.
dispatcher_size() returns the number of compiled executables
the dispatcher currently caches.