I built a custom XML-RPC server in Perl that "supposedly" serves any given Perl code module/class whose structure conforms to some compatible specifications, and the server serves it dynamically at startup via reflection/introspection. It's built out of code snippets found on stackoverflow along with a Wikipedia page, with my glue code to mash everything together. It's also modeled (in terms of design) after my server implementations for other languages (.NET, Java). For this post, I'm asking for feedback from Perl community what improvements, if any, I could make to the server. Suggestions on how to implement bug fixes for the open issues of the server, and if there is a more optimal approach to reflection for executing a Perl class method or listing out the class methods information. As the material I based it on and Perl language itself has more than one way to do things.
In terms of optimal code reflection, I'm looking for optimizing or solution where it can satisfy a majority of Perl code or modules, w/ no or minimal changes or wrappers to the Perl code being reflected in most cases.
I posted to PerlMonks already and a user there suggested I also look into this site. So now just looking for additional feedback.
Primary code (via link) to review below, w/ other usefu info:
http://code.google.com/p/plrobotremoteserver/source/browse/trunk/robotremoteserver.pm
http://code.google.com/p/plrobotremoteserver/source/browse/#svn%2Ftrunk
http://code.google.com/p/plrobotremoteserver/wiki/UsageInfo
http://code.google.com/p/plrobotremoteserver/issues/list
and the server is built against the remote library interface spec for RobotFramework
http://code.google.com/p/robotframework/wiki/RemoteLibrary
with the reference implementation (to the spec) being in Python.
use strict;anduse warnings;and make the code work with these pragmas (with localno strict qw(xxx)where required). BTW: What minimum version of perl do you require? – Xaerxess Jan 21 at 11:51