class A:
def run(self,b):
b.add()
class B:
def run(self,b):
b.sub()
class C:
def run(self,b):
b.output()
class NOTHING:
def run(self,b):
pass
class BUFFA:
def __init__(self):
self.buffa = 0
def add(self):
self.buffa += 1
def sub(self):
self.buffa -= 1
def output(self):
print self.buffa,
text = 'acaaccaaaac'
buffa = BUFFA()
program = []
instructions = {'a':A,'b':B,'c':C}
for letter in text:
program.append(instructions.get(letter,NOTHING)())
for c in program:
c.run(buffa)
Name:
Anonymous
2009-07-03 1:44
it must suck to be a snake
Name:
Anonymous
2012-11-07 21:17
I'm implementing ABCD, or "ABC, The Sequel: You Can Do That In D"