Wouter, As far as I know, the framework has been modified to remove the type checking of CFCs. This is a relatively expensive process under the covers.
As you state, for ongoing development it would be best to have the type checking in the code. This certainly reduces the work needed in decomposing a routine. I am sure doing maintains a copy with the types inside. For production use, it makes zero difference to the running code. The type checks are there to report an error if the wrong component was passed to a function. If this were the case, meaning a certain component was passed when the function was designed to receive another, surely another error would result. Being the rock solid framework that Reactor is, the code has been tested and the variables are all going to the right places. The speed increase is a direct result in less operations on the server. Meaning, instead of a function needed to perform validation that a component is, in fact, of a certain type, it just assumes it is and continues processing. I believe the type checking code actually does a mini-instantiation of the component and compares the metadata, though I would prefer not to be quoted on that. I might also add this increase in speed is without any additional caching features, or any new features at all. Such that any new caching functions will only drop the metrics even further. DW On 9/25/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
On Sep 25, 2006, at 15:24, Doug Hughes wrote: FYI, Most people had success with the duckies branch. So, to avoid fragmentation of the codebase I merged duckies into the trunk today. ... Thoughts? Opinions? Rants? Flames? Doug, all, I'm not yet cmpletely convinced that "the duckies branch" is a good idea, although I fully agree with the point of view that speeding up a framework is more than just "nice". Let me summarize my thoughts (note that I haven't looked at the code at this point - my bad): * type checking is important in the development process: it helps us, programmers, avoid writing errors in our code. I'll admit that I have a strong 'structured programming language' background (Pascal et.al.) and to me type checking is far from "wirthless" ;-) * are you sure that the type checking is a time consuming part of the framework? The conflicting results mentioned in some of the mails on this list should make us reflect on what exactly is being doen and measured... After all, type checking in CF (6.x and 7.x) is ultimately done in Java, and if I'm not mistaken this is one of those parts of the JVM that is highly optimized. On a hunch, I'ld say that more speed can be gained by your idea of caching queries (not query results: leave that to the DBMS) than by shedding type checking, especially in a somewhat larger program that runs over long periods - but I'll admit that my hunches usually aren't very reliable, so I'll wait for the measurements to come in! Don't get me wrong; I'm not anti-duckies, but I have the impression things are going a bit too fast here. So prove me wrong please! Wouter -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- Reactor for ColdFusion Mailing List [email protected] Archives at: http://www.mail-archive.com/reactor%40doughughes.net/ -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-- "Come to the edge, he said. They said: We are afraid. Come to the edge, he said. They came. He pushed them and they flew." Guillaume Apollinaire quotes -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- Reactor for ColdFusion Mailing List [email protected] Archives at: http://www.mail-archive.com/reactor%40doughughes.net/ -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
