Huddler: a multi-language compiler for automatically generated format-specific data drivers
Brian R. Calder, Giuseppe Masetti · University of New Hampshire Scholars Repository (University of New Hampshire at Manchester) · 2015
The Hydrographic Universal Data Description Language (Huddl) permits description of data organization in existing and future hydrographic data formats. Huddler represents an implementation of one of the many advantages of having such format descriptions: a compiler that automatically creates drivers for data access and manipulation. The compiler is based on an XML parsing library that loads into memory the format description (frontend), and a code generator (backend) that creates code able to access the data in three different types of computer languages: procedural ANSI C, object-oriented C++, and multi-paradigm Python. The system is designed to admit other languages readily. The compiler is accessible via command line or a GUI application, named Hush (Huddl Schema Handler), which provides additional tools and information to the user. The compiler is here demonstrated with a variety of data formats from sonar manufacturers (e.g., Kongsberg EM Series) and acquisition software companies (e.g., HyPack) both legacy and in active development, both binary and ASCII. Finally, a community-oriented website to access, catalogue, and disseminate hydrographic data formats resources and Huddl-specific information has been developed and is now publicly available.