I still prefer the "full on type ducking" with a readable comment in the file. As for the exception that occurs once a month, I get the same thing in statically compiled language! Sure I am guaranteed that the method exists due to my compiler bulking at the ommission of my method definition but since it will only get exercized once a month, I probably won't see the error till the runtime hits it anyway. (and yes, I have had yearly bugs pop up on new years day..) The answer is proper test cases that detect these things early. A compiler making sure your method exists is not a proper test of the monthly condition that may occur. As an aside, I should state that all my Ruby is on peripheral projects assisting my main enterprise development project. The complexity of my Ruby projects has not reached 10k LoC so I should make that caveat clear. :) ilan unknown wrote: > > i disagree strongly here. check out these two snippets that i am > working on > as we speak: > > def will_process_holding *a, &b > raise NotImplementedError > end > def process_holding *a, &b > raise NotImplementedError > end > def will_process_incoming(*a, &b) > raise NotImplementedError > end > def process_incoming(*a, &b) > raise NotImplementedError > end > > vs > > abstract_method "will_process_holding" > abstract_method "process_holding" > abstract_method "will_process_incoming" > abstract_method "process_incoming" > > -- Posted via http://www.ruby-forum.com/.