You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have added close to ten tensor operations by now, and I have two major pain points that I want to fix:
I had to jump between different files to add a new operation. The files have become even bigger, so it's more difficult to navigate.
Tensor tests are wrapped with a macro, and editing code feels like I am editing plain text. Favorite IDE features, such as auto-completion or correct method lookup, do not work.
Here is my proposal:
For pain point 1:
Organize the code around tensor operations. This means one file per operation. All implementations for Numeric, Float, Int, and Boolean traits will be in the same file. Also, exportable tests will be in the same file.
For pain point 2:
Instead of relying on macros to export, we should use the rstest/rstest_reuse crate to make unit tests exportable, so that these tests can be imported into other backends. This way, we can ensure that the code is compilable and auto-completion is used.
The text was updated successfully, but these errors were encountered:
I have added close to ten tensor operations by now, and I have two major pain points that I want to fix:
I had to jump between different files to add a new operation. The files have become even bigger, so it's more difficult to navigate.
Tensor tests are wrapped with a macro, and editing code feels like I am editing plain text. Favorite IDE features, such as auto-completion or correct method lookup, do not work.
Here is my proposal:
For pain point 1:
Organize the code around tensor operations. This means one file per operation. All implementations for Numeric, Float, Int, and Boolean traits will be in the same file. Also, exportable tests will be in the same file.
For pain point 2:
Instead of relying on macros to export, we should use the rstest/rstest_reuse crate to make unit tests exportable, so that these tests can be imported into other backends. This way, we can ensure that the code is compilable and auto-completion is used.
The text was updated successfully, but these errors were encountered: