The Universal Accelerator Parser
The Universal Accelerator Parser (UAP) is a library for reading and translating between lattice input formats. The UAP was primarily implemented to support the Accelerator Markup Language (AML) format and currently also supports the MAD lattice format. The UAP provides an extensible framework for reading and translating between different lattice formats. Included are routines for expression evaluation and beam line expansion. The use of a common library among accelerator codes will greatly improve the interoperability between different lattice file formats, and ease the development and maintenance to support these formats in programs. The UAP is written in C++ and compiles on most Unix, Linux, and Windows platforms a Java port is maintained for platform independence. Software developers can easily integrate the library into existing code by using the provided hooks.