Stems are a general data structure that are powerful but abstract. In earlier releases of Rexx, you could use stems to create data structures of all types, such as arrays, stacks, and queues. These data structures were semantically neutral. Because stems were the basis for all of them, the code itself gave no hint of which structure was implemented and for what purpose.
The best data structure job is not always the most powerful and abstract but the most specific and restrictive. Object Rexx provides a variety of data structures in the collection classes. This helps reduce errors because you can select the data structure that best meets your requirements. It also helps eliminate the misuse of data structures and adds a semantic context that makes programs easier to maintain.