> So my question is: has someone else used "method_missing" this way and > are there any "show stoppers" to use "method missing" this way. I'm > planning to use this idea for a very important project and I want to > try to avoid to run into troubles because of a lack of experience. Generally method_missing magic may lead to infinite recursion loops, which are quite annoying. I would suggest to allow this kind of magic only in special blocks, which are evaled in the instance scope of a database object. class Database def initialize(root) @root = FSDB::Database.new(root) end def method_missing ... end def with(&block) instance_eval(&block) end end db = Database.new("/tmp/examples") db.with do scripts.myscripts.show_it("one","two") scripts.make_it("one","two") scripts.hello_method() end Note, that you lose the instance scope, so methods and instance variables are not available in the block. How about recognizing accessor calls for writing to the database?