LLD - Behavioral Design Patterns — Part 2
Find the bug in this Interpreter pattern implementation:
class OrExpression:
def __init__(self, expr1, expr2):
self.expr1 = expr1
self.expr2 = expr2
def interpret(self, context):
return self.expr1.interpret(context) or self.expr2.interpret
expr = OrExpression(TerminalExpression('A'), TerminalExpression('B'))
print(expr.interpret('A'))