Skip to main content

Module operation

Module operation 

Source
Expand description

Resolved numerical operations over shared Read plans. Kernel::try_resolve fixes the computing dtype, result dtype and character policy from an object’s Formula. The same definition supplies native execution and graph formulas.

DType::computes_in promotes unsupported Boolean and integer inputs to i64, then to the NumPy float width. Unsupported character arithmetic is a domain error.

Structs§

Kernel
One resolved mathematical definition and its captured numerical policies.
Settings
Numeric settings rebound for each execution, outside item loops. tolerance is the run’s comparison tolerance: tolerant objects compare within it, and a kernel reads a float argument as a whole number within it (Projection::Wholes). BPL sets it nonzero only under Mathish, and Python only in Mathish mode.

Enums§

Map
A resolved elementwise call. Kind selection is complete before this is executed.
Projection
How a kernel reads its inputs before its formula runs (Kernel::projection, with_projected).
WriteRoot
A write’s logical root, or storage transferred by its final reader.

Functions§

at
Writes to the addresses of ids, replacing or combining with the current items. Invalid positions, including fills, write nothing; repeated positions combine with the earlier result.
choose
product
report_maps
Report whether a kernel reads its operands through a non-contiguous plan.
whole_numbers
values as the whole numbers they equal within tolerance t (tolerant::wholes), as an integer computation reads float arguments. BPL passes the comparison tolerance, which only Mathish makes nonzero. A fraction, or a magnitude of 2⁶³ or more, is DOMAIN.