Questions Concepts
GitHub icon


Eiffel - Programming language

< >

Eiffel is a programming language created in 1986 by Bertrand Meyer.

Source code:
git clone
#70on PLDB 37Years Old 913Repos

Eiffel is an 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; the first version becoming available in 1986. In 2005, Eiffel became an ISO-standardized language. Read more on Wikipedia...

Example from hello-world:
indexing "Hello World in Eiffel , from" class HELLO creation run feature run is local io : BASIC_IO; do !!io; io.put_string("Hello World"); io.put_newline end; -- run end; -- class HELLO
note "Hello World in Eiffel" class HELLO create run feature run do print ("Hello World!%N") end end
Example from Linguist:
note description: "Git checkout command." author: "Olivier Ligot" class GIT_CHECKOUT_COMMAND inherit GIT_COMMAND create make, make_master feature {NONE} -- Initialization make (a_branch: STRING) -- Checkout the branch `a_branch'. do initialize arguments.force_last (a_branch) branch := a_branch ensure branch_set: branch = a_branch end make_master -- Checkout the master branch. do make ("master") end feature -- Access branch: STRING -- Branch to checkout name: STRING = "checkout" -- Git subcommand name end
Example from Wikipedia:
class HELLO_WORLD create make feature make do print ("Hello, world!") end end

Language features

Feature Supported Token Example
Binary Literals
-- 0[bB][01]+
-- [0-9]+
-- ([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)
-- 0[xX][a-fA-F0-9]+
-- 0[cC][0-7]+
Strings "
"Hello world"
Assignment :=
Case Insensitive Identifiers
Line Comments --
-- A comment
Operator Overloading
Multiple Inheritance
Semantic Indentation X
MultiLine Comments X

View source

- Build the next great programming language · Search · Add Language · Features · Creators · Resources · About · Blog · Acknowledgements · Queries · Stats · Sponsor · Traffic · Traffic Today · Day 305 · · Logout