Pbrain é uma variante da linguagem de programação esotérica brainfuck. O diferencial entre as linguagens é o sistema de subrotinas em Pbrain.
Forma da Linguagem
O Pbrain acessa a memória da mesma forma que brainfuck: através de células de memória. Não existe um padrão de total de células ou de tamanho de cada célula. Na sua primeira versão, havia 65 536 células de memória, de 1 Byte cada.
As proceduras são numeradas da mesma forma que as células de memória. Se existirem n
células de memória, pode haver n
subrotinas. Da mesma forma, quando a célula de memória n
estiver selecionada, a subrotina n
também estará.
Comandos
Caractere | Função |
---|---|
> |
Acessa a célula de memória seguinte. |
< |
Acessa a célula de memória anterior. |
+ |
Aumenta em 1 o valor da célula de memória selecionada. |
- |
Diminui em 1 o valor da célula de memória selecionada. |
. |
Imprime na tela o caractere relativo à célula de memória selecionada. |
, |
Salva na célula de memória selecionada o código da próxima tecla clicada. |
[ |
Repete uma série de comandos enquanto a célula de memória selecionada for diferente de zero. |
] |
Retorna ao [ correspondente se a célula de memória selecionada for diferente de zero.
|
( |
Inicia a declaração de uma subrotina correspondente à célula de memória selecionada. |
) |
Finaliza a declaração de uma subrotina. |
: |
Executa a subrotina correspondente à célula de memória selecionada. |
Compatibilidade com brainfuck
Todos os códigos em brainfuck são 100% compatíveis com Pbrain, desde que não tenham (
, )
e :
como comentários.
Os códigos de Pbrain podem não ser compatíveis com brainfuck, pois os comandos (
, )
e :
são considerados comentários em brainfuck, e são ignorados.
Teste para verificar se é brainfuck ou Pbrain
+>(+)[-]:[[-] Pbrain [-]][-]+(-)[-]+:[[-] brainfuck [-]]
Ver também
Ligações externas
- Interpretador em C
- «The pbrain Programming Language» (em English)