Shall I conclude that there were no user requirements and
use-cases that required taking this decision?
The argument against allowing redefinition of variables was based on
preventing the novice error of doing
<xsl:variable name="x" select="0"/>
<xsl:for-each ...
<xsl:variable name="x" select="$x + 1"/>
The argument in favour of allowing it was based on the ability to
generate XSLT/XQuery code automatically, and to allow cut-and paste of
code fragments.
So yes, there were use cases on both sides, and it boils down to a
matter of opinion as to how you weigh them.
If you think the decision is wrong, you should post a note to
public-qt-comments saying why.
One piece of evidence that might be interesting would be a survey of how
other languages - especially functional languages without assignment
statements - have decided this question.
Michael Kay
Software AG
home: Michael(_dot_)H(_dot_)Kay(_at_)ntlworld(_dot_)com
work: Michael(_dot_)Kay(_at_)softwareag(_dot_)com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list