Without the self-> operator, the ACT_PerlScript object is created as follows:
scriptObj = create("ACT_PerlScript" , "RunScript" );
This operation creates a remote connection with the remote domain and will try to find the Perl script on the remote host where this script is communicating with.
scriptObj = self->create("ACT_PerlScript" , "RunScript" );
This operation will cause Smarts to create the Perl script object locally and run the Perl script on the local host.