Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
1.) Implemented associated types for operators and vectors.
OperatorBase
now has two associated typesIn
andOut
for the scalar input and output type. Vector has an associted scalar type calledItem
. The trait methods have been adapted accordingly. This gives every object a native type. We could then implement adapters on top to allow conversion between different representations.2.) I have made a proposal for a scalar trait type. It is a subset of the
Num
trait from thenum
crate. It does not require string conversion and only needs addition, multiplication, subtraction, and division. It has no remainder operation as this might not always make sense (consider the scalar type for example itself to be a dense matrix). Not sure yet if this is best but would be good to have a definition that allows arbitrary fields as scalar type.3.) I updated the
test_mult_sketchy
test to succeed when the matvec panics.