LocalazyLocalazy
E es un lenguaje de programación concurrente, basado en clases y orientado a objetos que se centra en la seguridad y la fiabilidad de los sistemas distribuidos. Fue diseñado y desarrollado por Mark S. Miller, Dan Ingalls, Bob Harper y David Ungar en Xerox PARC a mediados de los años ochenta. E se ha utilizado en varios proyectos comerciales y de código abierto, entre los que destaca el sistema operativo Inferno. E se basa en el lenguaje de programación Smalltalk-80. Sin embargo, a diferencia de Smalltalk, diseñado para fines educativos y de investigación, E está pensado para su uso en el desarrollo de software comercial. E es un descendiente directo del lenguaje de programación T, desarrollado en Xerox PARC a principios de la década de 1980. E es un lenguaje de programación concurrente, lo que significa que está diseñado para soportar programas que pueden ejecutarse en paralelo. Esto contrasta con la mayoría de los demás lenguajes de programación, que están diseñados para programas que se ejecutan secuencialmente. E es un lenguaje basado en clases, lo que significa que utiliza una jerarquía de clases para definir las relaciones entre los objetos. E también admite herencia múltiple, lo que significa que una clase puede heredar de más de una clase. E es un lenguaje orientado a objetos, lo que significa que utiliza objetos para representar datos y procedimientos. Los objetos pueden crearse, destruirse y pasarse como argumentos a los procedimientos. Los lenguajes de programación orientados a objetos están diseñados para apoyar el desarrollo de sistemas de software grandes y complejos. E es un lenguaje centrado en la seguridad. Incluye características destinadas a dificultar que los programas infrinjan las políticas de seguridad. Por ejemplo, E soporta seguridad basada en capacidades, lo que significa que sólo se puede acceder a un objeto si el programa tiene los permisos apropiados. E es un lenguaje de programación distribuido. Incluye características que facilitan el desarrollo de programas que se ejecutan en varios ordenadores. Por ejemplo, E soporta llamadas a procedimientos remotos, lo que significa que un procedimiento puede ser invocado en un ordenador remoto. E es un lenguaje de código abierto. La implementación de referencia del lenguaje de programación E está disponible bajo una licencia de código abierto. E es un lenguaje de programación de propósito general. Puede utilizarse para desarrollar una amplia variedad de aplicaciones.