LocalazyLocalazy
E é uma linguagem de programação concorrente, baseada em classes, orientada para objectos, com foco na segurança e sistemas distribuídos fiáveis. Foi concebida e desenvolvida por Mark S. Miller, Dan Ingalls, Bob Harper, e David Ungar na Xerox PARC em meados da década de 1980. E tem sido utilizado em vários projectos comerciais e de código aberto, mais particularmente no sistema operativo Inferno. E é baseado na linguagem de programação Smalltalk-80. No entanto, ao contrário do Smalltalk, que foi concebido para fins educativos e de investigação, o E destina-se a ser utilizado no desenvolvimento de software comercial. O E é um descendente directo da linguagem de programação T, que foi desenvolvida na Xerox PARC no início da década de 1980. E é uma linguagem de programação concorrente, o que significa que foi concebida para apoiar programas que podem ser executados em paralelo. Isto está em contraste com a maioria das outras linguagens de programação, que são concebidas para programas que correm sequencialmente. E é uma linguagem baseada na classe, o que significa que utiliza uma hierarquia de classes para definir as relações entre objectos. E também suporta herança múltipla, o que significa que uma classe pode herdar de mais do que uma outra classe. E é uma linguagem orientada para objectos, o que significa que utiliza objectos para representar dados e procedimentos. Os objectos podem ser criados, destruídos, e passados como argumentos para procedimentos. As linguagens de programação orientadas aos objectos são concebidas para apoiar o desenvolvimento de sistemas de software grandes e complexos. E é uma linguagem centrada na segurança. Inclui características que se destinam a dificultar que os programas violem as políticas de segurança. Por exemplo, o E suporta segurança baseada na capacidade, o que significa que um objecto só pode ser acedido se o programa tiver as permissões apropriadas. E é uma linguagem de programação distribuída. Inclui características que se destinam a facilitar o desenvolvimento de programas que correm em múltiplos computadores. Por exemplo, o E suporta chamadas de procedimento remoto, o que significa que um procedimento pode ser invocado num computador remoto. E é uma língua de código-fonte aberto. A implementação de referência da linguagem de programação E está disponível sob uma licença de código-fonte aberto. E é uma linguagem de programação de uso geral. Pode ser utilizada para desenvolver uma grande variedade de aplicações.