Traditionally, last-in-first-out data structures are called "stacks" to distinguish them from queues. In this tradition, "queue" only refers to first-in-first-out data structures.
I used "stack" to name the LIFO logic sequence not an implementation idiom. Linked list, pointer into sequential memory array, or restaurant plates have a congruent dimension that "stack" abstracts over within the ordinary computing tradition.
To me, your observation of the non-composability of stacks seems related to the ability of push-down automata and turing machines to compute more complex inputs than the finite automata (and equivalents).