Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Eiffel (programming language)
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Object-oriented programming language}} {{Infobox programming language | name = Eiffel | logo = Eiffel logo.svg | logo caption = Eiffel logo | paradigm = [[Programming paradigm|Multi-paradigm]]: [[Object-oriented programming|object-oriented]], [[Class-based programming|class-based]], [[Generic programming|generic]], [[Concurrent object-oriented programming|concurrent]] | designer = [[Bertrand Meyer]] | developer = Eiffel Software | released = {{Start date and age|1986}}<ref>{{cite web |title=Eiffel in a Nutshell |url=https://archive.eiffel.com/eiffel/nutshell.html |date=1985–2012 |website=Eiffel Software |language=en |access-date=29 November 2024}}</ref> | latest release version = [[EiffelStudio]] 24.05<ref>{{cite web |title=EiffelStudio 24.05 is available! |url=https://www.eiffel.org/blog/eiffelstudio_24_05 |date=14 June 2024 |website=Eiffel.org |access-date=29 November 2024}}</ref> | latest release date = {{Start date and age|2024|06|14|df=y}} | typing = [[Static typing|static]] | implementations = [[EiffelStudio]], [[LibertyEiffel]], [[SmartEiffel]], [[Visual Eiffel]], Gobo Eiffel, "The Eiffel Compiler" tecomp | programming language = Eiffel | platform = [[Cross-platform software|Cross-platform]] | operating system = [[FreeBSD]], [[Linux]], [[macOS]], [[OpenBSD]], [[Oracle Solaris|Solaris]], [[Windows]] | license = dual and enterprise | file ext = <code>.e</code> | website = {{URL|eiffel.org}} | dialects = | influenced by = [[Ada (programming language)|Ada]], [[Simula]], [[Z notation|Z]] | influenced = [[Ada (programming language)|Ada 2012]], [[Albatross (programming language)|Albatross]], [[C Sharp (programming language)|C#]], [[D (programming language)|D]], [[Java (programming language)|Java]], [[Racket (programming language)|Racket]], [[Ruby (programming language)|Ruby]],<ref name="nov2pro">{{cite book |last1=Cooper |first1=Peter |year=2009 |title=Beginning Ruby: From Novice to Professional |edition=2nd |series=Beginning from Novice to Professional |publisher=APress |location=Berkeley |isbn=978-1-4302-2363-4 |page=101 |quote=To a lesser extent, Python, LISP, Eiffel, Ada, and C++ have also influenced Ruby.}}</ref> [[Sather]], [[Scala (programming language)|Scala]] }} '''Eiffel''' is an [[Object-oriented programming|object-oriented]] [[programming language]] designed by [[Bertrand Meyer]] (an object-orientation proponent and author of ''[[Object-Oriented Software Construction]]'') and Eiffel Software. Meyer conceived the language in 1985 with the goal of increasing the reliability of commercial software development.<ref>{{cite web |title=Eiffel – the Language |url=http://www.berenddeboer.net/eiffel/archive/halstenbach_eiffel_history.html |access-date=6 July 2016 |website=berenddeboer.net}}</ref> The first version was released in 1986. In 2005, the [[International Organization for Standardization]] (ISO) released a [[technical standard]] for Eiffel. The design of the language is closely connected with the Eiffel programming method. Both are based on a set of principles, including [[design by contract]], [[command–query separation]], the [[uniform access principle|uniform-access principle]], the [[Single choice principle|single-choice principle]], the [[open–closed principle]], and [[option–operand separation]]. Many concepts initially introduced by Eiffel were later added into [[Java (programming language)|Java]], [[C Sharp (programming language)|C#]], and other languages.<ref>{{Cite book |last1=Meyer |first1=Bertrand |author1-link=Bertrand Meyer |date=2009-08-28 |url=https://books.google.com/books?id=6yupzA8JZjQC&dq=Many+concepts+initially+introduced+by+Eiffel+later+found+their+way+into+Java,+C&pg=PR37 |title=Touch of Class: Learning to Program Well with Objects and Contracts |publisher=Springer Science & Business Media |isbn=978-3-540-92144-8 |language=en}}</ref> New language design ideas, particularly through the [[Ecma International|Ecma]]/[[International Organization for Standardization|ISO]] standardization process, continue to be incorporated into the Eiffel language.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)