Nascimento do blog
Ôpa, meu primeiro post. Que dificuldade para começar, mas finalmente tá aí. Hora faltava assunto, hora tempo, hora inspiração, hora tudo. Como o objetivo deste blog é exercitar a arte de escrever não espere argumentos infalíveis ou um português prodigioso logo de cara.
Então, para começar discutirei aqui uma questão realmente interessante: O que é um computador?
Nunca pensei que a pergunta acima seria tão difícil de responder. Acabei a graduação em Ciência da Computação e nunca tinha percebido a dificuldade de responder algo aparentemente tão óbvio. A questão é abordada em um artigo do Oron Shagrir (WHAT IS COMPUTER SCIENCE ABOUT?) que um professor do mestrado recomendou aos alunos.
Quando alguém fala “computador” a primeira coisa que vem à mente é uma máquina composta por um gabinete, um monitor e periféricos de entrada e saída (teclado, mouse, etc), um notebook ou algo assim. Mas você concorda comigo que celulares são também computadores, não é? E aquelas calculadoras de camelô que tocam musiquinhas e têm todo tipo de luzes e enfeites, são computadores? Com certeza. Um relógio digital é um computador? Sim, suas telas de cristal líquido são gerenciados por micro-controladores. E um relógio analógico? Humn… é aqui que a coisa começa a ficar boa
A palavra “analógico” te deixou em dúvida? Mas não fique. Existem computadores analógicos que, diga-se de passagem, são mais precisos que computadores digitais. Então o relógio analógico é um computador? Sim, ele “conta” quantas vezes o cristal (de silício?) vibrou e altera a posição do ponteiro.
Agora vejamos. Um conceito utilizado para definir computadores é que estes são sistemas físicos dinâmicos que implementam entidades formais, como a máquina de Turing.
Abrindo um (imenso)parênteses histórico. Turing foi um grande matemático que lutou para decifrar a criptografia da máquina Enigma (uma máquina fantástica!) criada pelos alemães para que seus inimigos não tivessem acesso a informações relevantes. A famosa máquina de Turing é uma máquina simples, composta por um braço que manipula uma lista infinita divida em “pequenos compartimentos” capazes de guardar apenas um bit ( 0 ou 1 ). Para entender a lista pense num braço de violão, imagine que cada traste é um desses “compartimentos” que falei. Pois bem, o braço dessa máquina só pode ler/escrever em um compartimento por vez. Como disse, uma máquina bastante simples, mas possui um imenso poder computacional. De fato, nenhum super computador de hoje é mais poderoso computacionalmente falando que a míngua máquina de Turing. Ele pode até terminar a tarefa antes, mas tudo que ele conseguir fazer ela também fará. E você ainda gasta milhares de reais num Intel,
Obviamente, como sua lista de memória é infinita a máquina de Turing é uma máquina hipotética.
Voltando. Se computadores são sistemas físicos dinâmicos, o quê os diferencia de outros sistemas físicos dinâmicos? Qual a diferença de um computador para o sistema solar ou o sistema digestivo? Esse negócio tá ficando meio metafísico não tá não? Mas é assim mesmo.
Por exemplo, imagine uma sala A que pertence a um sistema fechado.
A sala A é divida (colocando-se paredes, por exemplo) em 3 subsalas, A1, A2 e A3. A temperatura de cada uma dessas subsalas é definida como mostra a figura.
Então a parede entre as salas A1 e A2 é retirada. Como as temperaturas das salas são diferentes, o sistema depois de um certo tempo entrará em equilíbrio, isto é, a temperatura estabilizará.
Depois, é retirada a segunda parede, e o sistema gasta novamente um tempo até entrar em equilíbrio.
Mas o que é a temperatura resultante? Isso mesmo, a média das temperaturas iniciais. Ou seja, usamos a termodinâmica para calcular!!! E através de passos!!, pois retiramos uma parede de cada vez! Isso é o mesmo que um computador digital faz!
E agora? Se a definição de computador é que ele é um sistema físico que calcula, então a termodinâmica também é um computador? E se a termodinâmica é um computador então qualquer sistema que “implemente” a termodinâmica (até um furacão!) será um computador?
É possível que em um dado momento uma parede de tijos esteja implementando um Microsoft Word! Isso é um absurdo, não? Mas parece ser verdade. Portanto, se você usar a definição para computador de que ele é uma máquina que consome dados de entrada e processa um resultado de saída então sua definição está insuficiente, já que a termodinâmica (e deversos outros sitemas físicos) se enquadram nessa definição.
Mas afinal, diga-me sem rodeios, sem prosopopéias flácidas, tão rápido quanto a fusão do Ligeirinho com o Papa-Léguas e o Coelho Ricochete (ó rede Manchete, que saudade): o que é um computador?
A resposta já foi dada. São sistemas físicos dinâmicos. O que os diferenciam de outros sistemas físicos é que seus estados (porque a computação nada mais é do que mudança de estados, pense nas salas) são individualmente tipados antes da definição do domínio e das suas propriedades. É possível criar uma máquina de estados do computador e definir formalmente esses estados. Não entendeu? Eu não consigo explicar melhor, na realidade nem sei se entendi direito. O artigo é em inglês e tem umas palavras que tão osso de contextualizar
Vamos tentar de novo. Voltemos ao caso das salas. A termodinâmica executa um algoritmo (conjunto de passos) para “calcular” a temperatura final da sala, que será a média das temperaturas iniciais de cada sala. Mas você não pode definir que o algoritmo da termodinâmica fará qualquer outro cálculo. Não há mudanças na semântica aqui. O sistema sempre “calculará” a média dos valores das temperaturas e nada mais. Não estou querendo dizer desse modo que um relógio não pode ser considerado computador porque sempre fará o mesmo cálculo, quero dizer outra coisa. Eu poderia construir uma máquina de estados para o sistema termodinâmico (assim como construo para o computador), mas seus estados são definidos pela própria propriedade física, eles dependem dessa propriedade física, o que não acontece com os computadores.
Nos computadores a máquina de estados vem antes do conteúdo. É esse o pulo do gato!
Primeiro eu defino a máquina de estados sem necessitar de qualquer outra informação, porque ela é um sistema formal em si mesma e daí em diante posso usá-la para o que eu quiser, inclusive com mudança de semântica dos valores de saída.
Agora ficou fácil de entender não é? É, eu sei que não é fácil. Mas é bem legal depois que você entende (se é que eu entendi mesmo, senão estou me iludindo… a ignorância é uma benção). Sem contar que você pode até tirar onda com essa informação. Se bem que quando você estiver no meio da explicação as pessoas ao seu redor já estarão conversando sobre o milésimo gol do Romário, se fulano merecia ter ganhado o Big Brother ou porquê “já” significa “agora” e “já, já” significa “daqui a pouco”. E não diga que não avisei, sou mestre nisso
Sem mais no momento.
[ ]’s
falow…




Primeiros a comentar , que honra!!
É madrugada agora e confesso que li o texto apenas superficialmente, mas me pareceu interessante, depois faço um comentário pertinente ao post, este comentário aqui é só pra te desejar sucesso no seu blog e pode ter certeza que pelo menos um leitor assíduo você terá…
Abraço.