I've always thought that appending a list to another one meant copying the objects from the first list and then pointing to the appended list as described for example here. However, in this blog post and in its comment, it says that it is only the pointers that are copied and not the underlying objects. So what is correct?