In other words, what the OP is trying to do is perfectly fine.
The issue is that a function is being called on an object that has not yet been instantiated. Once the ->new function has been called, the object is created, which then allows the send function to be called.