Abstract
This paper presents the broad outlines of LPG, a language designed for generic specification and programming. In this language one may specify different modules which can represent either particular algebras (ADTs), families of algebras (generic data types and enrichments) or Σ-structures (theories). This language is based on Horn clause logic with equality which permits logic and functional programming to be combined. As modules in LPG can be generic, an instantiation mechanism is needed; such a mechanism is described here as well as the interpreter and an E-unification algorithm, thus making LPG a powerful programming language.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.