Question

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.

Was it helpful?

Solution

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.

OTHER TIPS

Most FORTH systems have a .S command that does exactly what you want to write.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top