意圖編程
在計算機編程中,意圖(Intentional)編程,是查爾斯·西蒙尼開發的一種編程范型,在軟件源代碼中編碼編程者(或用戶)構思他們的工作時心中的精確「意圖」。通過使用適當層次的抽象,編程者在其中思考、創建和維護計算機程序會變得更容易。通過分離對意圖與具體操作的關切,軟件變得更加模塊化,並允許更加可重用的軟件代碼。
意圖編程是前微軟首席架構師查爾斯·西蒙尼開發的,他當時在微軟研究院領導了一個團隊,開發了這個范型,並建造了一個叫做IP(意圖編程)的集成開發環境(IDE)來展示這個范型。微軟決定不產品化意圖編程范型,因為在2000年代早期,微軟推出了C#和.NET來反擊Java的廣泛採用[1]。查爾斯·西蒙尼決定在微軟的批准之下,將他的想法帶離微軟自己商業化它。他建立了一個公司叫意圖軟件來追求這個目標。微軟將西蒙尼在微軟期間所獲得的意圖編程專利授權許可給了意圖軟件,但不包含源代碼。
對在微軟研究院期間開發的意圖編程的概述可見於叫做《生成式編程:方法、工具和應用》的一本書的第11章[2]。
參見
引用
- ^ "Simonyi explains, 'It was impractical, when Microsoft was making tremendous strides with .Net in the near term, to somehow send somebody out from the same organization who says, "This is not how you should do things--what if you did things in this other, more disruptive way?'"[1] (頁面存檔備份,存於網際網路檔案館) (Quote from "Part II: Anything You Can Do, I Can Do Meta: Space tourist and billionaire programmer Charles Simonyi designed Microsoft Office. Now he wants to reprogram software." (頁面存檔備份,存於網際網路檔案館), Tuesday, January 9, 2007, Scott Rosenberg, Technology Review.)
- ^ Generative Programming: Methods, Tools, and Applications, by Krzysztof Czarnecki and Ulrich Eisenecker, Addison-Wesley, Reading, MA, USA, June 2000.
外部連結
- Intentional Software - Charles Simonyi's company
- The Death Of Computer Languages, The Birth of Intentional Programming, a technical report by Charles Simonyi (1995) (頁面存檔備份,存於網際網路檔案館)
- Intentional Programming - Innovation in the Legacy Age, a talk by Charles Simonyi (1996) (頁面存檔備份,存於網際網路檔案館)
- Edge.org interview with Charles Simonyi (interviewer: John Brockman) (頁面存檔備份,存於網際網路檔案館)
- Language Workbenches: The Killer-App for Domain Specific Languages? (頁面存檔備份,存於網際網路檔案館) - Martin Fowler's article on the general class of tools that Intentional Programming is an example of.
- "Anything You Can Do, I Can Do Meta" (頁面存檔備份,存於網際網路檔案館) Tuesday, January 9, 2007, Scott Rosenberg, Technology Review
- Awaiting the Day When Everyone Writes Software (頁面存檔備份,存於網際網路檔案館), The New York Times, 28 January 2007
- Is programming a form of encryption?, by Charles Simonyi (2005)
- Appropriate Levels of Abstraction, by Charles Simonyi (2005)
- The information contents of programs, by Charles Simonyi (2005)
- Feature X Considered Harmful, by Charles Simonyi (2005)
- Notations and Programming Languages, by Charles Simonyi (2005)
- Personal Observations from a Developer, by Mark Edel (2005)
- Microsoft Research's educational video introducing their Intentional Programming system (ASF format, circa 1998, 20 megabytes)