Belangrijk verschil: PUSH is wanneer een item op de stapel wordt "gedrukt". POP is wanneer het laatst gepushte item "uit de stapel" wordt gepoft.
Een stapel is een beperkte gegevensstructuur, omdat er slechts een klein aantal bewerkingen op worden uitgevoerd. Een stapel wordt genoemd vanwege de mogelijkheid om afzonderlijke gegevensitems in een stapel te plaatsen, zoals een stapel boeken. Het eerste item wordt onderaan weergegeven en de bijbehorende items worden bovenaan het eerste item geplaatst. Als echter iets van het midden of de onderkant van de stapel moet worden benaderd, moet alles bovenop dat item eerst worden verwijderd voordat toegang tot het item wordt verkregen. Dit type arrangement wordt LIFO (Last In, First Out) genoemd.
De twee belangrijkste fundamentele bewerkingen met betrekking tot een stapel zijn de DRUK- en POP-functies. De POP-functie wordt ook wel PULL genoemd. In wezen voegt de PUSH-bewerking een nieuw item toe aan de bovenkant van de stapel, of initialiseert de stapel als deze leeg is. De POP-bewerking verwijdert een item echter van de bovenkant van de stapel. Een pop onthult eerder verborgen items, of resulteert in een lege stapel.
De aard van de PUSH- en POP-bewerkingen betekent ook dat stapelelementen een natuurlijke volgorde hebben. Elementen worden uit de stapel verwijderd in de omgekeerde volgorde van de volgorde waarin ze zijn toegevoegd. Dit betekent dat de onderste elementen langer op de stapel zijn geweest; daarom is het laagste element daar het langst geweest. De elementen aan de bovenkant zijn de nieuwere elementen.