au
au copied to clipboard
Investigate proof of concept for supporting vectors and matrices
The goal is to flesh out a candidate concrete plan for implementation, look for risks in the plan, and investigate them.
Right now, "support vectors and matrices" is a little nebulous. We need to make it concrete.
Off the top of my head, this includes:
- [ ] Check details on "forward declare Eigen types" idea
- [ ] Write some tests with "shaped" units
- [ ] Have a strategy for avoiding ODR violation risk
One big risk will be ODR violation. We will need to define some kind of "shape traits" for matrix and vector type reps (as well as complex reps). Those traits will necessarily live in a different file than where the type is defined in many practical cases (e.g., Eigen types). We need to make sure that we can't accidentally have a default generic definition that could get picked up in files where users forget to include the shape traits: that could open us up to an ill-formed, no diagnostic required (IFNDR) situation.