The languages of mathematical physics and modelling are endowed with a rich "grammar of dimensions" that common abstractions of programming languages fail to represent. We propose a dependently typed domain-specific language (embedded in Idris) that captures this grammar. We apply it to explain basic notions of dimensional analysis and Buckingham's Pi theorem. We argue that the language makes mathematical physics more accessible to computer scientists and functional programming more palatable to modelers and physicists.
翻译:暂无翻译