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
Cecil (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}} {{Distinguish|CESIL}} {{Infobox programming language | name = <!-- otherwise defaults to {{PAGENAME}} --> | logo = <!-- (filename) --> | logo caption = | screenshot = <!-- (filename) --> | screenshot caption = | paradigm = [[Object-oriented Programming|object-oriented]] | family = | designer = [[Craig Chambers]] | developer = <!-- or: | developers = --> | released = {{Start date and age|1992|df=yes}} | latest release version = | latest release date = <!-- {{Start date and age|YYYY|MM|DD|df=yes/no}} --> | latest preview version = | latest preview date = <!-- {{Start date and age|YYYY|MM|DD|df=yes/no}} --> | typing = dynamic (optionally static) | scope = | programming language = | discontinued = | platform = | operating system = | license = | file ext = | file format = <!-- or: | file formats = --> | website = <!-- {{url|www.example.com}} --> | implementations = | dialects = | influenced by = | influenced = [[Diesel (programming language)|Diesel]] }} '''Cecil''' is a pure [[Object-oriented programming|object-oriented]] [[programming language]] that was developed by [[Craig Chambers]] at the [[University of Washington]] in 1992 to be part of the Vortex project there. Cecil has many similarities to other object-oriented languages, most notably [[Objective-C]], [[Modula-3]], and [[Self (programming language)|Self]].<ref name="DeanDeFouw1996">{{cite conference |last1=Dean |first1=Jeffrey |last2=DeFouw |first2=Greg |last3=Grove |first3=David |last4=Litvinov |first4=Vassily |last5=Chambers |first5=Craig |title=Vortex: an optimizing compiler for object-oriented languages |book-title=Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications |conference=[[OOPSLA]]'96 |year=1996 |pages=83β100 |isbn=0-89791-788-X |doi=10.1145/236338.236344|doi-access=free }}</ref><ref name="Chambers1992">{{cite conference |last1=Chambers |first1=Craig |title=Object-oriented multi-methods in Cecil |book-title=ECOOP β92 European Conference on Object-Oriented Programming |series=[[Lecture Notes in Computer Science|LNCS]]| volume=615 |conference=[[European Conference on Object-Oriented Programming|ECOOP]]'92 |year=1992 |pages=33β56 |doi=10.1007/BFb0053029 |issn=0302-9743 |isbn=3-540-55668-0}}</ref> The main goals of the project were [[extensibility]], orthogonality, efficiency, and ease-of-use. The language supports [[multiple dispatch]] and multimethods, dynamic [[Inheritance (object-oriented programming)|inheritance]], and optional [[static type checking]]. Unlike most other OOP systems, Cecil allows subtyping and code inheritance to be used separately, allowing run-time or external extension of object classes or instances. Like Objective-C, all object services in Cecil are invoked by [[message passing]], and the language supports run-time class identification. These features allow Cecil to support dynamic, [[exploratory programming]] styles. Parameterized types and methods ([[Generic programming|generics]], [[type polymorphism|polymorphism]]), [[garbage collection (computer science)|garbage collection]], and [[Delegation (programming)|delegation]] are also supported. Cecil also supports a module mechanism for isolating independent libraries or packages. Cecil does not presently support threads or any other form of concurrency. A standard library for Cecil is also available and includes various collection, utility, system, I/O, and GUI classes. The [[Diesel (programming language)|Diesel]] language was the successor of Cecil.<ref>{{cite web |title=Diesel |publisher=[[University of Washington]] |url=http://wasp.cs.washington.edu/wasp_diesel.html}}</ref>
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)