Provision of appropriately structured memory is shown, in some cases, to be advantageous to genetic programming (GP) in comparison with directly addressable indexed memory. Three ``classic'' problems are solved. The first two require the GP to distinguish between sentences that are in a context free language and those that are not given positive and negative training examples of the language. The two languages are, correctly nested brackets and a Dyck language (correctly nested brackets of different types). The third problem is to evaluate integer Reverse Polish (postfix) expressions. Comparisons are made between GP attempting to solve these problems when provided with indexed memory or with stack data structures.