I'm sorry my point was irrelevant. Kenji
2011/3/4 Steven Schveighoffer <schvei...@yahoo.com>: > On Thu, 03 Mar 2011 11:54:58 -0500, kenji hara <k.hara...@gmail.com> wrote: > >> Even without performance issue, Appender is necessary because it >> configures output range. >> >> Currently std.array.put does not allow empty array as its argument. >> int[] arr = []; >> arr.put(1); // invalid. this does not means appending. >> >> Therefore building an array its length is not known beforehand >> requires Appender. > > Performance really is the only issue, the complexity of Appender is not > necessary for your issue. One could make a very simple appender struct if > creating a proper output range was the only problem: > > struct appender(T) > { > T[] data; > void put(T t) { data ~= t; } > } > > -Steve >