Um programa e uma lista bastante organizada de instrucoes codificadas (comandos de linguagens de programacao) cuja finalidade consiste em fazer com que um ou mais processadores executem determinada tarefa (Levy, 1999, pag. 41). Os servicos mais sofisticados existentes hoje tem geralmente uma arquitetura de software conhecida como "cliente-servidor". Nesta arquitetura o usuario final da Internet interage com um programa, cliente de um determinado servico desejado e, atraves dele, solicita o atendimento de requisicoes especificas. O cliente, por sua vez, se comunica com um servidor, remoto ou nao, a quem cabe o atendimento das solicitacoes do usuario final, como a busca de um determinado documento. O servidor conectado eventualmente se comunica com outros servidores dispersos geograficamente na tentativa de atender uma solicitacao encaminhada pelo cliente. Em caso de sucesso, o servidor retorna informacoes codificadas e cabe ao cliente apresenta-las numa forma apropriada e compreensivel ao usuario final. Se o servidor nao e capaz de obter o documento solicitado, o cliente e informado sobre o motivo que impossibilitou tal atendimento e cabe ao mesmo cliente o tratamento dessa falha, como notifica-la ao usuario e, em alguns casos, instrui-lo sobre como proceder para alcancar um resultado positivo. Um servico integrador de diversos recursos denomina-se W3 (World-Wide Web). Ele permite ao usuario final manipular hipertextos, tambem chamados hiperdocumentos potencialmente distribuidos em computadores dispersos geograficamente. Como ja dissemos, e possivel mesclar em nos de um hipertexto (tambem conhecidos por "paginas" Web) textos, imagens individuais, sequencias de imagens (video clips) e fragmentos sonoros. Um elemento desta natureza, ou parte dele, pode servir de ancora ("base" ou "origem" de um nexo (link) que, quando selecionada, dispara a busca do documento referenciado) de outro. A selecao de uma ancora por parte do usuario final provoca a busca do elemento referenciado pelo nexo que tem sua origem em tal ancora. Este mecanismo permite criar diversas formas de navegacao pelo material contido em um hipertexto (texto para texto, texto para imagem, imagem para texto, ...). Uma ancora tambem pode referenciar um programa no servidor. Tal programa e acionado quando o usuario seleciona a ancora em questao. Atraves deste recurso e possivel produzir informacoes personalizadas e atuais deduzidas de dados mantidos no servidor no instante daquela selecao. Exemplificando, um professor deseja saber exatamente quais e quantos sao os alunos matriculados na turma pela qual e responsavel. Suponhamos que tais dados se encontrem em uma base de dados mantida pelo registro academico. Neste caso, um nexo poderia apontar para um programa que, ao ser acionado, consulta a base de dados e constroi um documento no formato adequado para ser apresentado ao professor. Se tal professor fizer novamente uma consulta, como a primeira, alguns dias depois e se, no intervalo entre a primeira e a segunda consultas, alguns alunos cancelaram a sua matricula, entao o programa acionado pela selecao do professor recupera a informacao corrente na base de dados que e a mais atual possivel e a envia para o professor no formato adequado. Recentes progressos na tecnologia do servico W3 tambem permitem agregar a "paginas" um programa a ser executado pelo cliente (ou mesmo