When I introduced Moostrap to you, my purpose was not to say that Self is not a reflective language. In fact, it provides same kinds of reflective stuffs as Smalltalk, which is structural reflection.
But in Self there is no protocol for controlling message passing properly, i.e. as a metalevel operation (considering the panic/notPanic toggling). In Moostrap, we can dynamically redefine the algorithms for message passing for handling classes, before/after ... it is related to Clos-MOP and ABCL/R.