[xsl] Article: The Functional Programming Language XSLT

Subject: [xsl] Article: The Functional Programming Language XSLT
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Fri, 1 Feb 2002 00:51:13 -0800 (PST)
I know that nothing can make the members of the XPath 2.0 agree that
there is any use-case for higher-order functions, but...

http://www.topxml.com/xsl/articles/fp

Contents:

  Introduction
  Starting point
  Major FP design patterns/functions in XSLT
  List processing
  Tree processing
  Lazy evaluation
  Advanced XSLT FP applications
  Square root
  Numerical differentiation
  Numerical integration
Summary

And two excerpts:

"Not only the purpose of this article to prove that XSLT can be
considered a functional programming language has been fulfilled by
providing XSLT implementation for the most major FP design patterns and
examples from John Hughes article "Why Functional Programming matters"
(this article contains the code of 35 functions), but as a side effect
we have now available what can be considered the first XSLT functional
programming library. The full library code, together with test examples
demonstrating the use of individual functions, is available at the
downloads page of TopXML.COM as specified in the links at the start of
this article." 


"On   the other side, the XSLT code of those functions seems
too-verbose compared to the corresponding Haskell code. The process of
writing functional XSLT code can be made much more straightforward and
easier by providing support for higher-order functions in XPath and
XSLT, thus definitely improving even further the compactness,
readability and reliability of XSLT functional code. It is the ideal
time right now for the W3C XPath 2.0 working group to make the decision
to provide the necessary support for higher-order functions as part of
the standard XPath 2.0 specification. In case this golden opportunity
is missed, then generic templates and libraries will be used in the
years to come."

Cheers,
Dimitre Novatchev.



__________________________________________________
Do You Yahoo!?
Great stuff seeking new owners in Yahoo! Auctions! 
http://auctions.yahoo.com

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread