`(prog > /dev/null 2>&1 &)&` --> `foo prog`

I wrote a script to run processes in background. But it doesn't obliterate output:

BackgroundProcess --help
'BackgroundProcess' can be used to launch/control a process running in background.
Usage: 'BackgroundProcess -c Command [Param [Param...]]'.
    Launches 'Command [Param [Param...]]' in background.
    Outputs background process Id. Exitcode 0 if successful.
Usage: 'BackgroundProcess ProcessPid'.
    Outputs background process' info (See below).
    Exitcode 0 if process is valid and no longer running (Info valid).
    Exitcode 1 if process valid and still running (Info not valid).
    Exitcode non 0 if not a valid process or any other problems
     (Info not valid).
Usage: 'BackgroundProcess -f ProcessPid'.
    Checks if process with 'ProcessPid' Pid has finished running.
    Exitcode 0 if process is valid and no longer running
    Exitcode 1 if process valid and still running.
    Exitcode non 0 if not a valid process or any other problems.
    Does not output any info.
Usage: 'BackgroundProcess -k ProcessPid'.
    Kills process with 'ProcessPid' Pid (Previously
     launched by 'BackgroundProcess').
    Outputs background process' info (See below).
    Exitcode 0 if valid process and killed successfully
     (Or had exited already) and info read successfully.
Background process' info:
    Text that when sourced (with 'eval') gives values to following
    variables:
     'CommandLine': Command and parameters of process when launched.
     'ElapsedTime_mS': Time (in MilliSeconds) the process was running.
     'ExitCode': Exit code of process.
     'StandardOut': Output generated by process while running.
     'StandardError': Error output generated by process while running.
    Note: To avoid mismatch in the number of ",',`,´ (which would cause
      'eval' to fail) each of them can be replaced by \" in 'StandardOut'
      & 'StandardError' (Some commands output: `Error message') by using
      function 'CleanText' (See $COMMON_BIN_DIR/BashCodeRepository).
Note: Normal usage sequence:
    Launch a process in background and get its Pid.
    Do other tasks.
    Check if backgroung process has finished running
     using 'BackgroundProcess' and Pid.
    Read info when backgroung process has finished.
    Source background process' info and use Variables' contents.
    If background process has not finished in the allotted time
     kill it with 'BackgroundProcess' (And get info of killed process).
Please read $COMMON_BIN_DIR/BashCodeRepository for examples of usage.
/r/linuxquestions Thread