Language-oriented programming: Difference between revisions

Content deleted Content added
Snipem (talk | contribs)
No edit summary
Snipem (talk | contribs)
Wikify
Line 5:
and in the article by Sergey Dmitriev entitled [http://www.onboard.jetbrains.com/articles/04/10/lop/ Language Oriented Programming: The Next Programming Paradigm].
 
==Concept==
Existing implementations of this concept include:
A book that describes thisThe concept, with examples, is ''Building Better Applications: a Theory of EfficientLanguage SoftwareOriented Development''.<ref>Dunlavey 1994.</ref> ItProgramming takes the approach to capture requirements in the user's terms, and then to try to create an implementation language as [[isomorphism|isomorphic]] as possible to the user's descriptions, so that the mapping between requirements and implementation is as direct as possible. A measure of the closeness of this isomorphism is the "redundancy" of the language, defined as the number of editing operations needed to implement a stand-alone change in requirements. It is not assumed ''a-priori'' what is the best language for implementing the new language. Rather, the developer can choose among options created by analysis of the information flows — what information is acquired, what its structure is, when it is acquired, from whom, and what is done with it.<ref>{{cite See [[Linguistic Method]].book
|author = Dunlavey
|year = 1994
|title = Building Better Applications: a Theory of Efficient Software Development
|url =
|chapter =
|chapterurl =
|pages =
|publisher = [[International Thomson Publishing]]
|isbn = 0-442-01740-5
|accessdate =
}}</citeref>
 
==Existing implementations of this concept include:==
* [[Forth]]
* [http://www.intentsoft.com/ Intentional Software]
Line 17 ⟶ 31:
* [http://xlr.sf.net The XL programming language]
* [http://www.ceteva.com/xmf.html XMF by Ceteva]
 
A book that describes this concept, with examples, is ''Building Better Applications: a Theory of Efficient Software Development''.<ref>Dunlavey 1994.</ref> It takes the approach to capture requirements in the user's terms, and then to try to create an implementation language as [[isomorphism|isomorphic]] as possible to the user's descriptions, so that the mapping between requirements and implementation is as direct as possible. A measure of the closeness of this isomorphism is the "redundancy" of the language, defined as the number of editing operations needed to implement a stand-alone change in requirements. It is not assumed ''a-priori'' what is the best language for implementing the new language. Rather, the developer can choose among options created by analysis of the information flows — what information is acquired, what its structure is, when it is acquired, from whom, and what is done with it. See [[Linguistic Method]].
 
==See also==
Line 37 ⟶ 49:
==References==
<references />
<div class="references-small" style="margin-top: 1em;">
* {{cite book
|author = Dunlavey
|year = 1994
|title = Building Better Applications: a Theory of Efficient Software Development
|url =
|chapter =
|chapterurl =
|pages =
|publisher = [[International Thomson Publishing]]
|isbn = 0-442-01740-5
|accessdate =
}}</cite>
</div>
 
== External links ==