"Georg Bauhaus" wrote in message news:mpb8r3$a2i$1@dont-email.me... > On 29.07.15 20:27, Paul Rubin wrote: >> Björn Lundin writes: >>> >See Ada.Containers.* >> Will look there, but those kinds of containers are more useful with GC. > > See Randy Brukardt's repeated admonishment to use Ada.Containers > precisely because they handle storage. I'll repeat it so he doesn't have to look it up: the whole point of using such containers is that they handle all of the storage management for you. When using the containers, you don't have to (and shouldn't, IMHO) use any access types at all. The container element can be any non-limited type, which of course includes other containers. Ada 2012 added tree and queue containers, as well as adding syntactic sugar for iterators and indexing, such that containers usage can look pretty much like using a built-in array type. (It's more complex under the covers, of course, but the whole idea is to hide complexity.) And the bounded forms of the containers gives memory certainty for applications that need that. It would be completely unnecessary to use any GC with the Ada containers. You (arguably) need it when you use raw access types, and can't use subpools or a custom storage pool to manage the storage sensibly. That comes up rather rarely in Ada 2012 (unless, of course, you are writing a container implementation). Randy.