Wow, great read BrowserUk.
Conversely, if a module/library lends itself better to a procedural interface, adding an pseud-OO interface also, doesn't add flexibility, it adds unnecessary complexity.
This is the situation that I am in. And running into that complexity while trying to kludge in the pseud-OO interface led me to creating this post! =)
You make some great points which hit surprisingly close to home for me. Particularly - avoiding those expensive recalculations over larger data sets when you want to perform multiple operations. Thank you, I learned a lot and now have some food for thought for implementing some tools I have in the works.
After having been warned, warded, and wizened by all the previous posts, tye, your solution sounds like the cleanest and easiest not to mention most maintainable way to implement what I want to do. Which is funny, because the first reply in my OP's related link (Module provides both of functional interface and object-oriented one) argues against doing (sorta-kinda) what you describe!
Anyway monks, signing off for the weekend and thanks again for all of you donating a little enlightenment.
Strange things are afoot at the Circle-K.