Obs: Muito bom. Em algumas linguagens, inteiros não possuem o valor máximo. Assim, pode-se somar inteiros à vontade que se for necessário memória será alocada para guardar o resultado. Quanto a somar dois números e obter um valor de um tipo diferente, isto já é feito quando chamamos uma função qualquer como float calc(int x, int y) Os operadores aritméticos funcionam como funções. A seguinte frase, extraída do texto abaixo, foi responsável por grande parte da nota: quando duas esferas maciças se chocam ocorre transferência de energia entre elas, que em nossa linguagem pode ser interpretada como transferência de informação. Nota: 1,0 Nome: Daniel Kawakami R.A.: 18896-4 Turma: B Linguagem Interativa Na linguagem interativa, todos os elementos podem ser utilizados por meio de interações. As interações podem ocorrer com qualquer número de elementos resultando em outros elementos ou até mesmo outros tipos de interações. Assim como nas leis da física, dois elementos podem interagir transferindo informações (força, velocidade e energia) de um elemento para o outro. Por exemplo, pelas leis da física quando duas esferas maciças se chocam ocorre transferência de energia entre elas, que em nossa linguagem pode ser interpretada como transferência de informação. Ainda nesse exemplo, tal interação confere a um ou mais dos elementos envolvidos uma reação ou um comportamento específico. Nesse caso, na colisão das esferas reagem mudando a trajetória de movimentação (direção e sentido). Por analogia nossa linguagem poderá suportar, do mesmo modo, comportamentos (conjunto de ações) dos elementos após a interação. Além disso, a interação também pode gerar outros elementos com características totalmente diferentes. Por exemplo, se existissem dois elementos A e B, definidos de tal forma que simulasse um int da linguagem c (como se sabe o tipo “int” na linguagem c++ é restringido por um valor máximo) e suponhamos que a soma de A e B ultrapassem o valor máximo do tipo int. Tal operação poderá gerar inconsistências durante a execução. Uma operação desse tipo na linguagem interativa se faz por meio de interação de tal forma que o resultado não precisa ser necessariamente do mesmo “tipo” dos elementos envolvidos (A e B). Nesse caso poderá ser gerada uma estrutura de armazenamento diferente e que resolva esse problema. Seria algo similar com A+B = C, onde A e B são int e C é long int. Tal fato confere a linguagem uma flexibilidade extremamente grande. O princípio acima é baseado nas reações químicas em que dois ou mais elementos são combinados gerando um novo elemento com características bastante diferentes. Por exemplo, a combinação de combustível, comburente e calor inicial gera fogo. Nesse caso, existe a combinação de três elementos totalmente distintos que geram um quarto elemento com propriedades completamente diferentes. A representação desse exemplo na linguagem seria o seguinte: (reação combustível comburente calor) onde a expressão é delimitada por parêntesis e o primeiro termo faz referência à interação e os demais se referem aos elementos envolvidos na interação. É importante notar que as interações que geraram novos elementos podem ser utilizadas por outras interações. Por exemplo: (jogar água (reação combustível comburente calor)) Como na linguagem os parêntesis mais internos tem maior precedência sobre os mais externos, (reação combustível comburente calor) é analisada primeiro. Com isso, a expressão pode ser simplificada em: (jogar água fogo)