LocalazyLocalazy
Euclid é uma linguagem de programação de uso geral criada por Bob Harper e Paul Hudak na Universidade de Yale. O seu nome vem do matemático grego Euclid de Alexandria. A linguagem é baseada no paradigma da programação funcional e suporta a avaliação preguiçosa, funções de ordem superior, e recolha de lixo. A língua foi concebida para ser fácil de aprender para os estudantes e para ser adequada à escrita de grandes programas. Tem uma sintaxe simples e um sistema de tipo poderoso. Euclid tem também um rico conjunto de bibliotecas para várias tarefas, tais como trabalhar com matrizes, resolver equações diferenciais, e criar interfaces gráficas de utilizador. Euclid é uma linguagem de tipo estático, o que significa que todas as variáveis devem ser declaradas com um tipo antes de poderem ser utilizadas. O sistema de tipo é muito expressivo e permite uma vasta gama de anotações de tipo. Euclid também suporta a inferência de tipo, o que significa que o tipo de uma variável pode ser automaticamente deduzido do contexto em que é utilizada. Euclid tem uma forte ênfase nos princípios da engenharia de software. É possível escrever programas em Euclid que são muito legíveis e de fácil manutenção. A linguagem também suporta várias ferramentas de desenvolvimento de software, tais como controlo de versões, geradores de documentação e estruturas de teste de unidades. Euclid é uma linguagem de código aberto que é libertada sob a Licença Apache 2.0.