The MakeTensorOp can become an interface like LinalgOp while each style of pointer has a dedicated operation. This will avoid operands being ignored for one style but not another. This helps make the code clearer to a developer while still allow the shared behaviors through the interface.