Currently, figure() is the same as figure(1).
But, I think a better behavior of figure is:
figure() is the same as figure(n+1) where n is the maximum handle number of opened figures. So, figure() always creates a new figure.
This is exactly MATLAB is doing.