BIOLOGIA: UM VÍRUS É UM PARASITA
Um vírus é um reles pedaço de molécula, é menos do que uma célula. Segundo a maioria absoluta das definições, não constitui um ser vivo, não é sequer uma bactéria. Seu diâmetro é da ordem de nanômetros (10-9m): um ser humano é, em média, 10 milhões de vezes maior do que cada um deles. Se um vírus fosse do tamanho de uma bola de tênis, um ser humano teria uma altura aproximada de 800 km.
Vírus não são seres vivos porque não se alimentam, não respiram, não se locomovem, não se reproduzem sozinhos: precisam de um hospedeiro para nele se alojar. São minúsculos oportunistas, misteriosos, invisíveis, solertes, traiçoeiros, dissimulados, ínfimos, mas podem ser fatais. Ao capturarem o hospedeiro que os viabilizam como seres vivos, não colaboram com ele, mas sim o corrompem, submetem-no a seus desígnios, agindo como verdadeiros parasitas.
Em momentos de crise como a que vivemos, a dimensão trágica das epidemias e/ou pandemias pode sublinhar possíveis lições epistemológicas ou filosóficas associadas aos processos virais, mas não pode mitigar minimamente a lição maior: vírus não colaboram, parasitam, corrompem, servem-se do outro de maneira predatória.
Nas relações humanas, não nos completamos sem o outro, mas colaborar, cooperar, partilhar projetos e valores são instâncias decisivas, muito distintas dos processos virais. Encontros entre seres humanos em que um dos lados não apresenta as marcas de um ser vivo, em que o completamento do invasor é absolutamente oportunista são doentios, são geradores de endemias. Na vida em sociedade, a existência de parasitas oportunistas, que submetem as configurações do hospedeiro aos desígnios viróticos é a maior das pragas a ser evitada.
*******
O VÍRUS NA BIOLOGIA E O VÍRUS DE COMPUTADOR
O vírus na Biologia é um elemento oportunista que não tem vida própria, invadindo um ser vivo, o hospedeiro, que é absolutamente corrompido em sua natureza e passa a servir aos desígnios viróticos. Um vírus de computador não é um programa, mas invade programas em funcionamento, corrompendo a execução da tarefa que previsivelmente realizava. No que segue, vamos tentar explicitar a relação entre as duas acepções, que praticamente torna uma delas uma metáfora da outra.
Ao longo do período industrial, uma máquina é um instrumento que transforma energia de um tipo em outro: energia elétrica em mecânica, mecânica em elétrica, térmica em mecânica, química em elétrica, e assim por diante. Um computador é uma máquina em sentido distinto do período industrial: ele opera transformando mensagens. A mensagem de entrada é introduzida por um programador; ela traduz em linguagem de máquina algum tipo de questão. Após as operações realizadas, obtemos uma mensagem de saída que, adequadamente interpretada, nos informa sobre a questão inicialmente proposta. A mensagem de entrada é a tradução na linguagem formal da máquina de uma questão expressa na linguagem corrente. Traduzir a linguagem ordinária para a linguagem da máquina é uma tarefa realizada por um programador, que precisa decompor o significado da questão em etapas simples, binárias, logicamente encadeadas, compondo o que se chama um algoritmo. Existem diferenças fundamentais entre a linguagem ordinária e a linguagem na qual a mensagem será introduzida no computador. A língua nossa de cada dia é ambígua, imprecisa, rica em conotações, aberta a múltiplas interpretações. A linguagem a ser utilizada pelo programador, por sua vez, deve ser precisa, sem ambiguidade ou conotações. Programar um computador significa traduzir uma questão expressa na linguagem ordinária em uma sequência de comandos encadeados logicamente. Cada comando a ser executado deve resultar de uma escolha entre duas possíveis, e somente duas, em cada passo. Em outras palavras, a linguagem da programação é binária; em cada passo a dúvida no encadeamento é a correspondente a uma escolha do tipo Sim ou Não, Zero ou Um, Verdadeiro ou Falso, e assim por diante. Um programa bem construído não deixa espaço, em seus degraus de comando, para uma terceira possibilidade, não pode permitir aberturas ou interpretações que extrapolem escolhas binárias prefiguradas.
Ocorre que a linguagem ordinária, a língua nossa de cada dia não é binária, mas sim multivariada, o que revela, ao mesmo tempo, riqueza para os apreciadores da língua, e imprecisão para os que buscam a rigidez e a assepsia da linguagem de programação. Se afirmo que “Tudo o que é barato é raro, tudo o que é raro é caro, logo, tudo o que é barato é caro”, então temos uma brincadeira que pode ser interessante como piada, mas que é irrelevante do ponto de vista lógico.
De modo geral, a ciência costuma fundar-se na linguagem binária da lógica, desprezando as curiosas aberturas proporcionadas pela polissemia da linguagem ordinária. Apesar de se tratar de fato científico a impossibilidade da redução a um algoritmo, ou seja, a uma sequência estruturada de pequenas tarefas binárias, na programação de computadores, uma suposição presunçosa é a da possibilidade de tradução de qualquer questão da linguagem ordinária nas estruturas da lógica binária. Um programa bem construído não pode deixar espaço para tergiversações na passagem de uma linha da programação para a linha seguinte. Tal presunção, naturalmente, pode falhar, aqui ou ali, e é justamente aí que reside a possibilidade da criação de um vírus de computador.
De fato, um programador competente, que sabe explorar as ambiguidades e a riqueza da linguagem ordinária, pode ser capaz de reconhecer, em dada etapa da linguagem de programação, uma sutil abertura na presunção binária, vislumbrando a possibilidade de inserir um comando alternativo em um local em que o par binário V ou F não seja suficiente para conter o significado da questão proposta. Um tal comando pode provocar, então, um desvio, remetendo a sequência de comandos para outros caminhos, dali para a frente. O pequeno comando alternativo não constitui um programa, tanto quanto um vírus não é uma célula, mas associado ao programa original passa a constituir um novo programa, que pode ser devastador no que respeita às intenções do programa original. O comando associado a tal pequeno desvio é chamado de vírus de computador, justamente em decorrência de sua similaridade com a corrupção de um programa biológico que um vírus stricto sensu representa.
A criação de um vírus de computador é considerada uma prova de competência do programador, que mantém um consciência plena da complexidade da linguagem ordinária, sendo capaz de reconhecer sua riqueza, ou a impossibilidade de redução da formulação de qualquer tarefa no formato de uma sequência micro tarefas binárias, ou seja, a redução de qualquer tarefa a um algoritmo. Uma prova disso é o fato de que, em alguns cursos de ciências da computação, para concluir o curso e mostrar que está formado, um aluno precisa demonstrar que é capaz de criar um vírus pra chamar de seu…
*****nílsonjosémachado 28-04-2020
No comment