retroforth/vm/nga-python/IntegerStack.py
crc f212b7fcea nga-python: start adding files from the rework towards a class based implementation
FossilOrigin-Name: b56fcd9e7f5f44c0f0572aa19dc423a94bbb849d593cc07621af063acb51e124
2020-11-18 20:20:04 +00:00

31 lines
596 B
Python

class IntegerStack():
def __init__(self):
self.stack = [] * 128
def depth(self):
return len(self.stack)
def tos(self):
return self.stack[-1]
def push(self, v):
self.stack.append(v)
def append(self, v):
self.stack.append(v)
def pop(self):
return self.stack.pop()
def dup(self):
self.stack.append(self.stack[-1])
def drop(self):
self.stack.pop()
def swap(self):
a = self.stack[-2]
self.stack[-2] = self.stack[-1]
self.stack[-1] = a