Eiffel (linguaggio)
Da Wikipedia, l'enciclopedia libera.
Eiffel è un linguaggio di programmazione object-oriented che enfatizza la scrittura di programmi robusti. Fu uno dei primi linguaggi a oggetti compilati e pensati per l'utilizzo industriale. La sua sintassi ricorda quella di Algol, Pascal, e Ada. Eiffel ha una forte tipizzazione statica, e una gestione automatica e affidabile della memoria (tipicamente implementata tramite garbage collection).
Il linguaggio è nato nel 1985 e ha avuto applicazioni nell'industria del software, pur non riuscendo a raggiungere il livello di diffusione di altri linguaggi object-oriented compilati (per esempio C++). Gode di un'ottima reputazione fra i suoi utenti e, in virtù delle sue rinomate proprietà di purezza concettuale (ovvero di aderenza al paradigma object-oriented classico), non raramente veniva usato nelle università a scopo didattico; oggi anche in questo ruolo è stato in molti casi soppiantato da Java.
Si differenzia dalla maggior parte dei linguaggi per avere un'implementazione nativa del design by contract. Altre caratteristiche sono:
- Ereditarietà multipla.
- Sistema di tipi in grado di gestire sia la semantica di valore che la semantica di riferimento.
- Classi generiche, cioè parametrizzate da altre classi.
- Orientamento agli oggetti puro. Per esempio, è possibile creare sottoclassi anche della classe INTEGER.
- Overloading degli operatori (ma non dei metodi).
[modifica] Programma di esempio
[modifica] Hello, world!
Il seguente esempio stampa il testo "Hello World".
class HELLO_WORLD create make feature make is do io.put_string("Hello World%N") end end
[modifica] Collegamenti esterni
- (EN) Iniziativa Open Source di Eiffel Software's
- (EN) Eiffel Software, Inc. web site of the company that introduced Eiffel, was Interactive Software Engineering (ISE).
- (EN) Object Oriented Software Construction, Second Edition, by Bertrand Meyer, Prentice Hall, 1997, ISBN 0-13-629155-4; contains a very detailed treatment of the beliefs about object-orientation behind Eiffel.
- (EN) Eiffel: the Language subset
- (EN) Eiffel tutorial (100 pages) by Bertrand Meyer (HTML, PDF)
- (EN) SmartEiffel fairly complete Eiffel compiler, released under GNU GPL license, was SmallEiffel.
- (EN) NICE Nonprofit International Consortium for Eiffel.
- (DE) more Eiffel-Links
- (EN) Cetus Eiffel Page
Principali linguaggi di programmazione (tutti) |
Ada | ALGOL | APL | Awk | BASIC | C | C++ | C# | COBOL | Delphi | Eiffel | Fortran | Haskell | IDL | Java | JavaScript | J# | Lisp | LOGO | ML | Objective C | O'Caml | Pascal | Perl | PHP | PL/I | PLaSM | Prolog | Python | Ruby | SAS | Scheme | sh | Simula | Smalltalk | SQL | Visual Basic |