[
Lists Home |
Date Index |
Thread Index
]
>> So I'll try to explain my point in lay terms. The main
>> benefit of a type system is so that things can be done
>> *statically* at compile time instead dynamically at
>> run time. Validation is a dynamic process.
>
> No. The main benefit of a "type system" is that individuals (e.g.
> individual documents or fragments of documents) can be collected into
> sets based on constraints. This is so simple and basic a concept that it
> should hit you right between the eyes. No formal mumbo jumbo needed.
In the CS context, "type system" doesn't just mean a way of collecting
individuals into sets. For example, in his recent book
"Types and Programming Languages" Benjamin Pierce (one of the XDuce
authors) offers the following definition:
"As with many terms shared by large communities, it is difficult to define
"type system" in a way that covers its informal usage by programming
language designers and implementors but is still specific enough to have
any bite. One plausible definition it this: A type system is a tractable
syntactic method for proving the absence of certain kinds of program
behaviors by classifying phrases according to the kinds of values they
compute."
This is the sense in which the term "type system" is being used when the
XQuery folks talk about the "XQuery type system".
James
|