From: Dave Burt Date: 2005-10-05T15:51:49+09:00 Subject: Re: [SOLUTION] Lisp Game (#49) Thanks for the quiz, James - a great one! I set up a LISPy environment and copied the LISP code as closely as possible, using Ruby procs, arrays and strings. Closer than James, even - I use setf and let, although I didn't make "defmacro" :) I did, however, manage to make the Ruby code "splash bucket wizard" equivalent to "splash('bucket', 'wizard')". Find it here: http://www.dave.burt.id.au/ruby/lisperati.rb Cheers, Dave D:\Docs\ruby>irb irb(main):001:0> require 'lisperati' (YOU ARE IN THE LIVING_ROOM OF A WIZARDS HOUSE. THERE IS A WIZARD SNORING LOUDLY ON THE COUCH. THERE IS A DOOR GOING WEST FROM HERE. THERE IS A STAIRWAY GOING UPSTAIRS FROM HERE. YOU SEE A WHISKEY_BOTTLE ON THE FLOOR. YOU SEE A BUCKET ON THE FLOOR.) => true irb(main):002:0> pickup bucket => (YOU ARE NOW CARRYING THE BUCKET) irb(main):003:0> walk west => (YOU ARE IN A BEAUTIFUL GARDEN. THERE IS A WELL IN FRONT OF YOU. THERE IS A DOOR GOING EAST FROM HERE. YOU SEE A FROG ON THE FLOOR. YOU SEE A CHAIN ON THE FLOOR.) irb(main):004:0> inventory[] => (BUCKET)