I've implemented solutions that drive MSO screens (MSO400, MSO310 etc) from Perl via tp_tserv. It's robust and execution is very quick.
Just recently, I also upgraded these solutions for Ellipse which (in this customers case) uses CICS. Minimal programming changes to upgrade the actual script - just replaced tp_tserv with a CICS EPI program.
Regards,
Mark