Reputation: 79615
How can I get the number of elements currently held in the stack in Forth?
I ask this because I want to make a function that prints out all the elements of the stack, something like:
: pop_all 0 do . loop ;
1 5 10 4 5
5 pop_all
But now I need to manually specify the stack size when I call it.
Upvotes: 7
Views: 2052
Reputation: 11831
Most FORTH systems have a .S
command that does exactly what you want to write.
Upvotes: 1
Reputation: 13994
You can always find the number of items on the stack with the function
DEPTH
. The value returned is the number of items on the stack before
the number is returned.
Upvotes: 12