By that definition, Smalltalk is not a dynamic language: you cannot change the definition of assignment ( := ), message return ( ^ ) or the messenger itself. You also cannot change the the way the GC works.
No it is not. I can do that in fully dynamic languages like TCL and Python, for example.