Quote Originally Posted by Mirage View Post
I forgot to mention another useful feature of recent Delphi versions - full-blown RTTI.
It can be used for many things, including dynamic code update, when you can compile new version of, for example, character AI class and dynamically update it in application/editor to immediately test the new behaviour without even restarting a level.
You can, but that part is quite fragile when done through RTTI, not because of RTTI, but because of memory management and the RTL/VCL isn't safe, so it's very easy to end up with dangling pointers, memory leaks and memory overwrites. You need some severe sandboxing and safety to be able to edit & run things interactively, and RTTI doesn't provide that.