Eiffel (język programowania)
Z Wikipedii
Eiffel to jeden z obiektowych języków programowania.
Eiffel jest statycznie typizowany. Do ciekawszych cech należy szerokie stosowanie asercji (tzw. Design By Contract).
class HELLO_WORLD creation make feature make is local do std_output.put_string("Hello, world") std_output.put_new_line end end
Eiffel, pomimo posiadania kilku ciekawych rozwiązań, ma opinie języka typu bondage and discipline - ma składnię bardziej rozwklekłą niż wszystkie popularne języki (w benchmarku Computer Language Shootout miał najgorsze wyniki zwięzłości, zwykły hello world zajmuje w nim ok. 10 linijek) i wymusza ścisłe rozróżnienie metod funkcyjnych i proceduralnych, i to znacznie silniej niż robił to krytykowany za tę cechę wczesny Pascal (współczesne implementacje nie mają tego problemu) - metody funkcyjne nie mogą zmieniać stanu obiektu, a wartości przez nie zwracane nie mogą być zignorowane; metody proceduralne zaś mogą co prawda zmieniać stan obiektu, za to nie mogą zwracać żadnych wartości.
[edytuj] Linki zewnętrzne
- Wiesław Porębski, Języki programowania obiektowego:Eiffel
- Kompilator SmallEiffel (open source)
- Eiffel IDE (open source)
ABAP • Ada • AWK • Asembler • C • C++ • C# • COBOL • Common Lisp • D • F# • Forth • Fortran • GAUSS • Icon • Java • JavaScript • Lisp • Lustre• Modula 2 • Ocaml • Oberon • Object Pascal • Objective-C • Pascal • Perl • PHP • PL/SQL • Python • REXX • Ruby • SAS 4GL • sh • Smalltalk • Snobol • SQL • Visual Basic • VB.NET • XUL
Akademickie: Comal • Eiffel • Haskell • Logo • MCPL • ML • Nemerle • Prolog • Scheme
Historyczne: ALGOL • APL • BASIC • Clipper • JAS • MUMPS • PLAN • PL/I • PL/M • SAKO • SAS (asembler) • Simula
Ezoteryczne: INTERCAL • Brainfuck • BeFunge • Unlambda • Malbolge • Whitespace • FALSE • HQ9+ • Shakespeare • Whirl • Ook