CLI and parallel processing enhancement in Lucee

Since the NodeJS gained the popularity due to its asynchronous nature, we all started loving the asynchronous programming. Lucee updated lots of functions to add asynchronous support but I still see some enhancement which would be worth to have it. In this post I’ll talk a little bit about command line support in cfml language.

Parallel processing is not a new concept. Most of the programming languages support threading. In ColdFusion or Lucee we need to be little careful when using threads especially with variable scopes. That is why we suddenly realize how about threading managed by Lucee itself? Lucee already supports threading for most of the functions like ArrayEach, ArrayMap, ArrayReduce with additional arguments for looping in thread and and an option to limit the thread. This threading support for each functions makes the code simple and yet powerful. I think ColdFusion should also support such threading functionality for looping functions.

Speaking about ColdFusion, I really like the command line support. Running ColdFusion in command line gives the best solution if you have long running tasks. These days, I have lots of structural migration tasks for one of my projects. But we already migrated our project from ColdFusion to Lucee few years back and I don’t think it may fully supports ColdFusion. At this moment Lucee does not have CLI support. We have seen some progress made by for cfmlprojects (see Lucee Documentation) but at this moment I can’t find some testing builds. Do you feel that Lucee should support CLI? If yes, the please comment and let us know your thoughts.