Subject: RE: [xsl] XSLT 2.0 processor signalling error, for type errors From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Wed, 8 Oct 2008 13:01:51 +0100 |
> 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). Java is a statically-typed language. > > 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? Compiled vs interpreted is a matter of the processor implementation, nothing to do with the language itself. And it's a pretty fuzzy distinction these days, because most processors actually compile down to some intermediate representation which is then interpreted by some kind of virtual machine: the question is how close that representation is to machine code. JIT compilation makes it even fuzzier. A clearer distinction is between strongly-typed and weakly-typed languages, or (almost the same) statically-typed and dynamically-typed. XSLT is essentially dynamically-typed (meaning type-checking isn't done until runtime) except that there's provision for optional optimistic static typing - which means you can report a compile-time error if you find a construct that's guaranteed to fail if executed at run-time (as in your example), but not (like Java) if there's merely a possibility that it might fail. Michael Kay http://www.saxonica.com/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] XSLT 2.0 processor signal, Mukul Gandhi | Thread | Re: [xsl] XSLT 2.0 processor signal, Mukul Gandhi |
Re: [xsl] XSLT 2.0 processor signal, Mukul Gandhi | Date | Re: [xsl] XSLT 2: File path to URI , Yves Forkl |
Month |