O CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO ZIMBU
Por: Lidieisa • 13/12/2018 • 1.244 Palavras (5 Páginas) • 327 Visualizações
...
-
Nomes, Vinculações e Escopo
-
Nomes
A linguagem é case-sensitive. Os nomes das variáveis começam sempre com uma letra maiúscula, exceto em uma classe não compartilhada onde os nomes das variáveis começam com um ‘$’ seguido de uma letra maiúscula. Nomes de métodos pré-definidos começam com uma letra maiúscula, já nomes de tipos pré-definidos começam com letra minúscula.
Não se pode usar nomes que são reservados para a própria linguagem e para construído em bibliotecas. Todas as palavras feitas de letras maiúsculas, sublinhados (‘_’) e dígitos são reservados. Quando há, pelo menos, uma letra minúscula a palavra não está reservada. Nomes não podem ter dois sublinhados seguidos.
Zimbu é uma linguagem nova, logo é provável que se precise de novas palavras-chaves com o decorrer do tempo, como não se quer que o qualquer programa já existente seja “quebrado” é impossível inserir uma nova palavra-chave que já é utilizada pelo programa. Logo, existem formas de criar novas palavras-chaves que não interfiram com nomes já utilizados pelos usuários.
-
Variáveis
As variáveis podem ser declaradas nesses âmbitos:
- Dentro de um método. A variável fica, então, disponível para uso até o fim do bloco de declaração. Ela não pode ser usada antes da declaração.
- No escopo de uma classe, com um ‘$’ anexado ao nome. A variável torna-se um membro da classe e pode ser usada antes de sua declaração.
- Dentro de um módulo. A variável torna-se um membro do módulo e também pode ser usada antes de sua declaração.
- Dentro de uma seção compartilhada em uma classe. A variável torna-se um membro da classe e também pode ser usada antes de sua declaração.
- No arquivo principal do programa. Ela pode ser usada no arquivo, também antes de sua declaração.
- Não é permitido declarar uma variável com o mesmo nome de um método.
-
Tipos
Zimbu possui alguns tipos pré-definidos:
bool
booleano: VERDADEIRO ou FALSO
status
OK or FAIL
int int8 int16 int32
Número inteiro
nat byte nat16 nat32
Número natura (inteiro sem sinal)
float, float32
Número real (ponto flutuante)
string
Sequência de caracteres
byteString
Sequência de bytes
varString
Sequência de variáveis mutável
varByteString
Sequência de bytes mutável
regex
Expressão regular (correspondência de padrão)
array
Array de itens
list
Lista de itens
sortedList
Lista de items ordenada
dict
Dicionário de itens
multiDict
Dicionário de itens com chaves duplicadas
set
Conjunto de itens
pipe
Transporta itens de um lugar para outro
thread
multi-threading
evalThread
Avaliação de expressão de uma thread
lock
Bloqueio para acesso exclusivo
autoLock
Bloqueio com liberação automática
cond
Condição para esperar
tuple
Itens de tipos específico
dyn
Qualquer valor ou referência, dinamicamente tipado
-
Vinculação
Zimbu vincula um tipo dinamicamente, ou seja, a variável será do tipo da atribuição e este tipo pode variar durante a execução do programa. As “declarações” das variáveis são implícitas.
-
Verificação de Tipos
A verificação de tipos é dinâmica, pois o tipo da variável é definido em tempo de execução e pode ser alterado na execução do programa. A linguagem é fracamente tipada, pois ocorre alguns erros de tipo.
-
Escopo
As variáveis em Zimbu só existem dentro dos blocos de comando onde foram criadas, incluindo os aninhados, mas não fora dele. De modo que, se forem acessadas fora do seu escopo elas não são visíveis. Exemplo: se a variável foi declarada em um laço, ela só estará disponível dentro do bloco de comando do mesmo, se o uso dela for preciso em outro lugar é necessário declarar a variável explicitamente com o uso de palavras-chave.
-
Tempo de Vida
O
...