Javascript: TypeError não capturado: Não é possível chamar o método 'addEventListener' de null

Estou tentando fazer algo bastante simples, mas pelo motivo de eu provavelmente não ser bom o suficiente para pesquisar na documentação, não consigo fazer isso funcionar.

Eu tenho um JS embutido em funcionamento que se parece com isso:

<A title="Wolfram IP Calc" href="javascript:txt=prompt('Enter%20IP%20address,%20e.g.%2010.20.30.40/29','1.2.3.4/5');%20if(txt)%20window.open('http://www.wolframalpha.com/input/?i='+txt);void(O);">Compute!</A>

Por várias razões, estou tentando separar o JS, e é aqui que encontro um problem

Eu criei a seguinte página de teste que me dá o erroUncaught TypeError: Cannot call method 'addEventListener' of null:

<HTML> <HEAD profile="http://www.w3.org/2005/10/profile"> <script type="text/javascript">
var compute = document.getElementById('compute');
compute.addEventListener('click', computeThatThing, false);

function computeThatThing() {
    txt=prompt('Enter%20IP%20address,%20e.g.%2010.20.30.40/29','1.2.3.4/5');
    if(txt) {
        window.open('http://www.wolframalpha.com/input/?i='+txt);
    }
}
</script></HEAD>
<BODY>
<A title="Wolfram IP Calc" id="compute" href="javascript:void(O);">Test</A>
</BODY>
</HTML>

A única coisa que consegui descobrir que aponta para um problema como esse é queaddEventListener não pode trabalhar com<A> mas deve lidar com<IMG> (o que me agrada muito, pois vou espalhar isso em algumas imagens), então tentei adicionar o seguinte sem sucesso:

<img id="compute" src="http://products.wolframalpha.com/images/products/products-wa.png" />

Agradecemos antecipadamente por apontar o que estou fazendo de errado. Provavelmente é óbvio, mas tenho quase zero de experiência com JS e passei principalmente pelo cultivo de carga quando precisei até agor

questionAnswers(4)

yourAnswerToTheQuestion