Hello,
2012/5/19 rosenfeld (Rodrigo Rosenfeld Rosas) rr.rosas@gmail.com:
Would you mind to explain why the current behavior is useful instead of doing what I'm proposing?
Just example:
module GenericConnection
def connect(domain)
TCPSocket.open(domain)
end
end
class Google
extend GenericConnection
def self.connect
super("www.google.com")
end
end
class Twitter
extend GenericConnection
def self.connect
super("www.twitter.com")
end
end
I really don't understand why it was implemented this way...
You may think so because you declared modules and methods in weird
order.
You should declare a smaller, more generic, or more independent
module first, and then a bigger one by using already-defined ones.
Do you still expect 'a2' for the following code?
module B
def a
'a2'
end
end
module A
extend B
def self.a
'a1'
end
end
p A.a #=> 'a1'
--
Yusuke Endoh mame@tsg.ne.jp