Networking and IPC
If there’s a way that programs on your machine can talk with others, Perl can probably do it. This section shows some common ways.
System V IPC
The standard functions for System V IPC (interprocess communication) are all supported by Perl, so you can use message queues, semaphores, and shared memory. Of course, an array in Perl isn’t stored in a chunk of memory in the same way[*] that an array is stored in C, so shared memory can’t share Perl data as-is. But there are modules that will translate data, so that you can pretend that your Perl data is in shared memory. See the perlfunc manpage and the perlipc module.
Sockets
Perl has full support for TCP/IP sockets, which means that you could write a web server
in Perl, or a web browser, Usenet news server or client, finger daemon
or client, FTP daemon or client, SMTP or POP or SOAP server or client,
or either end of pretty much any other kind of protocol in use on the
Internet. Of course, there’s no need to get into the low-level details
yourself; there are modules available for all of the common protocols.
For example, you can make a web server or client with the LWP module and one
or two lines of additional code.[†] The LWP module
(actually, a tightly integrated set of modules that together implement
nearly everything that happens on the Web) is also a great example of
high-quality Perl code, if you’d like to copy from the best. For other
protocols, search for a module with the protocol’s name.
[*] In fact, it would ...