anchor.diff:        return intLit.evaluate(type, context);
       }
   
  -    throw new UnsupportedError('Number can not be interpreted as: ${type}');
  +    throw new UnsupportedError('Number $this can not be interpreted as: ${type}');
     }
   
     Expression derive(String toVar) => new Number(0);
  
positive.code:       }
      }
  
      throw new UnsupportedError('Interval can not be interpreted as: ${type}');
    }
  
    String toString() => 'I[$min, $max]';
  
negative.code:       return elements[0].evaluate(type, context);
      }
  
      throw new UnsupportedError('Vector $this with length $length can not be interpreted as: ${type}');
    }
  
    //TODO isConstant / getConstantValue
  