ALGO, em computação, é uma linguagem de programação algébrica desenvolvida entre 1959 e 1961 para o computador Bendix G-15.
ALGO foi uma dentre diversas linguagens de programação inspiradas pelo documento Relatório Preliminar sobre a Linguagem Algorítmica Internacional escrito em Zurique em 1958. Este relatório passou por diversas modificações antes de tornar-se o Relatório Revisado sobre o qual muitas implementações do ALGOL se basearam. Devido a isso, ALGO e outras versões iniciais do ALGOL possuem uma sintaxe muito diferente daquela do ALGOL 60.
Outras linguagens desenvolvidas a partir do relatório de Zurique incluem a BALGOL, a MAD (Michigan Algorithm Decoder) e a NELIAC.
Exemplo Eis um exemplo do algoritmo de Trabb Pardo-Knuth em ALGO:
1. TITLE TRABB PARDO-KNUTH ALGORITHM 2. SUBSCript I,J 3. DATA A(11) 4. FORMAt FI(2DT), FLARGE(3D) 5. PROCEdure F(T=Z) 6. BEGIN 7. Z=SQRT(ABS(T))+5*T^3 8. END 9. FOR I=0(1)10 10. A[I]=KEYBD 11. FOR J=0(1)10 BEGIN 11. I=J-10 12. F(A[I]=Y) 13. PRINT(FI)=I 14. IF Y > 400 15. GO TO LARGE 16. PRINT(FL)=Y 17. GO TO NEXT 18. LARGE: PRINT(FLARGE)=999 19. NEXT: CARR(1) END 20. END
Comentários a algumas linhas do código exemplo 1. Um título (TITLE) era o único tipo de comentário permitido no código. As linhas eram automaticamente numeradas pelo editor. 2. Alguns comandos continham letras iniciais maiúsculas e a parte final minúscula (SUBSCript) 3. Apenas o tamanho de um array poderia ser especificado; o limite inferior era sempre zero. 4. O primeiro comando format especifica um número de 2 dígitos seguido por um TAB, o segundo especifica um número de 4 dígitos. 5. A sintaxe das implementações de procedimentos na ALGO 's procedure implementations são ligeiramente diferentes daquelas dadas no relatório de Zurique. Funções, tais como definidas nesse relatório, não foram implementadas. 9. A sintaxe aqui usada é a do relatório de Zurique e também é consistente com vários autocódigos da década de 50. 10. KEYBD lê um valor numérico de um terminal.
Ver também ALGOL 58 ALGOL 60
Ligações externas ALGO manual (PDF) Other documents on ALGO and the G-15
Categoria:Linguagens de programação