Intentional programming: a host of language features

Thumbnail Image

View/Download File

Persistent link to this item

View Statistics

Journal Title

Journal ISSN

Volume Title


Intentional programming: a host of language features

Published Date






Programming languages and programming tasks are rarely a perfect fit: often a program could be much clarified by using a number of tailored language features, but the cost of introducing those features in the language is perceived as too high. If a programming language could be implemented in a highly modular fashion, that cost might be lower. To achieve such modularisation is the goal of Intentional Programming; language features are called intentions to emphasise the fact that language features can be tailored to the programmer's wishes. One starts with a host language, that is subsequently extended by adding new domain-specific features. Crucially, these features should be composable wherever possible; independent language features should co-exist peacefully without each needing to be explicitly aware of presence or absence of others. Indeed, given a sufficiently broad library of intentions, it should be possible to construct a new language from the ground up. When adding new intentions to a language it is essential that they be implemented in an efficient manner. It is critical that programs developed via Intentional Programming are not any less efficient than those developed by traditional means. Our aims as intention developers are to build intentions which are both expressive and efficient.



Associated research group: Minnesota Extensible Language Tools

Related to



Series/Report Number

Funding information

Isbn identifier

Doi identifier

Previously Published Citation

Techincal Report PRG-RR-01-21, Computing Laboratory, University of Oxford

Suggested citation

Van Wyk, Eric; de Moor, Oege; Sittampalam, Ganesh; Sanabria Piretti, Ivan; Backhouse, Kevin; Kwiatkowsky, Paul. (2001). Intentional programming: a host of language features. Retrieved from the University Digital Conservancy,

Content distributed via the University Digital Conservancy may be subject to additional license and use restrictions applied by the depositor. By using these files, users agree to the Terms of Use. Materials in the UDC may contain content that is disturbing and/or harmful. For more information, please see our statement on harmful content in digital repositories.