The 'extractmessages' utility reads a Celera Assembler message file and writes the messages of one type. It could be more useful.
1. The help text says to provide the input file as a parameter and the output as an option. Actually, the program actually reads STDIN and balks at parameters. It can write STDOUT but help text only hints at this. The help text should be fixed up.
2. It refuses to extract nested messages such as VAR. This limits utility.
3. In fact, it refuses to extract any message it does not know about. This limitation should be removed. Since messages have a well defined structure, this utility could be brain dead and more useful.
4. The existence of this utility in itself indicates that the message format is not easy to use. Therefore, preserving the message format isn't so useful. This utility should optionally write other formats such as tab-delimted, csv, and XML.
5. Does the chaining feature actually work? The help text is confusing.
6. Document the utility on the wiki.