# AnyLang Programming Language Comparison/Appendix:PLEAC Crossref:Process management
## processmanagementetc
### Gathering Output from a Program

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Running Another Program

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Replacing the Current Program with a Different One

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Reading or Writing to Another Program

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Filtering Your Own Output

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Preprocessing Input

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Reading STDERR from a Program

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Controlling Input and Output of Another Program

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Controlling the Input, Output, and Error of Another Program

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Communicating Between Related Processes

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Making a Process Look Like a File with Named Pipes

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Sharing Variables in Different Processes

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Listing Available Signals

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Sending a Signal

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Installing a Signal Handler

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Temporarily Overriding a Signal Handler

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Writing a Signal Handler

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Catching Ctrl-C

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Avoiding Zombie Processes

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Blocking Signals

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Timing Out an Operation

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |

### Program: sigrand

| ada | c++ | commonlisp | cposix | erlang | factor | forth |
| groovy | guile | haskell | haskell-on-steroids | java | masd | merd |
| nasm | ocaml | perl | php | pike | pliant | python |
| R | rexx | ruby | smalltalk | tcl | | |