A thought for ColdFusion 10
With all this talk of what people want to see in ColdFusion 10, one thing I brought up at Scotch on the Rocks 2008 in the ColdFusion Bird of a Feather session; was an idea taken from the Flash Player team, where they introduced the Adobe Virtual Machine 2 into the Flash Player along side the Adobe Virtual Machine 1.
- AVM1 allows the Flash Player to run ActionScript 1 & 2 applications.
- AVM2 allows the Flash Player to run ActionScript 3 applications.
This gives the Flash Player the backwards compatibility it needs, to stay in the market place. Yet Adobe put a line in the sand, with AVM2 and ActionScript 3. Basically yes AS1&2 were great but they had their limitations and so AS3 was a total rewrite, and this has given us the Flash Platform as we see it today.
As there are two AVM's they can't directly talk so a AS3 application can't directly interface with AS2 code; there are work arounds but nothing that allows this cleanly.
So why do I bring this up with ColdFusion, well the big thing for ColdFusion has been the ability for backwards compatibility with each release. This is cool in some respects but in others can limit the platform going forward. For example the Apache AXIS can't be easily upgraded to the latest release, mainly because it was a total rewrite from the version used in ColdFusion.
So why not have an option within the CF Administrator where you can choose to use "Classic ColdFusion" or "ColdFusion X" which of course will need a restart just to clarify.
There are of course people who will have an existing Application that they will upgrade to the latest version of ColdFusion where the "Classic ColdFusion" mode will ensure their application runs as it did, and have access to the new features.
Then you will have the group of people who will be starting a Brand New project, who can enable Coldfusion to run in "ColdFusion X" mode. This would give them access to all the new fancy stuff that this approach would give.
"ColdFusion X" wouldn't need to worry about the backwards compatibility, so would mean that the whole CFC / OOP issues that people hit with "Classic ColdFusion" would be gone, and other niggles like the PDF engine could be changed. As well as how the Java byte is generated and stored would also be changed.
I know this would also cause issues from a ColdFusion engineering resource point of view as a new feature for CF10 in the new engine would need to be ported back to the standard, but I guess you could have some sort of proxy so its only written once.
This of course would mean a split in the Community, and I know with most posts like this in our great community it will bring out a mass debate; but we have to remember that ASP guys have gone though this with Classic ASP and ASP.Net then you also have the python guys with the new Python 3000 being almost a total rewrite. As so did the ActionScript guys; so we wouldn't be alone, but I feel it will give ColdFusion a new base line to jump from and move forward.
It would be a rewrite of the platform as such, but more how the engine would run. The language would still be the same, with the addition of the new tags.
I think this would open a lot more doors to what ColdFusion can offer going forward, some of which I will blog over the next few days.
An interesting idea I think non-the least.
| View count: 721
I suppose this type of idea could apply to the Flash Forms as well. My understanding is that the reason this hasn't been updated is due to backwards compatibility too (since its Flex 1.5/AS2) because all existing Flash Form based apps would essentially break. A negative is that this sounds like "compatibility mode" in IE8...and any idea taken from IE must inherently suck.