@Override
  public VarType evaluate() {
    Drawable d = new Drawable();
    double start = startExpr.evaluate().asDouble().intValue();
    double stop = stopExpr.evaluate().asDouble().intValue();
    double increment = 1.0;
    if (incrementExpr != null) {
      increment = startExpr.evaluate().asDouble();
    }
    for (double i = start; i <= stop; i += increment) {
      scope.assign(identifier, new VarType(i));
      VarType returnValue = block.evaluate();

      if (returnValue.isDrawable() && lookup) {
        Drawable d2 = returnValue.asDrawable();
        d.addToGroup(d2);
        d2.removeFromCanvas();
        // System.out.println("added drawable in for loop at+"+i);

      }
      /*
      else if(returnValue != VarType.VOID ) {
          return returnValue;

      }*/
    }

    return VarType.VOID;
  }