Great quiz. Thanks for writing it. Sorry to post this after exactly 48 hours, but I have to start a road trip in about 10 minutes, and wanted to get this out first. I managed to get the code down to 15 lines without semicolons or anything particularly in need of wrapping. However, 42 seemed like such a good number that I padded my solution out with poems by Ikkyu. I couldn't quite wrap my head around a solution that avoided the string form of class_eval, but hopefully someone managed it. # so many paths go up from the foothills # but one moon grazes the peak # stare at it until your eyes drop out # this desk this wall this unreal page # the edges of the sword are life and death # no one knows which is which # inside the koan clear mind # gashes the great darkness class Module def attribute(name, &block) return name.map {|k,v| attribute(k) {v}} if name.is_a?(Hash) define_method("__#{name}__", block || proc{nil}) class_eval <<-ZEN attr_writer :#{name} def #{name} defined?(@#{name}) ? @#{name} : @#{name} = __#{name}__ end def #{name}? true unless #{name}.nil? end ZEN end end # clouds endless clouds climbing beyond # ask nothing from words on a page # lone moon, no clouds # we stumble through the night # long life # the wild pines want it too # mirror facing a mirror # nowhere else # only one koan matters # you