O CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO ZIMBU
Por: Ziran Moura • 19/11/2017 • Trabalho acadêmico • 1.669 Palavras (7 Páginas) • 263 Visualizações
[pic 1] [pic 2][pic 3]
ZIMBU
Especificações da Linguagem
Maceió, AL 2016
ZIRAN DE MOURA SANTOS
ZIMBU
Especificações da Linguagem
Trabalho apresentado como requisito para obtenção parcial de nota da disciplina Conceitos de Linguagens de Programação, ministrada pelo Professor Alcino Dall Igna Júnior, do Curso de Bacharel em Ciência da Computação na Universidade Federal de Alagoas – UFAL.
Maceió – AL 2016
SUMÁRIO
1. Introdução 4
1.1 Critérios de Avaliação 4
1.1.1 Legibilidade 4
1.1.2 Escritabilidade 4
1.1.3 Confiabilidade 5
2. Nomes, Vinculações e Escopo 5
2.1 Nomes 5
2.2 Variáveis 5
2.3 Tipos 6
2.4 Vinculação 7
2.5 Verificação de Tipos 7
2.6 Escopo 7
2.7 Tempo de Vida 7
3. Tipos de Dados 7
3.1 Tipo de dados primitivos 7
3.1.1 Inteiros 8
3.1.2 Reais 8
3.1.3 Cadeia de Caracteres 8
3.2 Matrizes 8
3.3 Dicionários 8
REFERÊNCIAS 10
Introdução
Zimbu é uma linguagem de programação desenvolvida por Bram Moolenaar, em 2009, tem ênfase na legibilidade dos programas. Zimbu não impõe um estilo específico de programação, fica a escolha do programador a forma de utilizá-la. Podendo usar:
- Imperativa, como C: definição de procedimentos e estrutura de dados separadamente;
- Programação Orientada a Objetos, como Java: definindo classes que possuem os procedimentos e dados, herança e outros mecanismos para estimular reutilização de código.
- Programação Funcional, como LISP: suportando referências de funções e callbacks.
Critérios de Avaliação
Legibilidade
Muitas linguagens de estilo C contêm uma grande quantidade de pontuação. Não é fácil de saber onde está errado e também obscurece o núcleo do código. Zimbu acaba com a maior parte da pontuação. Usando chaves para começar e terminar um bloco.
FUNC myfunc(int a, int b) int
int result = 0
FOR i IN a TO b
result += i
}
RETURN result
}
Em Zimbu também é possível realmente dizer que uma variável só pode ser um objeto de uma classe e não uma classe filha.
Escritabilidade
Zimbu incentiva a usar uma instrução por linha. Em casos especiais, por exemplo, uma longa lista de linhas semelhantes, permite usar um ponto e vírgula para separar duas declarações, sendo uma linguagem de fácil escrita.
CASE 4; a = 3; b = 6
CASE 5; a = 4; b = 8
Confiabilidade
A confiabilidade dessa linguagem é relativa, pois em determinados casos há um minucioso tratamento de situações, mas como Zimbu é uma linguagem que verifica os tipos dinamicamente pode ocorrer pequenos erros e de difícil detecção.
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 |
...