# Logo

Em informática, Logo é uma linguagem de programação interpretada, voltada para crianças, jovens e até adultos. É utilizada com grande sucesso como ferramenta de apoio ao ensino regular e por aprendizes em programação de computadores. Ela implementa, em certos aspectos, a filosofia construcionista, segundo a interpretação de Seymour Papert, co-criador da linguagem junto com Cynthia Solomon e Wally Feurzeig.
Papert, matemático que trabalhou com Jean Piaget (donde a ideia da filosofia construtivista), é co-fundador do Media Lab no Massachusetts Institute of Technology (MIT).
O ambiente Logo tradicional envolve uma tartaruga gráfica, um robô pronto para responder aos comandos do usuário. Uma vez que a linguagem é interpretada e interativa, o resultado é mostrado imediatamente após digitar-se o comando – incentivando o aprendizado. Nela, o aluno aprende com seus erros. Aprende vivenciando e tendo que repassar este conhecimento para o LOGO. Se algo está errado em seu raciocínio, isto é claramente percebido e demonstrado na tela, fazendo com que o aluno pense sobre o que poderia estar errado e tente, a partir dos erros vistos, encontrar soluções corretas para os problemas. A maioria dos comandos, pelo menos nas versões mais antigas, refere-se a desenhar e pintar.
Existem também comandos para se controlar a porta paralela do computador, fazendo com que seus pinos de I/O's (Input/Output - Entrada/Saída) adquiram níveis lógicos 0 ou 1, o que permite à escola ou instituição facilmente desenvolver projetos de robótica utilizando o LOGO, que pode passar a controlar robôs e mecanismos de desenho, gerando uma interação entre o conhecimento adquirido e demonstrado e o "mundo físico", entre outras coisas.

## Código

A linguagem Logo é adaptada nos diversos ambientes e contextos da qual visa ser utilizada. Por exemplo, no ambiente XLogo há versões com as keywords traduzidas para português.
É possível escrever programas mais complexos não-interativamente, executando blocos de instruções de uma vez.
As instruções podem ser compreendidas em diferentes línguas e a linguagem é de fácil aprendizagem. Uma sequência de instruções pode ser estudada em diferentes blogs. Logo é bastante flexível, possibilita código recursivo e permite trabalhar em forma de módulos, adicionando sucessivas partes a um pequeno núcleo inicial.

### Um Simples Hello World

O seguinte programa imprime uma mensagem na tela (Observe que os comandos usados podem sofrer variações entre várias versões do LOGO):

### Um quadrado

O seguinte programa faz a tartaruga gráfica desenhar um quadrado:

### Uma circunferência

O seguinte programa gera um circulo utilizando a tartaruga gráfica:

### Um triângulo equilátero

O seguinte programa faz a tartaruga gráfica desenhar um triângulo equilátero:

### Uma estrela

O seguinte programa faz a tartaruga gráfica desenhar uma estrela:

### Fractal

A linguagem Logo facilita a geração de fractais, por ser voltada para desenho e interpretar códigos recursivos.
Exemplo para a geração da Curva de Koch, usando o ambiente XLogo:

## Uso no ensino de Matemática

Por ser uma linguagem de programação criada para o ambiente escolar com o objetivo de ensinar programação na educação básica, o Logo permite uma fácil compreensão por parte dos alunos. Além disso, o uso do software não exige o domínio da matemática, o que facilita o acesso de principiantes.
A interação com o Logo pode contribuir na construção de conceitos matemáticos de forma intuitiva, onde os alunos e seus professores podem beneficiar-se das possibilidades de estabelecimento de relações que o Logo oportuniza.