Stack is a commonly used data structure in computer science. Stack can be used for correcting syntax terms. Here are basics on Stack. The use of stack in programming languages was thought by Friedrich Ludwig Bauer and Klaus Samelson in 1957.
Working Principle of Stack
Stack in practice includes limited set of objects. Elements can only be placed on top of the stack. Elements are stacked one above the other and in reverse order taken out from the stack . This is also known as Last-In-First-Out principle (LIFO). A common practical usage along with example will make the topic more clear. You probably have heard of Push and Pull. These Push and Pull actually are methods of heaping the data in an automated system. Push sets the object on top of the stack. Pop removes the top item from the stack. The action of pop is known as Pull.
A stack is like a stack of moving boxes. A new box can be placed above onto the stack (corresponding to push) or can be be taken down from above (corresponding to pop). Access is usually only the top element of the stack. Adding or removing a box on the bottom of the stack is not possible. There are, however in some implementations commands to swap the top elements (SWAP, ROT).
---

Applications of Stack
Basically there is many technical parts like usage and implementation on hardware, we are however not going in to detail as this article is intended for a common user not an expert.
Stack can be used to correct syntax terms or nesting, it is often used on rapidly changing documents on the Internet like XML files. Compilers for modern programming languages ??usually use push and pop operations before calling a subroutine to pass parameter. Programming languages ??in a virtual machine set up (for example Java), the compiled intermediate code is optimized for the use in order to accelerate the interpretation of this intermediate code. To translate the source code of a formal language to use by compiler and interpreter, a parser uses a stack.
