NATURAL
NATURAL é uma linguagem de programação de Quarta Geração, uma geração após o Cobol, desenvolvida e distribuída pela Software AG no Brasil. É considerada Quarta Geração por trazer diversos comandos de controle automático do fluxo do programa, além de editor de tela de fácil uso, programação de eventos, dentre outras funcionalidades. É formado por dois componentes principais: o Sistema e a Linguagem. O sistema é o veículo central de comunicação entre o usuário e todos os outros componentes do ambiente de processamento. As várias versões existentes permitem sua instalação em diversos equipamentos e sistemas operacionais. A linguagem é estruturada e menos procedural que as linguagens convencionais. Os objetos Natural (programas, mapas, áreas de dados, etc.) são armazenados em bibliotecas (“Libraries”), com estrutura parecida com o diretório DOS e podem ter 8 caracteres como nome máximo. Mesmo sendo objetos de diferentes tipos, não podem possuir o mesmo nome. Permite execução on-line e batch e utilitário de testes de programação. NATURAL possui versões para MVS, UNIX, OS/2 e Windows. Pertence ao Paradigma Imperativo onde é utilizada a Programação imperativa, para saber mais sobre paradigmas de programação visite: Paradigma de programação. CaracterísticasAlgumas características do Natural são:
Os objetos Natural (programas, mapas, áreas de dados, etc.) são armazenados em bibliotecas (“Libraries”), com estrutura parecida com o diretório DOS e podem ter 8 caracteres como nome máximo. Mesmo sendo objetos de diferentes tipos, não podem possuir o mesmo nome. Principais VantagensAs principais vantagens do NATURAL em relação às linguagens tradicionais são:
Diz-se "linguagem de IV geração" por possuir diversas vantagens de automatização de rotinas em relação às chamadas "III geração" (COBOL, PL/I, etc): editor de telas amigável, muito superior ao CICS; eventos (o que certamente ajudou a inspirar VB, Delphi etc.) e muitas outras inovações para a sua época. A linguagem NATURAL possui diversos controles automáticos que facilitam o controle do programa através de blocos de código acionados automaticamente. Exemplo: READ EMPLOYEES BY NAME AT END OF DATA ADD TOTAL-PARCIAL TO TOTAL WRITE TOTAL END-ENDDATA END-READ Este bloco de código será sempre executado todas as vezes que o ponteiro de leitura alcançar o último registro selecionado, não sendo necessário que o programador se preocupe em que parte do programa este código será escrito (contanto que esteja dentro do LOOP de leitura). Tal como o bloco no exemplo, o NATURAL possui outros que são ativados em diversas situações: no início da leitura; na quebra de seqüência da classificação da chave; antes da quebra; depois da quebra etc. Além destas características, a linguagem possui diversas outras que fizeram e fazem do NATURAL uma grande linguagem de programação. ComponentesO Natural tem os seguintes componentes principais:
TiposTem tipagem Forte, Estática e Explicita.
System FileO System File é um arquivo ADABAS reservado para uso do Natural, que contém:
ProgramasOs programas Natural, fontes e objetos são identificados por nomes com formação igual aos nomes das bibliotecas, ou seja, até 8 caracteres, sendo o primeiro alfabético. Fontes e objetos podem (mas não devem) ter nomes diferentes. Os programas fontes são formados por linhas de até 72 posições, numeradas por 4 dígitos. Esta numeração é gerada pelo Natural durante a criação do programa e é usada pelo Compilador e Editores, e tem importantes funções lógicas dos programas. Dentro das linhas, a disposição das instruções (statements ou comandos de programas) é livre, não havendo instruções nem parâmetros posicionais. Os comentários podem ser incluídos de duas formas:
Exemplo: 0010 * Estas duas linhas (0010 e 0020) 0020 ** são comentários. 0030 FORMAT LS=80 /* Bem como esta parte da linha (0030) . . 0200 END As instruções “END” ou “ . “ indicam fim de programa. Interface NaturalAo entrar no Natural, nos é apresentada a seguinte tela: CompiladoresAqui tem um exemplo: AG Natural 6.3
ExemplosUm exemplo de código de um "Hello, World!" * Hello World in NATURAL WRITE 'Hello World!' END Um exemplo de código com a implementação de um programa nessa linguagem que encontre os quatro primeiros números perfeitos: DEFINE DATA LOCAL 1 #LIMITE (N16) 1 #CONT (N16) 1 #X (N16) 1 #SOMA (N16) 1 #I (N16) 1 #RESULTADO (N16) 1 #RESTO (N16) END-DEFINE RESET INITIAL #CONT #X DISPLAY 'QUANTOS NUMEROS PERFEITOS VOCE DESEJA ENCONTRAR?' INPUT #LIMITE DISPLAY 'OS NUMEROS PERFEITOS SAO:' REPEAT ADD 1 TO #X MOVE 0 TO #SOMA FOR #I 1 #X-1 1 DIVIDE #X INTO #I GIVING #RESULTADO REMAINDER #RESTO IF #RESTO = 0 ADD #I TO #SOMA END-IF END-FOR IF SOMA = X DISPLAY #X ADD 1 TO #CONT END-IF UNTIL CONT=LIMITE END-REPEAT END Ligações externas
|