Rotinas, Parâmetros e Funções
A sintaxe básica para declaração de uma rotina é a seguinte:
Rotina para que se
<nome da rotina>
:
O nome da rotina começa após o "se".
Parâmetros são indicados pelos artigos indefinidos:
um
uns
uma
umas
Exemplos:
Rotina para que se
adicione
uma
cor
e
um
rótulo
para
um
menu:
Nome da rotina: adicione
Parâmetros: cor, rótulo, menu
Preposições e conjunções: e, para.
Rotina para que se
crie
uma
imagem
usando
uma
URL:
Nome da rotina: crie
Parâmetros: imagem, URL
Preposições e conjunções: usando
As preposições e conjunções embora não façam parte do nome da rotina, devem ser utilizadas de forma similar ao declarado. A 1ª rotina acima pode ser chamada de forma similar ao exemplo abaixo:
A 2ª rotina, por exemplo poderia ser chamada das seguintes formas:
Perceba que a linguagem suporta:
Contrações em geral*
à -> para a
ao -> para o
deste -> de este
destes -> de estes
desta -> de estas
destas -> de estas
desta -> de esta
na -> em a
nas -> em as
no -> em o
nos -> em os
num -> em um
nuns -> em uns
numa -> em uma
numas -> em umas
pelo -> por o
pelos -> por os
pela -> por a
pelas -> por as
Sinônimos (para as preposições).
com / contendo / dado / desde / usando
em / para / por
Para um melhor entendimento da linguagem iremos converter a função Javascript abaixo para Português Puro:
Dados da função
Nome: FazAlgumaCoisa.
Parâmetros: numero.
Variáveis locais: contador.
Número de linhas: 12*
*sendo que destas 12 linhas, 4 são inteiramente desperdiçadas com colchetes e espaços em branco
A rotina acima ficaria assim:
Para que se faça alguma coisa com um número:
Se o número for menor do que 0, retorne.
Atribua o número vezes 2 para um contador.
Itere.
Adicione 1 para o contador.
Se o contador for maior do que 10, pare.
Reitere.
Dados da rotina
Nome: Faça alguma coisa
Parâmetros: número
Variáveis locais: contador.
Número de linhas: 7
Perceba que ao invés da keyword function nós utilizamos para que se (o termo "Rotina" é opcional).
Perceba que o parâmetros "número" bem como a variável local "contador" foram referenciados com um artigo definido após serem introduzidas no código pela 1ª vez com um artigo indefinido.
Funções de retorno booleano
A linguagem trabalha com o conceito de "funções deliberativas".
Para criar uma função decisória a sintaxe utilize a seguinte sintaxe:
Para que se determine se um número é negativo:
Se o número for menor do que 0, diga sim.
\ Caso contrário
Diga não.
"Diga sim" equivale a um "return true" e "Diga não" é o equivalente de "return false".
As funções deliberativas costumam ser utilizadas dentro de declarações condicionais.
Por exemplo:
Se o número
for
negativo, retorne.
Os verbos ser/estar (e suas respectivas conjugações) são tratados como sinônimos pelo compilador.
Regras gerais para nomes de rotinas e funções
O nome da rotina começa após o "para que se" (ou após o "para que se determine se" no caso de funções deliberativas).
Artigos indefinidos indicam um novo parâmetro. Exemplos:
um número,
uns vértices,
uma string,
umas formas
Parênteses podem ser utilizados para "escapar" strings, parâmetros ou indicar rotinas de um mesmo grupo. Exemplo:
Rotina para que se execute um evento (clique - botão direito):
Rotina para que se execute um evento (clique - botão esquerdo):
Rotina para que se execute um evento (clique duplo):
Rotina para que se execute um evento (atualização de tela):
Preposições e artigos definidos são permitidos nos nomes das rotinas (porém não exercem nenhuma função especial além de tornar o nome da função mais inteligível). Exemplos:
Rotina para que se execute o programa:
Rotina para que se ajuste a caixa de diálogo:
Rotina para que se adicione um botão para a caixa de diálogo usando uma string:
Perceba nas rotinas logo acima que os artigos definidos não indicam um parâmetro.
Atualizado