list_append() becomes a big problem because we need to append very often and the runtime blows up for large input programs. The current append is O(n). For:
int i = 0;
i++; // #1
i++; // #2
i++; // #3
...
i++; // #40000
dcc spends 99.5% of time in list_append(), exhibiting O(n^2) runtime for number of i++'s.