UCBLogo – Blog Software Livre na Educação
UBCLogo permite por recursão, o processo onde um procedimento chama a si mesmo. Na imagem, uma espiral produzida por um script recursivo.
Paradigma multiparadigma: funcional, educacional, procedural, reflexiva
Criado por Brian Harvey
Influenciou Smalltalk, Etoys, Scratch, NetLogo, KTurtle, REBOL
UCBLogo, também conhecido como Berkeley Logo, é bastante próximo de uma linguagem de programação Logo padrão, com suas facilidades para manipular listas, arquivos, entrada e saída e recursão em scripts1 , podendo ser utilizado para ensinar a maior parte dos conceitos científicos, como o professor Brian Harvey, da Universidade da Califórnia em Berkeley fez em sua trilogia Computer Science Logo Style2 .
A linguagem Logo foi projetada com o espírito de "piso baixo e teto alto", que possibilita acesso fácil aos novatos e atende às necessidades de usuários avançados. As animações exigem habilidades de desenhar e de apagar formas. O processo é o mesmo, exceto que naquela uma linha é registrada no visor e nesta uma linha é removida. Usando-se a analogia da tartaruga, a sua caneta precisa pintar e precisa apagar. A tartaruga pode ser configurada para apagar tudo abaixo dela, através do comando PENERASE (PE), enquanto a caneta pode ser configurada para começar a desenhar novamente com o comando PENPAINT (PPT).
FD 20 ; movimento de 20 passos à frente e traçado de uma linha reta
PENUP ; levantar a caneta, então ela não desenhará coisa alguma
FD 20 ; movimento de 20 passos à frente, sem traço
PENDOWN ; baixar a caneta, então ela desenha novamente
FD 40 ; movimentar, sem traçar
RT 20 ; girar 20 graus para a direita
Dois pontos (:) significa o conteúdo de. Esse é um símbolo extremamente útil que lembra aos estudantes que uma variável é realmente algum 'lugar' na memória.
Um número é um tipo especial de auto-avaliação: ele realmente pode ser escrito com uma aspa simples. 2 é realmente "2.
make recebe dois parâmetros, o segundo dos quais aqui é sum :y "3. sum recebe dois 'parâmetros' e é uma 'operação', por conseguinte, o cálculo é possível. "3 é avaliado para 3, e :y recebe os conteúdos da coisa chamada y, estas são somadas, devolvendo um número.
Comandos de controle de estrutura
Modelo de iteração
pprop :listname :name :value ;para adicionar um novo par à lista
remprop :listname :name :value ;para remover um par da lista
show gprop :listname :name  ;para obter o valor correspondente da lista
FD 100 RT 120 FD 100 RT 120 ; desenha um triângulo
EDALL ;(para entrar no modo edição, depois no procedimento atual)
Argumentos/parâmetros
help "keyword ;(trará uma descrição completa da expressão).
if  :size > 30 [stop] ; uma condição de saída
fd :size rt 15        ; muitas linhas de ação
Computer Science Logo Style, Brian Harvey, MIT Press (3 volumes) ISBN 0-262-58148-5, ISBN 0-262-58149-3, ISBN 0-262-58150-7. Disponível online