Home > Ask the SOA Experts > Questions & Answers > The merits of XML-based programming languages, such as Water
Ask The SOA Expert: Questions & Answers
EMAIL THIS

The merits of XML-based programming languages, such as Water

Sean McGrath EXPERT RESPONSE FROM: Sean McGrath

Pose a Question
Other SOA Categories
Meet all SOA Experts
Become an Expert for this site
>
QUESTION POSED ON: 19 August 2003
Sean, I was confused by your answer to my first question. Here was your response:
"Yes, I have looked at Water. There are numerous languages that take this approach. I personally do not like the approach, but then again I'm spoiled (a Python programmer). :-)"
I haven't seen any other languages treat XML as a first-class citizen for both code and data. There are certainly hybrid designed such as JSP and ASP, but those are not XML-based languages. Water is simpler, more flexible, and more OO than Python. Can you describe what you believe Water's approach is, what other languages have "taken this approach", and specifically what you don't like about that approach?

>
I'm not a fan of using a tag language to express imperative programming language constructs. XSLT for example (in is imperative components) rapidly becomes unreadable and unmaintainable in my opinion. O:XML (http://www.o-xml.org/) is another example of the tag based approach. All XML adds to any tag-based approach (O:XML, water, JSP, ASP, CFML etc.) is that the tags are balanced. It does not impact, except in a negative way, IMO, on the readability (and thus maintainability) of the code.

There comes a point where you need a syntax designed for expressing programming language constructs. If you take a data description language like XML and use it to create a programming language, the result is every bit as unsatisfactory as taking a programming language and using it as a data description language.

The distinction between the two can be substantially blurred. Perhaps the best example being the Lisp family of languages in which S-expressions are at once data representation *and* code representation devices. I'm a fan of Lispy languages and functional programming languages in general. I find with Lisp that after a short while using it intensively, you "see past" the parenthesis to what is going on underneath. I have never been able to "see past" the tags in an XML-based programming language.

If you want to use a single syntax for code and data - use Lisp. It nailed the problem in about 1950. XML has nothing to offer here in my opinion.


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   



RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary



Search and Browse the Expert Answer Center
Search and browse more than 25,000 question and answer pairs from more than 250 TechTarget industry experts.
Browse our Expert Advice



SOA Governance White Papers - BPM, EDA, IT Governance
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2001 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts