Most Read Latest News Blog Resources
Digg!  Digg
Reddit  Reddit


            iphoneapp GET THE APP!

Windows & .NET Watch: Intentional’s chrome (if not silver) bullet




June 9, 2009 —  (Page 1 of 3)
The public unveiling of the Intentional Workbench at Microsoft’s recent DSL DevCon was the most impressive demo I’ve seen in 20 years of reviewing software development tools. There is no doubt that “domain workbenches” will change the way that business applications are developed. This type of tool will increase by several factors the speed by which large companies can evolve their applications.

The value proposition of a “domain workbench” is “projectional editing.” This means programming a GUI with a screen builder, a database query with (say) a query-by-example editor, a state machine with a diagram or a transition table. Or programming with code—text filled with curly brackets and semicolons being a favored format for experts in the programming domain.

But rather than one or two alternative editors developed by the IDE vendor, a system might have a dozen editors in use at different times, some provided by the IDE, some from third parties, some reused from other projects, and perhaps some custom-written for the project at hand. It is the proliferation and evolution of editors from which the productivity speedup derives; this is why the demo, even though jaw-dropping as it stands (view it here), is really just saying “Hello, world.”

As discussed in my last column, Fred Brooks only credited high-level languages with a quintuple increase over assembly language. But you cannot do <asp:label id=”HelloWorld” runat=”server”/> in five lines of ASM. It may have taken decades, but high-level languages can now easily encapsulate hundreds or even thousands of lines of assembly language. Heck, a single line of CIL, the assembly language of the Common Language Runtime, can hide pages (I’m looking at you, newobj). In the same way, it’s going to take years for truly great projectional editors to evolve, especially editors that are broadly appealing.

What will take considerably less time to emerge are valuable editors for complex business domains. In my last column, I spoke of the Domain Specific Language value proposition and how it is most relevant to companies who have a “software factory”-like environment, where they are developing many applications that reuse domain concepts. Sun Microsystems’ Ted Leung accurately described the Intentional Workbench as not being for the development of DSLs, but rather fitting “in the DSL footprint.”

Related Search Term(s): domain-specific languages, Microsoft

Pages 1 2 3 


Share this link: http://www.sdtimes.com/link/33526
 

Comments

06/10/2009 04:24:58 AM EST

The "view it here" phrase doesn't include a link when I view the article with IE - should it? I'm intrigued to see the presentation because it's hard to get my head around how having multiple grammars to learn (no matter how simplified) will make programming tasks easier. I know many programming/scripting languages. For me, the easier ones are like C#, JavaScript and PHP which share a syntax structure. VB is harder for me. But they are all difficult because their object models are different, differences which reflect their domain specialisms. These differences are not going to go away. It is still important to understand the DOM when using JavaScript and HTML when using PHP. I recently watched the M video showing the DSL 'Murl' created using Microsoft's M, part of the Oslo project. Murl is an M implementation of Curl. But unless you appreciated why Curl exists the benefit of the Murl DSL was not so obvious. Really they'd created a limited grammar that was not more intelligible to the newbie than the options for any other command line tool. That's because there's an implicit assumption that other know the target domain well and share the same mental model of that domain as the DSL author. In my experience, that doesn't happen often. The Java and .NET object models share much in common because they are based on a common understanding of programming fundamentals. Using some other object model is a recipe for time on the sideline, not because the object model is poor but because the model is not familiar (which could mean difficult and alien).

United KingdomBill


06/15/2009 06:42:33 PM EST

The URL should _definitely_ be visible in IE; I don't know why you're having trouble. Although I agree with all your logic, what I perhaps failed to communicate was that the syntax of a projectional editor is (a) often graphical and (b) presumably part of the domain-expert's area. So although it's true that you're introducing multiple syntaxes (and at some level complicating things), the hope is that by minimizing the distance between the expert and the specification of logic, you get a net win.

United StatesLarry O'Brien


Add comment


Name*
Email*  
Country     


  • Comment
  • Preview
Loading



 
 
 
 
News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 
Download Current Issue
ISSUE 8/1/2010 PDF

Need Back Issues?
DOWNLOAD HERE

Receive the print Edition?


 
blogs tab
Like Ruby n' Rails
Programming languages and Web frameworks go together like peas n carrots. Or Ruby n' Rails.
07/30/2010 04:36 PM EST

Adobe buys a Web-based IDE
Adobe looks to buy a rapid and agile Web development environment.
07/28/2010 03:49 PM EST

OpenStack opens up
OpenStack looks to be an intriguing new idea for running clouds.
07/28/2010 01:56 PM EST

 

Events calendar tab
8/1/2010 to 8/5/2010
Boston
SHARE

8/2/2010 to 8/6/2010
Redmond, Wash.
1105 Media

8/9/2010 to 8/13/2010
Orlando
Agile Alliance

8/23/2010 to 8/26/2010
San Jose
S&S Media

8/30/2010 to 9/2/2010
San Francisco
VMware