XSLT I see as a tragedy. The match / patch processing model is so elegant, but the programming langage built around it is such a disaster (the XML, various langage semantics e.g. the implicit context, the gimped semantics, and the development environment or lack thereof).
I think a simplified Haskell-ish script host (à la Elm) with a smattering of debugging capabilities would have been amazing.