Eiffel (język programowania)

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
Eiffel
Pojawienie się 1986
Paradygmat obiektowy
Typowanie statyczne, silne
Aktualna wersja stabilna EiffelStudio 19.05[1]
Aktualna wersja testowa EiffelStudio 19.07[2]
Twórca Bertrand Meyer
Licencja Podwójna (płatna komercyjna lub tzw. open source)[3]
Platforma sprzętowa Wieloplatformowy
Platforma systemowa FreeBSD, Linux, Mac OS X, OpenBSD, Solaris, Windows
Strona internetowa

Eiffelstatycznie typowany, obiektowy język programowania opisywany w książkach Bertranda Meyera m.in. Object-Oriented Software Construction, Eiffel: The Language.

Charakterystyka języka[edytuj | edytuj kod]

Główną ideą przyświecającą twórcy języka Eiffel było stworzenie praktycznego narzędzia do tworzenia wysokiej jakości oprogramowania. Cel ten miał być osiągnięty poprzez tworzenie re-używalnego kodu dającego pewność swojej poprawności. Stąd Bertrand Meyer określił następujące cechy języka:

Hello World[edytuj | edytuj kod]

class HELLO_WORLD

creation make

feature
   make is
      local
      do
         std_output.put_string("Hello, world")
         std_output.put_new_line
      end
end

Historia[edytuj | edytuj kod]

Język został zaprojektowany przez firmę Interactive Software Engineering (ISE, obecnie Eiffel Software) w 1985 r. Rok później ISE zaimplementowała kompilator dla Eiffel na platformę UNIX.

W 1989 specyfikacja języka stała się publicznie dostępna[5]. Powstała wówczas organizacja Nonprofit International Consortium for Eiffel (NICE). Zajmująca się popularyzacją języka a także jego standaryzacją. W 1992 NICE przyjęła drugie wydanie książki Eiffel The Language Bertranda Meyera jako pierwszy standard. Następnie publikowała uaktualnienia w roku 1996, 2000, 2001, 2002[6].

Od 1999 roku ISA współpracowała z Microsoft co zaowocowało utworzeniem środowiska na platformę .NET w 2001 r[7].

W 2002 roku ECMA utworzyła grupę zajmującą się opracowaniem standardu języka Eiffel. Pierwsza wersja została opublikowana w 2005. W kolejnym – wyszło uaktualnienie standardu[5]. W tym samym roku został opublikowany standard ISO (ISO/IEC 25436:2006)[8].

W 2007 roku Association for Computing Machinery przyznało Bertrandowi Meyerowi ACM Software System Award za zaprojektowanie i implementację języka Eiffel, programowanie kontraktowe i działalność która przyczyniła się do tworzenia godnego zaufania, re-używalnego, efektywnego oprogramowania[9].

Środowiska programistyczne[edytuj | edytuj kod]

Przedsiębiorstwo Eiffel Software oferuje IDE Eiffel Studio na licencji komercyjnej albo GPL. Środowisko jest dostępne dla różnych systemów operacyjnych: MS Windows, Linux, FreeBSD, OpenBSD, Solaris.

SmartEiffel (poprzednio SmallEiffel) to IDE tworzone przez zespół prof. Dominique Colnet w centrum naukowym LORIA we Francji[10]. Środowisko oprócz klasycznej kompilacji, oferuje możliwość wygenerowania kodu wykonywalnego dla maszyny wirtualnej Java. Nie jest zgodne ze standardem ISO/ECMA[11].

Visual Eiffel jest środowiskiem udostępnianym na licencji GPL na platformy Windows i Linux.

Przypisy[edytuj | edytuj kod]

  1. Release notes for EiffelStudio 19.05 (ang.). Eiffel.org. [dostęp 2019-08-02].
  2. EiffelStudio Beta Releases (ang.). Eiffel.org. [dostęp 2019-08-02].
  3. Eiffel Software’s Dual Licensing Business Model (ang.). https://www.eiffel.com.+[dostęp 2019-08-02].
  4. Bertrand Meyer. Eiffel: A language and environment for software engineering. „The Journal of Systems and Software”, 1988 (ang.). [dostęp 2010-11-02]. 
  5. a b Historia środowiska Eiffel Studio firmy Eiffel Software (ang.). [dostęp 2010-11-02].
  6. NICE Standards (ang.). [dostęp 2010-11-02].
  7. Raphael Simon, Emmanuel Stapf, Bertrand Meyer: MSDN. Full Eiffel on the .NET Framework (ang.). 2002. [dostęp 2010-11-02].
  8. Standard ISO/IEC 25436:2006 Informacje o standardzie ISO/IEC 25436:2006 (ang.). [dostęp 2010-11-02].
  9. Association for Computing Machinery: ACM Software System Award 2007 (ang.). [dostęp 2010-11-02].
  10. Loria. People. (ang.). [dostęp 2010-11-01].
  11. Strona domowa SmartEiffel (ang.). [dostęp 2010-11-01].

Linki zewnętrzne[edytuj | edytuj kod]