Skip to main content
  • Log in
  • Manage Cookies
projects.eclipse.org
Download
  • Projects
  • Working Groups
  • Members
  • Community
    • Marketplace
    • Events
    • Planet Eclipse
    • Newsletter
    • Videos
    • Blogs
  • Participate
    • Report a Bug
    • Forums
    • Mailing Lists
    • Wiki
    • IRC
    • Research
  • Eclipse IDE
    • Download
    • Learn More
    • Documentation
    • Getting Started / Support
    • How to Contribute
    • IDE and Tools
    • Newcomer Forum
  • More
      • Community

      • Marketplace
      • Events
      • Planet Eclipse
      • Newsletter
      • Videos
      • Blogs
      • Participate

      • Report a Bug
      • Forums
      • Mailing Lists
      • Wiki
      • IRC
      • Research
      • Eclipse IDE

      • Download
      • Learn More
      • Documentation
      • Getting Started / Support
      • How to Contribute
      • IDE and Tools
      • Newcomer Forum
    • Search

  1. Home
  2. Projects
  3. Eclipse Technology
  4. Eclipse Ceylon™

Eclipse Ceylon™

Primary tabs

  • Overview(active tab)
  • Downloads
  • Who's Involved
  • Developer Resources
  • Governance
  • Contact Us

The Eclipse Ceylon™ project encompasses development of the language itself (the language specification), the compiler frontend (typechecker), the compiler backends for Java and JavaScript, the module system, the command-line tooling, the SDK, and the Eclipse-based IDE. A future direction is tooling for Eclipse Che. The project also maintains the website and documentation for the language.

Eclipse Ceylon consists in a number of components:

  • The Ceylon distribution, which is composed of the following modules:

    • ceylon-typechecker (compiler front-end), which includes the parser, AST and type-checker

    • ceylon-model: describes a type-checked Ceylon program (this is what the type-checker outputs), and provides a facility for turning a JVM class into a Ceylon model

    • ceylon-compiler-java: produces JVM bytecode modules for Ceylon programs (the JVM back-end), also contains the API documentation generator

    • ceylon-compiler-js: produces JavaScript modules for Ceylon programs (the JS back-end)

    • ceylon.language: the base Ceylon language module implicitly imported by every Ceylon module, which contains the Ceylon basic types

    • ceylon-module-resolver: deals with module repositories reading and writing and contains optional plugins:

      • ceylon-module-resolver-aether for Maven interop

      • ceylon-module-resolver-javascript for JS interop

    • ceylon-common: a utilities module used by most other modules

    • ceylon-cli: the framework used by the Ceylon Command-Line Interface tools

    • ceylon-tools: most of the CLI tool implementations

    • ceylon-runtime: a JBoss Modules runtime for Ceylon

    • ceylon-main: a barebones ClassPath-based runtime for Ceylon

    • ceylon-tool-provider: APIs to invoke the compilers and runners

    • ceylon-module-loader: resolver that resolves the right versions for transitive dependencies of Ceylon modules

    • ceylon-bootstrap: support for auto-downloading the right Ceylon distribution in Ceylon projects

  • The Ceylon SDK: the Ceylon APIs that allow access to the file system, network, databases, http client and server, mathematics, testing framework and many other things.

  • The ceylon-lang.org website: static generated website based on Awestruct

  • The Ceylon Web IDE: allows you to try your Ceylon program in the browser, requires an OpenShift server that compiles the code and sends it back to the browser for execution.

  • The Ceylon Eclipse IDE: fully-featured Ceylon editor in Eclipse

  • The Ceylon IntelliJ IDE: fully-featured Ceylon editor in IntelliJ, newer than the Eclipse plug-in and still a little bit behind in terms of features

  • The Java2Ceylon converter: Ceylon module that converts Java code in to Ceylon. Used by the Eclipse/IntelliJ IDEs

  • The Ceylon formatter: Ceylon module that formats Ceylon code. Used by the Eclipse/IntelliJ IDEs

  • The ceylon-ide-common project: common Ceylon module used by the Eclipse/IntelliJ IDEs to share functionality

  • The Ceylon Herd project, which is a web server allowing publishing and consumption of Ceylon modules. Its functionality and scope is similar to Maven Nexus.

  • The modules.ceylon-lang.org and herd.ceylon-lang.org services which are running a Herd instance for Ceylon modules. It’s functionally equivalent to Maven Central for Ceylon.

Licenses: 
Apache License, Version 2.0
Eclipse Public License 1.0

The content of this open source project is received and distributed under the license(s) listed above. Some source code and binaries may be distributed under different terms. Specific license information is provided in file headers and in NOTICE files distributed with the project's binaries.

Active Member Companies: 
Member companies supporting this project over the last three months.
    Contribution Activity: 
    Commits on this project (last 12 months).
    Incubating - Eclipse Ceylon™

    Related Projects

    Project Hierarchy:

    • Eclipse Technology
    • Eclipse Ceylon™

    Eclipse Foundation

    • About Us
    • Contact Us
    • Sponsor
    • Members
    • Governance
    • Code of Conduct
    • Logo and Artwork
    • Board of Directors
    • Careers

    Legal

    • Privacy Policy
    • Terms of Use
    • Copyright Agent
    • Eclipse Public License
    • Legal Resources

    Useful Links

    • Report a Bug
    • Documentation
    • How to Contribute
    • Mailing Lists
    • Forums
    • Marketplace

    Other

    • IDE and Tools
    • Projects
    • Working Groups
    • Research@Eclipse
    • Report a Vulnerability
    • Service Status

    Copyright © Eclipse Foundation. All Rights Reserved.

    Back to the top