Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What exactly is Intentional Programming

On my reading spree, I stumbled upon something called Intentional Programming. I understood it somewhat, but I not fully. If anyone can explain it in better detail, please do. Is it being used in any real application?

like image 860
Varun Mahajan Avatar asked Oct 14 '08 14:10

Varun Mahajan


People also ask

What is an Intentional program?

An intentional program violation (IPV) is purposely giving false or misleading information, hiding information in order to get benefits you are not eligible for, or not reporting a change that would reduce or end your benefits. 106 C.M.R.

What does the term interactive programming mean?

An interactive program is a computer software program that requires user interaction to operate. This interaction could include inputting information, modifying information, managing information or otherwise manipulating data. Most software programs are interactive.

What is IP in Programming?

Software intellectual property, also known as software IP, is a computer code or program that is protected by law against copying, theft, or other use that is not permitted by the owner.

Is coding mentally stimulating?

Brain-stimulating activities like programming basically act as a great workout for the brain and strengthen its ability to memorize and perform tasks. Since programmer's tasks include a complex and multifaceted ability, coding offers assistance reinforce associations between the distinctive parts of the brain.


2 Answers

You got me started on this one...
Looks like C. Simonyi wanted to step to the next level of abstraction from High level languages. Reduce the dependency of customers on developers to make every change.. in code (cryptic for people not in development). So he invents this new product called IP, which has a WYSIWYG type GUI editor to create a domain specific model. (i.e. IP has a GUI to create the building blocks for your app.. LISP allowed you to create the meta/building blocks but not in a way that domain experts could easily do it.)
Like the models in UML, the promise is that you can auto-generate the corresponding source code at the "push of a button". So the domain experts can tweak the model in the future and press the Bake button to deliver the next version of the app. It seems to utilise DSLs however with the added benefit that multiple user-created DSLs can talk with each other via a built-in IP mechanism... which means the finance model and sales model can interact and reuse blocks as needed. As with DSLs, you get the benefit of code that conveys developer intent rather than appeases implementation language constraints.

The idea being to give greater control to the BA and domain experts who actually know what's needed...

Update: Real world use looks like 'not yet'.. although Simonyi believes 'absolutely in the long term'.
Short Story: MS squished IP in favor of .Net framework, Simonyi left MS and formed his own company 'Intentional Software'.. with the contract that he could use the IP ideas but he would have to rewrite his working proto from the ground up.. (that should slow him down). It's still Work-In-Progress I think.. and being written in C# (to boot)

Sources:

  • Anything you can do, I can do meta by Scott Rosenberg, MIT Tech Review (2007)

To think till yesterday.. I didn't know a thing about this. Investigative reporter signing off. Going back to day job :)

like image 189
Gishu Avatar answered Sep 30 '22 23:09

Gishu


It's the opposite of what happens when I come home at 2am after a pub crawl and fire up the laptop "just to check my email real quick, hon."

Then, the next day, when I peel open one eye and find my way to the bathroom at the crack of noon, I start brushing my teeth and realize, toothpaste dribbling out of my mouth, that last night I made 4 SVN commits, closed 3 bugs, and figured out how to solve the starvation problem on our distributed locking protocol. And I have no idea how the hell any of it works, anymore.

Or maybe it's what workmad3 said.

like image 33
SquareCog Avatar answered Sep 30 '22 22:09

SquareCog