Though I tried your suggestions, something worked out much better. I
just needed to pass a reference to the calling class with the argument
self. That way I can call back functions just by executing them. For
example:
class Example
attr_reader :show_info
def initialize
@instance = self
@example2 = Example2.new(@instance)
end
def show_info(text)
puts text
end
end
class Example2
def initialize(instance)
@instance = instance
@instance.show_info("Yes, this worked out :D")
end
end