I have two classes A, and B. Class B overrides the foo method of class A. Class B has a bar method where I want to call the foo method of the super class. What is the syntax for such a call?
class A    
 def foo
   "hello"
 end    
end
class B < A
 def foo
  super + " world"
 end
 def bar
   # how to call the `foo` method of the super class?
   # something similar to
   super.foo
 end
end
For class methods I can call the methods up the inheritance chain by explicitly prefixing the class name. I wonder if there is a similar idiom for instance methods.
class P
 def self.x
   "x"
 end
end
class Q < P
 def self.x
   super + " x"
 end
 def self.y
   P.x
 end
end
Edit
My use case is general. For a specific case I know I can use alias technique. This is a common feature in Java or C++, so I am curious to know if it is possible to do this without adding extra code.