This should return whether `a` is identical to `b`. Of course, this isn't always clear. True should mean that it
        is definitely identical. False eans that, conservatively, it might not be.

        :param a: an AST
        :param b: another AST

def identical(self, a, b):
        """
        This should return whether `a` is identical to `b`. Of course, this isn't always clear. True should mean that it
        is definitely identical. False eans that, conservatively, it might not be.

        :param a: an AST
        :param b: another AST
        """
        return self._identical(self.convert(a), self.convert(b))