Ciao, per prima cosa hai dimenticato di chiudere un commento. C'è un commento multiriga che è stato aperto all'inizio dello script ma non è stato chiuso. Questo significa che il commento si estende fino alla chiusura del commento successivo (qualora ce ne fosse, come nel tuo caso).
Nota che il forum formatta automaticamente lo script quando è inserito tra gli appositi tag di formattazione (come hai fatto), per cui puoi notare le parti colorate in verde che rappresentano appunto dei commenti.
La riga function loadXML(url, handler) { risulta essere un commento perché racchiusa nel blocco di script tra /* e */. Questo chiaramente genera un errore di sintassi perché più avanti viene trovato il carattere }, cioè la chiusura di tale funzione che però non risulta essere stata aperta.
Potresti verificarlo tu stesso attraverso la console web del tuo browser (in genere puoi aprirla premendo F12 e cliccando sull'apposita scheda "Console" ed eventualmente selezionando anche "JS" o "Script" che sia), se provi a cliccare sul tuo pulsante "carica dati", salterà fuori l'errore.
Seconda cosa, quello script non è del tutto cross-browser. Il metodo load non è supportato da Chrome e Safari, in tal caso dovresti usare l'oggetto XMLHttpRequest e i suoi relativi metodi.
Ad ogni modo, per avere una soluzione cross-browser, personalmente ti consiglierei l'uso di jQuery. Te lo sconsiglio se sei a digiuno, ma se ti interessa approfondire puoi sempre fare qualche ricerca, troverai sicuramente tantissimo materiale.
Terza ed ultima cosa, se usi Chrome e vuoi testare lo script in locale, per delle restrizioni di sicurezza non ti funzionerà. Normalmente ti darà un errore di lettura perché di default non può leggere file da locale. In tal caso, il problema può essere risolto impostando l'opzione --allow-file-access-from-files sul proprio browser.