Aargh ist ein Codegenerator in C++. Auf Basis von Spezifikationen in einer XML-Datei generiert er C- oder C++-Code, um eine Kommandozeile zu parsen, wobei er getopt() verwendet, das unter Unix, Linux und ähnlichen Umgebungen verfügbar ist. Er unterstützt Kommandozeilenoptionen mit ganzzahligen Argumenten, String-Argumenten und ohne Argumente. Er kann optional Bereichsgrenzen prüfen, um die Optionsargumente zu prüfen, oder eine benutzerdefinierte Validierungsfunktion aufrufen. Der erzeugte Code ist kommentiert und für bessere Lesbarkeit sorgfältig eingerückt.