Definition

intentional programming (IP)

Part of the Programming glossary:

Intentional programming (IP), also called intentional software, is the rendering of application intentions in a form that can be processed by a computer. In this context, intentions consist of data defining the functions and purposes programmers have in mind as they conceive and develop an application. The term is associated with Intentional Software Corporation, headquartered in Bellevue, Washington. The IP concept originated with engineer Charles Simonyi when he worked for Microsoft .

Next Steps

The IP process begins when a programmer defines a proposed application's intended functions and purposes in WYSIWYG (what you see is what you get) format. Then an automated system uses this information to generate the final product. Successive changes are done at the WYSIWYG level using a system called a domain workbench.

Most programming languages represent source code as text and give symbolic names to object s, variable s or task s. In a complex program it can be difficult to keep track of which name refers to which entity. In IP, all entities are assigned unique private identifiers as well as symbolic names. Whenever the program refers to an object, variable or task, the identifier automatically generates a link to the original entity. If the programmer renames an entity, all references to it update at that moment. This reduces the risk of errors that can be caused by human oversight or by the manual use of the global search-and-replace function in a text editor . It also streamlines the process of versioning .

This was last updated in March 2011
Posted by: Margaret Rouse

Related Terms

Definitions

  • glocalization

    - Glocalization is the concept that in a global market, a product or service is more likely to succeed when it is customized for the locality or culture in which it is sold.  (SearchCIO.com)

  • Apache Lucene

    - Apache Lucene is a freely available information retrieval software library that works with fields of text within document files. This evolving venture is also called the Apache Lucene Project. (WhatIs.com)

  • polynomial interpolation

    - Polynomial interpolation is a method of estimating values between known data points. When graphical data contains a gap, but data is available on either side of the gap or at a few specific points ... (WhatIs.com)

Glossaries

  • Programming

    - Terms related to software programming, including definitions about programming languages and words and phrases about software design, coding, testing and debugging.

  • Software development

    - Terms related to software development, including definitions about programming and words and phrases about Scrum, Agile and waterfall methodologies.

  • Internet applications

    - This WhatIs.com glossary contains terms related to Internet applications, including definitions about Software as a Service (SaaS) delivery models and words and phrases about web sites, e-commerce ...

Tech TalkComment

Share
Comments

    Results

    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.