This release splits out the TACO binary into a separate package tensora-taco
. This package is optional, making the TACO code generator optional. The native Tensora code generator is still included and used by default. TACO can be still be used as an alternative code generator if the tensora[taco]
extra is installed.
Also, these other changes:
- The signature of
tensor_method
was changed so that theoutput_format
andinput_formats
were combined into oneformats
dictionary - Renamed
PureTensorMethod
toTensorMethod
to reflect the decision that mutable assignments will never be supported in Tensora - Most of the attributes on
TensorMethod
were made private - Cache on a parsed
Problem
, instead of on the string versions of assignments and formats - Raise a nice exception on
TensorMethod
when trying to broadcast to target indexes because there is no way for the dimensions of those indexes to be known. Generating such kernels via thetensora
CLI is still permitted. - Raise a nice exception when a tensor and and index have the same name in an assignment
- Remove
Tensor.from_scalar
; you could always useTensora.from_lol
- Do not cast the result of a vector inner product
a @ b
to a Python scalar; leave it as a scalarTensor