How do I create a named pipe instead of creating a socket to listen on. I've been searching google, looking through the manual, but I can't find anything about named pipes.
As far as I know, there is no support for unix sockets in tcl.
Also, keep in mind that "named pipes" is something completely different from "unix sockets", where the first one uses simple file I/O for communications while the second makes use of the kernels support for socket communication, with the domain AF_UNIX rather than AF_INET (which is used for IP sockets).
I suppose IP sockets won't cut it for you?
If you really want unix sockets, you'd have to create some wrapping-code to provide the function calls from the socket-library to the tcl-environment (possibly by creating an eggdrop module).
One option, I guess, would be to write your project entirely as a module rather than a tcl-script.
Pipes and sockets (IP/IPX/Unix/etc all alike) are two completely different concepts, hence there is no "named pipe with socket functions" (unix or otherwize).
Pipes are used just like any other file-stream, whereas sockets have a far more complex structure.
As for your intent to send data from syslogd; a quick check in the manual page would reveal that syslogd allows files, ip/udp, and named pipes to be destination for logmessages. It does not, however, support unix sockets as destination.