Generate Programs in Increasing size
CJam, 10 bytes

{"_~"+_}_~


Test it here.

Explanation

{"_~" e# Generalised quine framework, leaves the block and the string "_~"
      e# on the stack. 
+     e# Prepend the block to the string.
_     e# Duplicate the resulting array.
}_~