Nachricht vom 01.07.2008
Sudoku mal anders: Die etablierten XSL-Transformationen werden üblicherweise nicht für die Simulation des Klimas oder ähnlich aufwändige Berechnungen einsetzt, sondern zur Verarbeitung von XML-Dokumenten. Dennoch ist auch XSLT als Turing-vollständige Sprache für komplexe Algorithmen gerüstet. Meine mathematische Bibliothek für Sinus- und Kosinus-Berechnungen zeigt das ansatzweise, aber noch viel eindrucksvoller der Sudoku-Solver von Andrew Welch.
Mit Saxon 9.0 unter Kernow benötigte das Stylesheet zur Lösung eines der angeblich »härtesten Sudokus« nur ~400 Millisekunden. Der Code lief allerdings erst nach einer minimalen Änderung der Funktionsdeklaration <xsl:function name="fn:getGroupIndexes" as="xs:integer+" ...> durch Umschreiben des Rückgabewertes von as="xs:integer+" in as="xs:integer*".