Lucee Association Switzerland (LAS) is a collective of Member companies that act as the custodian for Lucee Server and it’s related code bases. While LAS Members don’t always agree on all things, the manifesto is an effort to declare our overall intentions for the code base, and help guide in community and technical decisions.
The manifesto will no doubt evolve overtime as it weathers community opinion and more importantly the scrutiny of those people most motivated to effect change.
Lucee Server
lucee server is easy to contribute to
Lucee server must be easy to build. Every effort should be made to make Lucee accessible to developers who want to contribute to the project.
lucee server is everywhere
Lucee server must support as many modern installation methods as possible. For example, Lucee should deploy applications as WAR files, Heroku-like build packs, Docker images, via the CommandBox CLI and more.
lucee server leverages the JVM
Lucee exposes the most advanced features of the underlying JVM with performance, class loading, OSGi and JSR-223 support at its core.
lucee server is servlet engine neutral
Lucee is not tied to any specific servlet engine. Nothing should be implemented in the core that prohibits the use of a standards based servlet container.
Note, LAS has standardised on Apache Tomcat for distribution as we can’t suppport installers for all engines.
CFML Compatibility
CFML is a light-weight dynamic scripting and tag language for the JVM that enables the rapid development of simple to highly sophisticated web applications.
Lucee supports Adobe CFML
Lucee server supports ColdFusion Markup Language (CFML) as defined by the Adobe ColdFusion platform. The most popular CFML frameworks and open source solutions are fully supported by Lucee including FW/1, ColdBox (and family), Mura, Preside, FarCry Core and others.
Lucee will actively improve CFML support
Continuing to support CFML and making improvements in CFML compatibility will remain the highest priority for the CFML dialect of Lucee server.
“Supporting CFML” means providing compatibility to Adobe ColdFusion (ACF) and the Lucee Association Switzerland (LAS) are committed to the following:
- if you find a compatibility issue between Lucee’s CFML implementation and ACF please raise a bug report and it will be reviewed and responded to
- if Adobe develop something new that is seen as a popular enhancement then Lucee will add it to the roadmap; features with the most interest are added as a matter of priority
- CFML applications will continue to run on Lucee
Lucee will not create incompatible CFML
Lucee, like Railo before it, has been trying to propel the CFML language forward. However, the more we advance the language the more we muddy the water of what CFML is. In addition to the compatibility layer for CFML applications, Lucee server has its own Lucee Language alternative.
Lucee Language is a modern alternative to CFML, embodying the same approach, familiar syntax and an even richer set of language features.
Lucee Language
Lucee Language is a light-weight dynamic scripting and tag language for the JVM that enables the rapid development of simple to highly sophisticated web applications.
Lucee Language has its roots in the ColdFusion Markup Language (CFML) but Lucee Language is not CFML.
The Lucee language is a modern alternative that is both familiar to existing CF developers while providing the freedom to grow in a more ambitious direction.
lucee language is open source
Lucee Language and its underpinning server technology are open source. While its happy to play nice with commercial products, Lucee itself will never be commercialised.
lucee language is the focus of future language development
Engineering efforts will focus on taking lucee language forward. Continuous improvement of CFML compatibility will remain a high priority, but future additions to CFML that are not officially supported by Adobe should be avoided.
lucee language is faster
Any evolution of the language must be weighed up against its impact on performance. Performance is critical, but not at the expense of good abstraction.
lucee language will support both scripting and tags
Both script and tag based development should be considered first class citizens.
lucee language will interoperate seamlessly with CFML
Lucee language should be able to include CFML code templates and vice versa. Where possible lucee language should facilitate the transition of developers from CFML to Lucee Language.