daemon turns other processes into daemons. There are many tedious tasks that need to be performed to correctly set up a daemon process; daemon performs these tasks for other processes. This is useful for writing daemons in languages other than C, C++, or Perl (e.g. sh, Java). If you want to write daemons in languages that can link against C functions (e.g. C, C++), see libslack, which contains the core functionality of daemon.