xsl-list
[Top] [All Lists]

Re: [xsl] XSLT 2.0 processor signalling error, for type errors

2008-10-08 07:44:16
Thanks, Mike and all for the clarifications.

Just out of curiosity, if I write say

int i = "abc";

in Java

I would get a compilation failure (even if the variable is not used).

XSLT 2.0 it seems follows a different philosophy (lazy evaluation, as
Andrew wrote). Also in XSLT, there is no concept of compilation and
then executing the binary code (as in Java). Though, I think there are
processors which do this. For e.g., Xalan interpretive processor, and
also Saxon compiling the XQuery programs to Java classes.

Most of the time, XSLT compiles the program and executes it in one
pass. Can we say XSLT is a interpreted language, like say JavaScript?

Any thoughts please, on this design of XSLT ...

On Wed, Oct 8, 2008 at 4:35 PM, Michael Kay <mike(_at_)saxonica(_dot_)com> 
wrote:
What is happening here is that Saxon is detecting the type error dynamically
(at execution time) rather than statically (at compile time), which means it
doesn't get detected if the variable is never used (variables that are never
used are never evaluated).

This is entirely conformant behaviour - run-time errors aren't reported if
the code doesn't get evaluated, and it's up to the processor to decide
whether or not it needs to evaluate the code in order to produce a result.

It looks as if there's room for some extra static type checking here,
however. Again, that's at the discretion of the processor.

Michael Kay
http://www.saxonica.com/


-- 
Regards,
Mukul Gandhi

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--