# AnyLang Programming Language Comparison/Appendix:PLEAC Crossref:Packages libraries modules
## packagesetc
### Introduction

| 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 | | |

### Defining a Module's Interface

| 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 | | |

### Trapping Errors in require or use

| 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 | | |

### Delaying use Until Run Time

| 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 Variables Private to a Module

| 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 | | |

### Determining the Caller's Package

| 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 | | |

### Automating Module Clean-Up

| 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 | | |

### Keeping Your Own Module Directory

| 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 | | |

### Preparing a Module for Distribution

| 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 | | |

### Speeding Module Loading with SelfLoader

| 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 | | |

### Speeding Up Module Loading with Autoloader

| 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 | | |

### Overriding Built-In Functions

| 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 | | |

### Reporting Errors and Warnings Like Built-Ins

| 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 | | |

### Referring to Packages Indirectly

| 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 | | |

### Using h2ph to Translate C #include Files

| 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 | | |

### Using h2xs to Make a Module with C Code

| 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 | | |

### Documenting Your Module with Pod

| 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 | | |

### Building and Installing a CPAN Module

| 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 | | |

### Example: Module Template

| 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: Finding Versions and Descriptions of Installed Modules

| 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 | | |