ColdFusion (CFML) is a JVM scripting language whose syntax is similar to C or JavaScript. It JIT compiles to byte code that runs on the JVM but is dynamic and loosely typed, making it fast and easy to develop in. CF is a multi-paradigmed language, supporting classical OO and functional programming.

CFML also has a built-in tag-based templating language that makes it ideal for web apps. It runs in a J2EE container with many bundled libraries that make it very productive without the need to install many packages. CFML has native support for zip files, PDF and Excel generation, E-mails, FTP, HTTP, S3 file systems, ESAPI security libraries, JDBC drivers, JSON and REST APIs.

CFML can also leverage any Java project by dropping the jars in project and directly instantiating Java objects in your code. You can learn more about basic syntax and first class data types in this guide: Modern ColdFusion (CFML) in 100 Minutes

Help us explain this better! File a GitHub issue at if you have suggestions, or submit a patch with improvements to the file.

Try It!

If you've downloaded the command-line client and have CFML installed on your machine, then go ahead and fetch the first problem.

exercism fetch cfml

In order to be able to submit your solution, you'll need to configure the client with your Exercism API key.

exercism configure --key=YOUR_EXERCISM_KEY

When you've written a solution, submit it to the site. You'll have to configure the command-line client with your exercism API key before you can submit.

exercism submit PATH_TO_FILE