+ def resolve_symbol(self, sym):
+ term_node = self.__node_table[sym]
+ if isinstance(term_node, LCTermNode):
+ if not term_node.is_ready():
+ term_node.evaluate()
+ return term_node.get_value()
+ raise Exception(f"fail to resolve symbol: {sym}, not resolvable")
+