Programmatically generate BMI specifications for all supported languages from a single description file