any alternative?

Posted by finnish on Sun 28 Sep 2003 11:51 AM — 6 posts, 22,399 views.

Russia #0
is there any alternative to get working perlscript?
i mean without activeperl. maybe?
USA #1
Not really.. Mushclient relies on something called COM to talk to the script engines and the engines back to Mushclient. ActivePerl's 'engine' is an ActiveX control, which uses COM to communicate. 'In theory' you could use a different version of Perl as long as its engine supported COM, but Mushclient wouldn't have a clue how to use it, since the ID used to talk to ActivePerl is hard coded into it.

The only other alternative would would to built a Perl engine into the client itself, but that would add a lot of size to Mushclient, especially since it would mean adding support for talking to other COM objects into the client, instead of allowing the existing engines to handle that. Adding such extended COM support correctly is in my experience 100 times more complicated in itself than it would be to build the actual script engine.

As for why Nick doesn't just add some sort of option to let you give it the ID of any engine you want and have it use that one, it isn't that simple. It took several tries to figure out how to get Mushclient to talk to Python correctly and support for a TCL engine has been suggested, but so far not successfully implimented. Using a new engine is sadly no where near as simple as just plugging a cord into a wall socket. Each one has some quirk that makes talking to it different.

With ActivePerl it was a matter of shear luck, since it is part of a collection designed by Micro$loth and accessible through the same engine interface, itactually has a consistent way of being used. The fact that it may not be the best implimentation is unfortunately secondary.
Russia #2
and no other language support is planned?
USA #3
You can always suggest one. However, Nick would then have to impliment the support code for it and you would have to wait for the next version.
Russia #4
just like i did ;)
Australia Forum Administrator #5
There is supposed to be a function "enumerate script engines" which would let me automatically display the scripting engines installed, however I couldn't get it to work, and I suspect it doesn't work. :P