As I mentioned in my recent to-do list, it would be a good thing to revisit our pipe implementation. I speculated that something using DCL's pipe driver might be an option for the daring implementor with a copy of the VMS sources available. Since then I've noticed that Java for OpenVMS has an option enabled by setting the logical name JAVA$FORK_PIPE_STYLE to 2 that causes pipes to be implemented via sockets rather than mailboxes. There's a bit more here:
http://h18012.www1.hp.com/java/documentation/1.4.2/ovms/docs/user_guide.html#perftuning
However, there is no indication of how or in what layer this is done. Is this something in C that is a drop-in replacement for the CRTL's popen and friends? Or is it in pure Java? Either way, does anyone here know more about how it's done and/or have an opinion about whether this model could be applied elsewhere, say, in Perl ;-).