If you want to use lazyinitialization in Ruby the ||= trick is an easy and readable way to do it.
Rather than bury the actual “get fruit” logic inside of another function though, I’ve found it handy to use a Proc if that logic doesn’t need to be re-used elsewhere.