OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] German lesson

Thank you very much, Dana, for this account of the origins of XQuery. It is well aligned (or the other way around) with a thought which I have cherished for quite a few years already. It is this:

XQuery is a stroke of genius. Or no, it cannot be, because it has been designed by a group of people, whereas a work of genius is a single, coherent shape emerging in a single, individual mind (as has been explained by John Steinbeck, in East of Eden). So XQuery would be a stroke of genius, had it been created by an individual. But there is a stunning unity of intuition about it, which may be the result of an extraordinary consonance among a set of  bright minds. This consonance has perhaps a lot to do with functional programming and OQL.

I think a key to understanding the true significance of XQuery is to look beyond its being a functional language, as well as its being a query language. (And it would be totally misleading to call it a query language, anyway.) A key is to see the blending of a functional view with a preoccupation with *resources* (URIs and what stands behind them). Functional programming is about values. XQuery is about resource contents. And here comes the unique: XQuery treats resource contents as values, as the very substrate of functional programming.

So is there any other functional programming language with a value model capturing the concept of a resource as XQuery does (with its node model), rather than continuing to think in terms of maps and arrays and objects into which resource contents must be translated in order to be processed?

Daniela Florescu <d6florescu@gmail.com> schrieb am 22:13 Freitag, 7.April 2017:

Dear Hans-Juergen,

The first functional (aka pure "expression language”) language was Lisp.

It was followed by a series of more sophisticated ones like ML (and all its variants like CaML).

Now probably the most solid functional language used today is Haskell (e.g. Phil Wadler, who contributed 
To the design of XQuery, also contributes to Haskell).

Haskell also has monoid comprehensions, which in theory, would make it a “query language”. But its monoid 
Comprehensions are not as sophisticated and powerful as XQuery’s.


Now in terms of the history of functional query languages, the first (and only one) before XQuery was OQL - the object oriented
query language. 

OQL was probably the main source of inspiration for XQuery, as me, Jerome Simeon, Michael Rys, etc, we all 
had our PhDs in query processing for object oriented databases, so we "grew up" with OQL. 

In top of that people like Phil Wadler, Mary Fernandez, Denise Draper, etc, had their PhDs in functional programming languages….

… so you see, when we designed XQuery, there were so many people in the group who believed "functional is good".

And I hope we were right ! :-)


P.S.  SQL is not and has never been functional.

HTH, best regards,

On Apr 6, 2017, at 10:26 PM, Hans-Juergen Rennau <hrennau@yahoo.de> wrote:

High time to learn a little German, don't you think so?

Keep cool, only a couple of words for today, and for a long time. They are Wort and Wert.

Wort - word
Wert - value

Notice how a slight shift of vowel turns word into value and turns value into word, and remember that in the beginning was the Word.

An expression is a shape which can be resolved to a value, and XQuery is a pure expression language. I wonder if there is another programming language which is so headstrong, so determined in being an expression language and nothing else. But the XQuery concept of a value is merged with the concept of a resource and its contents in an unprecedented and unparalled way. XQuery allows us to think of resources and resource contents - the contents selected from any number of resources with any degree of sophistication - as values. In XQuery resources and resource content selections are values, indivisible and meaningful like words, basic building blocks of thought. In the beginning was the Word, and in our humble trade we should be aware of the XQuery way of thought: in the beginning was the value.

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS