[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
RE: [xml-dev] Feasibility of "do all application coding in the XML languages"?
- From: "Michael Kay" <mike@saxonica.com>
- To: "'Mukul Gandhi'" <gandhi.mukul@gmail.com>,"'Costello, Roger L.'" <costello@mitre.org>
- Date: Mon, 1 Dec 2008 17:35:47 -0000
> Hi Roger,
> There are many software applications, which need
> imperative programming infrastructure (where we should be
> able to change program state at will, like using assignment
> statement as so on).
>
>1. Complex business logic (say I am implementing a work flow for an
insurance company)
>2. Game programming :)
>3. GUI programming
> To my opinion, none of the above tasks can be done (or easily
> done) in XML based languages.
There are no applications that NEED imperative programming (functional
programming has provably the same computational power). Whether things are
more EASILY done that way is in large measure a matter of your skills and
experience. (I remember working with programmers from an older generation
who claimed coding was easier if they used GOTO statements.) There are one
or two things I still find easier in imperative languages - notably some
graph-walking applications - but they are few and far between. Many problems
that appear to be so complex that you need an imperative language turn out,
on examination, to be complex only BECAUSE you are using an imperative
language.
Of your three examples, one of my clients builds complex workflow
applications entirely in XSLT/XQuery and it's remarkable how the logic is
simplified by doing it this way. One of the attractions is that a functional
language like XSLT or LISP encourages you to think about program and data in
a more unified way, which is really helpful when building a workflow engine.
For example, it's natural to think about a set of rules written in an XML
vocabulary being translated dynamically into an XSLT stylesheet.
Game programming and GUI programming are a different question because your
choice of language is heavily dictated by the data you are working with. XML
languages are good at manipulating XML, they are not so good at manipulating
images. But functional languages such as Haskell are certainly used for
implementing "strategy" games such as chess.
Michael Kay
http://www.saxonica.com/
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]