anchor.diff:      }
   
       if (_isNumber(exponentOp, 0)) {
  -      return new Number(1); // x^0 = 1
  +      return new Number(1.0); // x^0 = 1
       }
   
       if (_isNumber(exponentOp, 1)) {
  
positive.code: 
        // Interpret vector elements as REAL.
        if (length == 2) {
          return new Vector2(elements[0].evaluate(elementType, context),
                             elements[1].evaluate(elementType, context));
        }
  
        if (length == 3) {
          return new Vector3(elements[0].evaluate(elementType, context),
                             elements[1].evaluate(elementType, context),
                             elements[2].evaluate(elementType, context));
        }
  
        if (length == 4) {
          return new Vector4(elements[0].evaluate(elementType, context),
                             elements[1].evaluate(elementType, context),
                             elements[2].evaluate(elementType, context),
                             elements[3].evaluate(elementType, context));
        }
  
        if (length > 4) {
  
negative.code:    */
    Variable(String this.name);
  
    Expression derive(String toVar) => name == toVar ? new Number(1.0) : new Number(0.0);
  
    String toString() => '$name';
  
  