InícioComplexidadeConheça a linguagem Logo

Conheça a linguagem 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 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. Mas em versões mais atuais, como o AF LOGO, podem ser muito mais abrangentes, trabalhando com textos, fórmulas e até IA (Inteligência Artificial), servindo como excelente ferramenta para o ensino regular.

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.

Gráfico produzido com um "tartaruga" Logo.
Gráfico produzido com um “tartaruga” Logo.

Código

A linguagem Logo é adaptada nos diversos países em que é utilizada. Assim, no Brasil, algumas versões da linguagem foram “traduzidas” em suas palavras-chave e comandos; já outras versões, como o AF LOGO, foram totalmente reescritas, possuindo um vasto dicionário, incluindo palavras e expressões novas, particulares do idioma português. O AF LOGO é considerado a mais completa linguagem LOGO, desenvolvida por um analista de sistemas autônomo da cidade de Nova Friburgo no estado do Rio de Janeiro, criada exclusivamente para a língua portuguesa, podendo ainda “entender” outros dialetos LOGO, como o Micromundos (Microworlds), MSWLogo, SuperLogo, etc. O AF Logo possui ainda módulos para aplicações em IA (Inteligência Artificial), manipulação de textos e fórmulas e cenários para aplicação da ferramenta em todas as matérias da grade curricular do ensino fundamental, médio e até universitário. Nos programas que foram simplesmente traduzidos por exemplo, “to” foi traduzido para “aprenda”, “forward” foi traduzido para “parafrente”, etc. Mas mesmo em português, o vocabulário limitado e inflexível se torna um empecilho para os alunos, pois ao contrário do inglês, no português temos muito mais variações de escrita e expressões para dizer a mesma coisa. No AF LOGO, o comando para mandar a Tartaruga andar para frente, pode ser escrito e é entendido com diversas grafias, ex: PARA FRENTE, PARA_FRENTE, PARAFRENTE, FRENTE, ANDE, ANDAR, ANDA, etc…

É 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 Hello World na tela:

print [Hello World!]

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

REPITA 4 [PF 350 PD 90]

Uma circunferência
O seguinte programa gera um circulo utilizando a tartaruga gráfica:

REPEAT 360 [PF 1 PD 1]

Ou ainda pode-se simplesmente digitar: “circle :t”, sendo :t um número qualquer, pois este será o tamanho do raio da sua circunferência.

360 [PF 0.5 PD 1]

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

PD 90 PF 100 PE 120 PF 100 PE 120 PF 100 PE 120

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

REPEAT 5 [PD 15 PF 100 PD 150 PF 100 PE 78]

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:

aprenda koch :tamanho :geração
se :geração = 0 [parafrente :tamanho pare]
koch :tamanho/3 :geração-1
paraesquerda 60
koch :tamanho/3 :geração-1
paradireita 120
koch :tamanho/3 :geração-1
paraesquerda 60
koch :tamanho/3 :geração-1
fim

Referências:

Por que Logo?

Academia da Tat (aprenda Logo gratuitamente)

Linguagem LOGO, Perspectiva Construtivista (computador como ferramenta)‎

A Brief History Of Logo (em inglês)

Fonte: Wikipedia

RELATED ARTICLES

2 COMENTÁRIOS

DEIXE UMA RESPOSTA

Por favor digite seu comentário!
Por favor, digite seu nome aqui

Most Popular

Recent Comments

Oscar Cardoso De Paula on Teoria da carga cognitiva
Nelson Drumond Carvalho on O que é socioconstrutivismo?
GASPERIM RAMALHO DE SOUZA on Sensibilidade complexa para educadores
Daniel Castro Cardoso on O que é Influência Social?
De Assis on O que é cognição?
Chancel Carvalho on Os teóricos neopiagetianos
Francisco Hudson Jeronimo da Silva on A neuropsicologia da memória
Antonio do Nascimento Lima on O que é teoria dos neurônios espelhos?
Antonio do Nascimento Lima on O que é teoria dos neurônios espelhos?
ELLEN RODRIGUES BARBOSA MELO on Teoria do Desenvolvimento Cognitivo de Jean Piaget
Alexandre Souza on O que é socioconstrutivismo?
alexsandro m. poprto on O que é socioconstrutivismo?
Anderson Vieira do Vale on O que é socioconstrutivismo?
Anderson Vieira do Vale on O que é socioconstrutivismo?
Kátia Cruz on Por uma pedagogia do amor
Letícia Rodrigues on Uma avaliação da Teoria de Piaget
JACQUELINE DOS SANTOS BATISTA on Teoria do Desenvolvimento Cognitivo de Jean Piaget
Cristiane Roja on Por uma pedagogia do amor
Rita de Cássia Moreira Braga de Oliveira on Teoria do Desenvolvimento Cognitivo de Lev Vygotsky
CILIANE PEREIRA RODRIGUES on O que é zona de desenvolvimento proximal?
Augusto Domingos dos Santos Silva on O que é cognição?
Alexandre Ferreira Sousa on Teoria triárquica da inteligência humana
Hélio Teixeira on Conheça o NetLogo
Hélio Teixeira on Conheça o NetLogo
Hélio Teixeira on Os teóricos neopiagetianos
Hélio Teixeira on Os teóricos neopiagetianos
Kátia Bularmaqui on Os teóricos neopiagetianos
Hélio Teixeira on Conheça o NetLogo
Bruno Pereira Masi on Conheça o NetLogo
Mauricio Gino on Privado: O porquê
Murilo Xavier on Privado: O porquê
Edu Kiojo on Privado: O porquê
Jean Ferri on Privado: O porquê