[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.10 The Virtual Stack

25F1E PushVStack ( obn..ob1 → obn..ob1 )
Virtual Stack:
( → [obn..ob1] )
Pushes the RPN stack onto the Virtual Stack. The RPN stack is unchanged.
25F1F PushVStack&Clear ( obn..ob1 → )
Virtual Stack:
( → [obn..ob1] )
Does PushVStack and then clears the RPN stack.
25F1A PopMetaVStackDROP ( → obn..ob1 )
Virtual Stack:
( [obn..ob1] → )
Pops the topmost virtual stack into the RPN stack. The previous contents of the RPN stack are preserved. (The Meta in the name means that a count is returned, but the DROP removes it afterwards.)
25F1B PopVStack ( obm..ob1 → obn'..ob1' )
Virtual Stack:
( [obn'..ob1'] → )
Pops the topmost virtual stack into the RPN stack. The previous contents of the RPN stack are lost.
25F17 GetMetaVStackDROP ( → obn..ob1 )
Virtual Stack:
( [obn..ob1] → [obn..ob1] )
Inserts the objects from the topmost virtual stack into the RPN stack. The Virtual Stack is unchanged. (The Meta in the name means that a count is returned, but it is removed by DROP.)
25F18 GetVStack ( obm..ob1 → obn'..ob1' )
Virtual Stack:
( [obn'..ob1'] → [obn'..ob1'] )
Copies the topmost virtual stack into the RPN stack. The Virtual Stack is not changed, but the current RPN stack is lost.
26265 PushMetaVStack ( obn..ob1 #n → obn..ob1 #n )
Virtual Stack:
( → [obn..ob1] )
Pushes #n objects as a new virtual stack. Any other objects in the RPN stack are not pushed. The RPN stack is unchanged.
25F1D PushMetaVStack&Drop ( obn..ob1 #n → )
Virtual Stack:
( → [obn..ob1] )
Does PushMetaVStack then drops the pushed objects. Any other objects present in the RPN stack are neither pushed nor dropped.
25F19 PopMetaVStack ( → obn..ob1 #n )
Virtual Stack:
( [obn..ob1] → )
Insers the contents of the most recent virtual stack into the RPN stack, followed by the count. The previous contents of the RPN stack are not lost.
2624C GetMetaVStack ( → obn..ob1 #n )
Virtual Stack:
( [obn..ob1] → [obn..ob1] )
Inserts the objects from the topmost virtual stack into the RPN stack, along with the count. The Virtual Stack is unchanged.
265D5 (SetMetaVStack) ( obn'..ob1' #n → )
Virtual Stack:
( [obn..ob1] → [obn'..ob1'] )
Modify the elements of the Virtual Stack according to a meta on the stack. The meta on the RPN stack and the fist level of the Virtual Stack must have the same number of elements!
25F20 PushVStack&Keep ( obn..ob1 obm'..ob1' #m → obm'..ob1' #m )
Virtual Stack:
( → [obn..ob1] )
Pushes the contents of the RPN stack which do not belong to the meta (ie, are "above" it) into a new virtual stack, removing these elements, but keeping the meta.
25F21 PushVStack&KeepDROP ( obn..ob1 obm'..ob1' #m → obm'..ob1' )
Virtual Stack:
( → [obn..ob1] )
Does PushVStack&Keep and then DROP.
25F1C PopVStackAbove ( obm'..ob1' → obn..ob1 obm'..ob1' )
Virtual Stack:
( [obn..ob1] → )
Pops the contents of the topmost virtual stack (like <REF>PopMetaVStackDROP would have done) into the RPN stack, but above the current contents of the RPN stack. This undoes PushVStack&Keep (or PushVStack&KeepDROP).
26215 DropVStack ( → )
Virtual Stack:
( [obn..ob1] → )
Drops the topmost virtual stack from the Virtual Stack.
26229 GetElemTopVStack ( #i → obi )
Virtual Stack:
( [obn..ob1] → [obn..ob1] )
Returns the ith object from the topmost virtual stack, counting from the top. "Counting from the top" means that object # 0 is the one at the highest-numbered level (n), # 1 is the one at level n-1, and so on. Note: no checking wheter #i is valid.
2626F PutElemTopVStack ( new_ob #i → )
Virtual Stack:
( [obn..ob(n-i)..ob1] → [obn..new_ob..ob1] )
Replaces the ith object from the topmost virtual stack with new_ob, counting from the top. Note: no checking wheter #i is valid.
26224 GetElemBotVStack ( #i → obi )
Virtual Stack:
( [obn..ob1] → [obn..ob1] )
Returns the ith object from the topmost virtual stack, counting from the bottom. "Counting from the bottom" means that # 0 is the object in the lowest numbered level (generally thought of as 1), # 1 is at level 2, etc. Note: no checking wheter #i is valid.
2626A PutElemBotVStack ( new_ob #i → )
Virtual Stack:
( [obn..obi..ob1] → [obn..new_ob..ob1] )
Replaces the ith object from the topmost virtual stack with new_ob, counting from the bottom. Note: no checking wheter #i is valid.
26233 GetVStackProtectWord ( → # )
Hacking stuff: Gets the protection word of the last VStack level.
2622E SetVStackProtectWord ( # → )
Hacking stuff: Sets the protection word of the last VStack level.
26251 InitVirtualStack


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

This document was generated by Carsten Dominik on May, 30 2005 using texi2html