as in Forth, why not just stack.append(f.read()). as in good-old-time, data[1] = [f.readline()], data[1][0].... not data[1] = f.readline(), and using data[1] as the content directly?