From: Joel VanderWerf Date: 2010-10-21T08:18:22+09:00 Subject: Re: First Law of Classes On 10/20/2010 03:37 PM, Mike Stephens wrote: > If you saw a class without persistent data, would you be suspicious? Maybe, but there are good uses: 1. instance as unique token STATUS_OK = Object.new STATUS_FAIL = Object.new result = begin # try something rescue STATUS_FAIL else STATUS_OK end 2. flyweight pattern class PseudoRandom def initialize # set up seed, etc. end def next # get number from seed end end class Random def next # get number from /dev/urandom end end # This method accepts *either* of the above classes. # Even though Random has no state, it supports the same # interface as Pseudorandom. def get3 cl seq = cl.new [seq.next; seq.next; seq.next] end