[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] How does XML limit "the range of implementationdecisions that must be automatically made"?
- From: Roger L Costello <costello@mitre.org>
- To: "xml-dev@lists.xml.org" <xml-dev@lists.xml.org>
- Date: Thu, 23 Jun 2022 11:58:56 +0000
Michael Kay wrote:
> Nonprocedural programming is most successful in domains
> such as database query (SQL) where there's a vast range of
> implementation decisions to be made (query execution plans),
> and choosing the right one is best done by a machine rather
> than a human.
That is terrific!
I realize that XML is not programming, but it is nonprocedural (declarative). And it's successful. Michael, how does what you say apply to XML? Where in XML is there a "vast range of decisions to be made, and choosing the right one is best done by machine rather than a human"?
More generally, is a key property of a declarative language that it has a "vast range of decisions to be made, and choosing the right one is best done by machine rather than a human"?
/Roger
-----Original Message-----
From: Michael Kay <mike@saxonica.com>
Sent: Thursday, June 23, 2022 7:17 AM
To: Roger L Costello <costello@mitre.org>
Cc: xml-dev@lists.xml.org
Subject: [EXT] Re: [xml-dev] How does XML limit "the range of implementation decisions that must be automatically made"?
The domain he's referring to is not XML, but what he calls "scanning" (probably meaning here lexical analysis).
I actually think he's wrong. Nonprocedural programming is most successful in domains such as database query (SQL) where there's a vast range of implementation decisions to be made (query execution plans), and choosing the right one is best done by a machine rather than a human.
Michael Kay
Saxonica
> On 23 Jun 2022, at 11:45, Roger L Costello <costello@mitre.org> wrote:
>
> Hi Folks,
>
> A book [1] that I am reading says something interesting about declarative languages (such as XML):
>
> Programming a scanner generator is an example of nonprocedural programming [i.e., declarative programming]. That is, unlike ordinary programming, which we call procedural, we do not tell a scanner generator "how" to scan but simply "what" we want scanned. This is a higher-level approach and in many ways a more natural one. ... Nonprocedural programming is most successful in limited domains, such as scanning, where the range of implementation decisions that must be automatically made is limited.
>
> That last sentence is interesting. I wonder how it applies to XML? XML is in a limited domain, right? XML's domain is the data formats domain, right? How is "the range of implementation decisions that must be automatically made" limited in XML?
>
> /Roger
>
> [1] "Crafting a Compiler with C" by Fischer and LeBlanc, p. 52
>
> _______________________________________________________________________
>
> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
> to support XML implementation and development. To minimize
> spam in the archives, you must subscribe before posting.
>
> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
> Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
> subscribe: xml-dev-subscribe@lists.xml.org
> List archive: http://lists.xml.org/archives/xml-dev/
> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]