sábado, 21 de novembro de 2009

Em busca de uma base para começar o código

Todos nós sabemos que o computador não quântico só conhece zeros e uns.
A primeira linguagem de computação do mundo era só zeros e uns. Depois passou a ser menomónicas da linguagem máquina, a chamada linguagem Assembly. Na altura a arquitectura era CISC (complex instruction set computer), é mais complicada de programar do que a RISC (reduced instruction set computer) da maioria dos computadores actuais. Os comandos realizados pelo processador são sempre limitados.
Actualmente programa-se quase sempre em linguagem de alto nível que são ainda mais fáceis como o C, Fortran, Java...
Também nós sabemos que a matéria do universo é energia, e que essas “nuvens” de energia de cada átomo ocupam um espaço. Ora porque é que não se havia criar um esquema parecido com base na existência ou não de vultos de energia assim como se fez com os bits do computador?
Na realidade estamos caminhando para computadores quânticos que guardam qubits (o bit quântico) átomo a átomo, mas o mesmo não se pode dizer de níveis inferiores.
Será que só é possível sabendo as propriedades de um vulto de energia, e a relação entre dois vultos de energia?
Se calhar teremos de atacar o problema de outra forma?
Nada diz que seja impossível, mas são coisas pequeníssimas que facilmente são afectadas pelo ambiente em redor.
O nível quântico está cheio de comportamentos aleatórios o que irá dificultar tudo.
Para além das actividades experimentais é preciso prever, avaliar e conseguir montar.
Será que super-computadores poderão ser os instrumentos indicados quer para detectar esses inumeráveis vultos de energia de um átomo e quem sabe poderão construir o código fonte (de baixo e alto nível) de um átomo e construir fórmulas matemáticas com base em relações? Tudo isso seria óptimo como muitos algoritmos, mas será realizável como esses algoritmos ou não? Temos de perceber os limites dos computadores e do mundo físico. Existe por exemplo um teorema para programas dos computadores, mas não programas do mundo físico que diz: "Não é possível determinar através de um algoritmo (mais concretamente, através de uma máquina de Turing) se uma fórmula em L é válida ou não. Formalmente, este problema diz-se indefinível.". Temos de distinguir programas do mundo físico dos do mundo virtual, sendo que suas funções deveriam na minha opinião ser diferentes e separadas (como a ideia daquele homem que separou os programas dos ficheiros onde se guardam outros dados sem ser programas); embora pudessem comunicar e resultarem em híbridos ou códigos híbridos.
Mas só isto não é suficiente. Tem-se de arranjar artifícios de construção de código; para que os comportamentos aleatórios não nos impeça de lidar com a estrutura e que condiga com aquilo que queremos. É isso o que os físicos procuram, uma maneira de tornar as coisas mais previsíveis.
Não se está a falar só de computadores quânticos, mas de todas as máquinas produzidas por eles.
Deve-se começar com um número limitado de comandos. Esses comandos são a base; mas poderá-se usar-los através de outros, quando se quer traduzir de um nível alto para um mais baixo.
A física actual é difícil de aprender para a maior parte dos alunos do secundário (claro que não aprendem quântica), mas mesmo a clássica é um começo a pegar. Será que se pode estabelecer um código para facilitar isto tudo?
Tudo isto é maravilhoso, só que a informática tem de evoluir muito mais do que aquilo que é hoje.
Há uma questão importante: até que ponto pode-se definir tudo como estados? Poderia-se construir n e mais n diagramas de estados do UML(linguagem de modelação unificada, trata-se de um linguagem que serve para especificar sistemas, sendo que os programadores ficam assim ou de outras formas sabendo o que o cliente quer), acerca do mundo físico, típicas de uma disciplina como análise e modelação de sistemas de um curso de informática? Em informática ninguém faz diagramas de estados UML que envolvam tudo de um programa em Assembly. A documentação ficaria demasiado pesadíssima. Isso só serve para determinados casos em programação de alto-nível. Possas! Este parágrafo conseguiu ser técnico.

Licença GPL

Sem comentários:

Enviar um comentário