sashoalm
sashoalm

Reputation: 79615

Get current stack size in FORTH

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

Answers (2)

vonbrand
vonbrand

Reputation: 11831

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

Upvotes: 1

Leo Chapiro
Leo Chapiro

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

Related Questions