Eiffel Coding Standard
Language consideration
- Do not put a blank line between
 
- create and creation instructions
 - inherit and parent clauses
 
- Do not use assertion clauses without tag names.
 
note
    description: "Descr...."
    date: "$date: $"
 
class A
 
inherit
    B
       rename
           f as g
       end
 
create
    make
 
feature {NONE} -- Initialization
 
    make (a: INTEGER)
            -- Initialize Current with `a'.
        do
        end
 
invariant
    a_positive: a > 0
 
end
Style
- If instructions:
 
if expr1 then ... elseif expr2 then ... else ... end
If expressions are very long:
if expr1 then ... end
- Loop instructions:
 
from ... until ... loop ... end
- Inspect instructions:
 
inspect expr when val1 then .... else ... end
or
inspect expr when val1 then ... else ... end
- For ponctuations, we always have a space before ( and a space after ), ,, :, or ;:
 
require a_tag: query (a, b, c) or other_query (c, d) local i: INTEGER; j: INTEGER

