Not sure about dropping the not-null on the package name, though ... code like the object instantiation code depends on being able to find package_name.new() etc, and we're encouraging people to use these Tcl APIs rather than build objects by hand in order to simplify the writing of code supporting both RDBMSs.