Euclides (linguagem de programação) - Euclid (programming language)

Euclides
Paradigma multi-paradigma : estruturada , imperativa , funcional
Projetado por Butler Lampson , Xerox PARC
Desenvolvedor Ric Holt e James Cordy
Apareceu pela primeira vez 1970
disciplina Typing forte , estática
Influenciado por
Pascal
Influenciado
Mesa , Concurrent Euclides , Turing

Euclides é uma linguagem de programação imperativa para escrever verificáveis programas. Ele foi projetado por Butler Lampson e associados ao Xerox PARC laboratório em meados da década de 1970. A implementação foi liderado por Ric Holt na Universidade de Toronto e James Cordy foi o principal programador para a primeira implementação do compilador . Ele foi originalmente projetado para o Motorola 6809 microprocessador. Foi considerado inovador para a época; a equipe de desenvolvimento do compilador teve um orçamento de US $ 2 milhões ao longo de 2 anos e foi encomendado pelo avançado Agência de Projetos de Pesquisa de Defesa do Departamento de Defesa dos EUA e do Departamento de Defesa Nacional do Canadá . Ele foi usado por alguns anos em IP afiadas Associates , MITRE Corporação , SRI International e vários outros institutos internacionais de pesquisa em programação de sistemas e sistemas de software seguros.

Euclides é descendente da linguagem de programação Pascal . Funções em Euclid são âmbitos fechados, não podem ter efeitos colaterais, e deve declarar explicitamente importações. Euclides também não permite gotos , números de ponto flutuante, atribuições globais, funções aninhadas e aliases, e nenhum dos parâmetros reais para uma função pode referir-se a mesma coisa. Euclides implementa módulos como tipos. Descendentes de Euclides incluem a linguagem de programação Mesa , a linguagem de programação concorrente Euclides ea linguagem de programação Turing .

links externos