[
Lists Home |
Date Index |
Thread Index
]
Jonathan Robie wrote:
> At 02:30 PM 7/3/2002 -0700, Joe English wrote:
>
> >I'd even question how relevant the efficiency issue is.
> >
> >XQuery is designed, principally, to do database queries.
> >In this context, it doesn't matter if you can take advantage
> >of type information to add two xs:integers in nanoseconds
> >instead of microseconds, when it takes milliseconds to retrieve
> >the data in the first place.
>
> Queries on large sets of data *do* need to be efficient - and when you want
> to be efficient, you try to avoid actually retrieving the data whenever
> possible. Reasoning about types statically is one of the ways we do this.
I still don't buy this argument.
Static typing can help optimize low-level operations that are
close to the machine (for instance this is why as a rule SML is
more efficient than Scheme), but languages that do heroic
optimizations -- APL, SQL, and Common Lisp for instance -- tend
to be dynamically typed. Static typing is neither necessary
nor sufficient.
What optimization strategies does the XQuery type system enable?
Has anyone implemented, or even just designed, a database access
optimizer that takes advantage of it?
--Joe English
jenglish@flightlab.com
|