Candidates for the metrics/input to the metrics:
- Number of warnings
- Complex helper sizes
- Number of lines in each definition
- use of [n>1]
- Conditional (IF/MAP) rows instead of DATASETs
- Patterns that have been added to the optimizer.
- Strong similarities between two graphs.
- Non global outputs
- EXISTS - especially on a scalar. (Should this be illegal?)
beware - you get what you measure, so make sure that they really do reflect poor practice, or constructs that should be avoided because of implementation restrictions.