"James Edward Gray II" <james / grayproductions.net>: >> Hello mailing list. This has already been posted on Usenet, sorry for the >> duplication. (The gateway seems to be one-way at the moment.) > > Thanks for copying it over here so I would see it, Dave. I went back and > browsed the newsgroup and picked up Timothy Byrd's solution as well. That > misbehaving gateway is hard on me. :D Me too... having to join a hundred-plus-messages-per-day mailing list that floods my mailbox just to submit my quiz solution... life's tough, isn't it? Anyway, I have an update quiz-solution-wise. I had a niggling feeling something was missing from my solution before I submitted. And everyone else's once I'd read them all. And here it is: # Enables uppercase roman numerals to be used interchangeably with integers. # They are auto-vivified RomanNumeral constants # Synopsis: # 4 + IV #=> VIII # VIII + 7 #=> XV # III ** III #=> XXVII # VIII.divmod(III) #=> [II, II] def Object.const_missing sym raise NameError.new("uninitialized constant: #{sym}") unless RomanNumerals::REGEXP === sym.to_s const_set(sym, RomanNumeral.get(sym)) end Of course, this requires a RomanNumeral class, which acts like an Integer but looks like a... well, roman numeral. Go and download http://www.dave.burt.id.au/ruby/roman_numerals.rb again! Cheers, Dave