I'm currently engaged in moving a bunch of things from VM/CMS to Linux. Most of it is written in Rexx with a lot of Pipelines. The Rexx part has proved to be pretty easy -- ooRexx is mostly compatible and mostly an improvement. The Pipeline part is a lot tougher.
Writing something that does the basics of what CMS Pipelines does is pretty simple (been there, done that, got the t-shirt about 5 years ago). The problem is getting it to perform and getting it to do all the clever stuff that CMS Pipelines does. That's what messes you up. (I keep thinking I should revisit this stuff and recode it in C# as a learning exercise...)
Actually, a CMS shell that ran under Linux would be pretty neat.
Now there is a project for someone who wants to learn C#... just let me finish re-installing my iBook, getting Bacula to work, fixing the server that I messed up the other week, trying to get MS Windows to boot under Xen... shame the boss wouldn't sponsor me to do this... ah well... -- Rod (who heartily seconds what Mike Walter said)