I was chatting with a friend of mine last night and we were discussing facilities for updating 24/7 systems. That made me think, is there a way for a running program to request a re-load of a class's definition? I tried putting a require inside a loop that constructed objects of the class defined in that file. Even if I change the contents of the require-ed file while the program is running, it still keeps creating objects based on the original class definition. It appears that require is smart and only ever loads a file once per execution (I tried putting a print statement at the top of the file and it only came out once). Is there some way to force it to forget that it's done so and hence re-load a file?