Currently, there are two main math nodes: "[Float] Math" and "Vector Math". The current workflow for using these is that first the correct math node has to be inserted, and then the correct operation has to be selected. This approach has two problems:
- It forces the user to do two steps for an operation that should only take a single step (e.g. "insert multiply node").
- "Math" is a very generic term. When more operations are added, it becomes more and more unclear which should be added to the math node and which belong to another node. And the user has to remember that.
A more scalable approach is to remove the "Math" node entirely and create individual nodes for different operations. For example, there will be an "Add", a "Subtract" and a "Dot Product" node. These new nodes can adapt to the data types that are connected to them.
This is not a change we have to do in the short term, but in the long run it is the better solution in my opinion. Especially as we get more types and operations.