Eiffel - For secured software
Eiffel was designed by Bertrand Meyer in 1985. The idea was to correct the defaults of other classical languages that cause bugs and consume programming time. It gets inspiration from some theorical languages designed in Universities and never implemented. It is a purely object oriented language.
The name inspired by Eiffel, the builder of the tower wants to convey the idea that a well-designed building can go further.
According to the author, suitable to produce quality software made by professional
Use the language when security is essential. It is often used by hospitals.
- Generical classes. Reuse of classes with different types.
- Deferred classes. A kind of interface. Methods are virtual until the compiler make them real, or even inline.
- Multiple inheritance.
- Precondition and postconditions to functions (saying also assertions, programming per contract).
- Inheritable types that are objects of the language also. "Integer" inherits "numeric", etc...
Sample code : Hello world!
class HELLO_WORLD creation make feature make is local io:BASIC IO do !!io io.put_string("%N Hello World!") end --make end -- class HELLO_WORLD
Sites and tools
A free open source port of the language.
A very similar language, open source.