> Confession: I came relatively late to functional programming and Ibve
> probably only used fold-left about a dozen times.
Me too. But once you discover folds (or xsl:iterate) you find yourself using
them a lot.
I did an (XSD-like) validator in Scala once, and used a fold operation to
process a sequence of elements through a finite state machine (with the data
passed from one iteration to the next being the state in the machine); the
result was a single line of code that did the same thing as about 30 lines of
procedural Java code in the Saxon XSD validator. I found it really hard to
believe that it could be so simple.
Michael Kay
Saxonica
|