Help! i'm a prisoner in a software factory

IR35 Test

Is there any escape from Domain-specific Languages?

Unless you’ve been living on Mars for the last few months – like wot I have – then you can’t have failed to have heard that Microsoft are planning their long-awaited release of Visual Studio 2005. Along with a bunch of cool and useful additions to the suite, those clever chaps in the tools & technology group have come up with a little something they’re calling Domain-specific Languages. DSL’s are to third generation programming languages like Java and C++, what 3GL’s are to lower-level languages like Assembler.

The theory behind DSL’s is that, just as Assembler grouped together bunches of lower-level machine code into shorter, simpler instructions, and a language like C++ groups together bunches of Assembler code into even shorter, simpler instructions, DSL’s will provide a way to group together bunches of .NET code into a yet shorter, simpler visual programming language that will allow developers to put new applications together faster and at less cost.

DSL’s are a natural successor to reusable code libraries. Indeed, they are reusable code libraries – but captured in a way that makes them much easier to reuse. When you create your DSL, you also create a visual representation for it so that developers can plug elements together using a graphical editor, in much the same they do now with Windows user interfaces. But instead of dropping a button onto a form and having the code generated by the tool, they would now be able to drop a Customer or an Invoice into a business process and have the code generated for that.

On paper it all sounds great. I, for one, wouldn’t want to go back to punch cards, so I can see the attraction of raising the level of abstraction yet higher. But there might be a fly in the DSL ointment…

The “domain logic” of a 3GL hasn’t changed much in all the years since they were invented. Programming languages have variables, data types, modules, functions, if…else… statements and so on. I can write a program in Java now that I could have written in FORTRAN forty years ago. A program is a program (is a program).

Business logic is less stable. When I develop my banking DSL for Acme Investments Inc., and give it to their 200 C# developers to build end user applications out of, what happens when the business rules change? What happens when the Settlement Account business entity doesn’t have a one-to-one relationship with a Customer anymore?

To put it into perspective, think what might happen if the syntax of the Java programming language was revised every few months.

Perhaps Microsoft has an answer, and I’ve just missed it somehow. But I can’t help feeling that we’ve been here before…

Published: Friday, January 13, 2006

© 2012 All rights reserved. Reproduction in whole or in part without permission is prohibited. Please see our copyright notice. If you want to use any content you have seen on this site then please request our media pack and ask for details of our Content Licencing Service.


Readers Comments...


  
Bookmark and Share
  
     
  
  
  

Latest Site Updates

Contractor limited company formation versus set up and preparing for trade Contractor limited company formation versus set up and preparing for trade

Contractors wishing to use a limited company can choose between a basic formation service or an existing entity that’s registered and ready to trade.

Public sector contractors may be forced into PAYE under new ‘off-payroll’ rules Public sector contractors may be forced into PAYE under new ‘off-payroll’ rules

Limited company contractors with public sector clients are facing new ‘off-payroll’ rules that could force them into PAYE or out of work.

Choosing an online contractor accountant or accountancy software – checklist download Choosing an online contractor accountant or accountancy software – checklist download

Contractors can choose the online contractor accountant or accountancy software that suits the needs of their contracting business using this free che

The tax avoidance arms race is MAD: mitigation, avoidance and disclosure The tax avoidance arms race is MAD: mitigation, avoidance and disclosure

The tax mitigation arms race between HMRC and tax advisors leads to a never-ending cycle of mitigation, avoidance and disclosure, says David Colom.


  
  

Twitter

  • UK economy performed worse than thought in Q1 but fortunately most contracting sectors are bucking this trend: ONS http://t.co/Asfo1NKy

    6 hours ago

  • As manufacturing slows (http://t.co/W6hqs2Nq), manufacturers say government policy isn't helping (http://t.co/ruFxJDjV)

    7 hours ago

  • HMRC's impressive efforts collecting extra £4.32bn over 5 years have been stunted by job cuts http://t.co/ApR00Vfa via @BBCNews

    8 hours ago

  • Contractor limited company formation versus set up and preparing for trade http://t.co/rYtmRTQx

    8 hours ago

  • Public sector contractors may be forced into PAYE under new ‘off-payroll’ rules http://t.co/LksFe03G

    Wed, 23 May 2012

  • Oil and gas contractors prospects looking positive following record breaking North Sea licensing round http://t.co/1oy3Wb4l

    Wed, 23 May 2012

Follow Us On Twitter


  
     

  
  

Contractor solutions

Contractors Handbook AM Limited IR35 Test
  
Contractor accountants - pricing checklist
  

Contractor solutions

Bedouin Group

No more IR35. Retain up to 85% of your earnings.

Contractors Handbook

The expert guide for UK contractors and freelancers

InTouch Accounting

Person to person contractor accountant. Free IR35 review.

Parasol Group

Umbrella or Limited? Guidance on best options, and take home pay.

Choice Premier Pay+

Take home up to 85% of your pay. IR35 solution.

NA Bedouin Group D J Colom Accountants Contractor Financials NewsNow
  
Elevate

  

The UK's leading contractor site. Independently audited traffic (ABC) – 156,346 monthly unique visitors.