Sorry, pressed the wrong keys. Continuing the unfinished post:

> where are the functions which would really have

> made it useful without taxing the implementers? e.g trigonometry

> functions for SVG; square root /log function to do simple statistics?

> hex/ dec conversions which dont need 50 lines of extraneous code?

> i.e. practical functions, implementable in a web browser which would not

> mean re-writing the whole thing from the ground up, and which would have

> done a lot more to popularize its usage.
You are describing FXSL 2.x -- and it is ready for use.

Of course, to use the FXSL 2.x functions in a browser, one must first have a

browser with XSLT 2.0 support.

FXSL 1.x can be used (and has been used) in browsers.

Besides its main advantages (implementation of higher-order functional

programming in XSLT) FXSL provides the end user with functions(/templates in

XSLT 1.0) for:

- Recursion over a list

- Iteration (N times or conditional)

- Mapping of a list

- Filtering or splitting of a list

- Zipping of two and more lists

- Functional composition (and multi-pass transformation)

- sum/product of computed values (such as sum/product of units, sums of

products, sums of results of transformations of elements of a list,

hexadecimal arithmetic or arithmetic in any other numeric system)

- min(), max(), avg()

- Trigonemetric functions with controlled precision: sin(), cos(), tan(),

cotg(), sec(), cosec().

- Exponentiation and logarithmic functions: exp(), pow() (a^x), logy(X)

- Character-wize processing of strings and bitwize processing of bit

strings

- String processing -- tokenization, replacement, spelling checking,

finding most likely candidates for spelling correction,

concordance

- Random numbers generation -- sequences of random numbers from a given

interval or with pre-specified distribution, random

shuffling of a list, ..., etc.

- Finding prime numbers

- Generation of Fibonacci numbers

- Generation of permutations, combinations, etc. of elements of a set

More advanced features:

- The means to write and evaluate Higher-Order Functions (HOF). Higher -

Order Functions are such functions that accept other functions as

parameters

or return other functions as their result.

- Provide the means for the implementation and evaluation of

currying/partial-application

More about FXSL can be found on its home page:

http://fxsl.sf.net
and I'd recommend the last ExtremeMarkup Languages conference paper at:

http://www.idealliance.org/papers/ex...ovatchev01.pdf
Cheers,

Dimitre Novatchev

"shaun roe" <(E-Mail Removed)> wrote in message

news:(E-Mail Removed)...

> mild rant follows

>

> Working now for a couple of years with xslt and now xslt 2.0, does

> anyone else get the impression that xslt 2.0 somehow missed the point?

> Yes its got a fancy new data model (and thank goodness for the new

> grouping functions), but where are the functions which would really have

> made it useful without taxing the implementers? e.g trigonometry

> functions for SVG; square root /log function to do simple statistics?

> hex/ dec conversions which dont need 50 lines of extraneous code?

> i.e. practical functions, implementable in a web browser which would not

> mean re-writing the whole thing from the ground up, and which would have

> done a lot more to popularize its usage.

>

> There's plenty of room here for a XSLT 1.5 standard implemented

> retroactively...

>

> ok that was it. I'll get back in my box now.