Public singleton methods
I would like to propose the implementation of:
Object#public_singleton_methods should return a list of public singleton methods.
Object#singleton_methods returns a list of public and protected singleton methods.
Currently the best way I know of retrieving a list of public singleton methods is:
foo = Foo.new foo.singleton_methods(false) & foo.public_methods(false)
I consider the definition of the public interface of any object very important.
For that reason I tend to keep it as simple as possible.
Also, the way I like to enforce the design is by using unit tests, testing the interface itself.
That way a change of the interface is very visible for the developer and code reviewer.
I also tend to use
protected a lot to give private methods a higher level of relevance.
This is a feature that I would be very interested in developing.
It would be my first contribution to ruby core.
If you understand that it is worth the effort I would be more than happy to do it.