Eiffel
Eiffel是一套物件導向程式語言,1985年由伯特蘭·邁耶所發明。文法類似Pascal ,並且將語言本身與軟體工程、和工具結合為一。Eiffel实现契约式设计(Design by Contract)的風格。
面向对象, 基于类, 泛型, 并发 | |
設計者 | Bertrand Meyer |
實作者 | Eiffel Software |
1986年[1] | |
穩定版本 | EiffelStudio 20.11[2]
(2020年12月21日
) |
型態系統 | 静态 |
實作語言 | Eiffel |
系统平台 | 跨平台 |
作業系統 | FreeBSD, Linux, Mac OS X, OpenBSD, Solaris, Windows |
許可證 | 双许可和企业许可 |
文件扩展名 | .e |
網站 | www |
主要實作產品 | |
EiffelStudio, LibertyEiffel, SmartEiffel, Visual Eiffel, Gobo Eiffel, "The Eiffel Compiler" tecomp | |
啟發語言 | |
Ada, Simula, Z | |
影響語言 | |
Ada 2012, Albatross, C#, D, Java, Racket, Ruby,[3] Sather, Scala |
語法與語意
整體架構
一個Eiffel "system"或"program"是指一個classes的集合。Eiffel系统有一个Cluster的概念。通过一个叫做ACE的外部组件描述类之间的组合关系的,Cluster可以是几个类,或者几个子Cluster,或者是它们的混合。但是Cluster不是Eiffel语言的一个概念,Eiffel语言中,CLASS是惟一的模块。
"Hello, world!"
一支程式語言都會有"Hello, world!"的程式碼.以Eiffel的表示如下:
class
HELLO_WORLD
create
make
feature
make
do
print("Hello, world!%N")
end
end
這支程式有類別(class)HELLO_WORLD
.其建構元(create routine)名稱是make
,會呼叫print
的系統函式程序(system library routine)將"Hello,
world!"
的訊息給輸出。
Eiffel中不像C系列(C、C++、Java、C#)的语言,通过约定某个叫做main的函数来启动应用,而是通过ACE来指定一个类作为整个应用的启动。这个类的构造函数也就成为应用的起始点。
引用
- . archive.eiffel.com. [24 August 2017]. (原始内容存档于2019-01-13) (英语).
- . Eiffel.org.
- Cooper, Peter. . Beginning from Novice to Professional 2nd. Berkeley: APress. 2009: 101. ISBN 978-1-4302-2363-4.
To a lesser extent, Python, LISP, Eiffel, Ada, and C++ have also influenced Ruby.
外部連結
- Basic Eiffel Language Mechanisms页面存档备份,存于, Bertrand Meyer页面存档备份,存于, August 2006.
- Eiffel Software's Open Source initiative页面存档备份,存于
- Eiffel Software页面存档备份,存于 web site of the company that introduced Eiffel, was Interactive Software Engineering (ISE).
- Eiffel tutorial (100 pages) by Bertrand Meyer(HTML页面存档备份,存于, PDF页面存档备份,存于)
- Eiffel standard页面存档备份,存于, revision 2 (2006); this is the ECMA standard, with free access, its text identical to that of the ISO standard.
- SmartEiffel页面存档备份,存于 (formerly SmallEiffel) a complete Eiffel compiler released under GNU GPL license, translates Eiffel code either to C or Java bytecode, not standard compliant, with emphasis on performance.
- "The Eiffel Compiler" (tecomp)页面存档备份,存于 an open source Eiffel compiler with documentation页面存档备份,存于.
- Visual Eiffel an open source implementation of Eiffel creating native code for X86 systems(Windows, Linux)
- NICE页面存档备份,存于 Nonprofit International Consortium for Eiffel.
- eiffelroom.com页面存档备份,存于 Community around standard Eiffel.
- eiffelzone.com Includes a comprehensive Eiffel Software Directory
- Cetus Eiffel Page
- Eiffel for .NET
- Eiffel: the Language页面存档备份,存于 subset
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.