Thanks Jared, extremely informative.

On Fri, Mar 13, 2009 at 2:18 PM, Jared Rypka-Hauer
<[email protected]>wrote:

>
> Confirm. CF's type checking happens at  runtime, not compile time, and
> as such it happens on every execution of every function for inputs and
> returns, always. Compiled languages do it once when the app is
> compiled and never have to worry about it again. Because "type" has
> such loose meaning in CF, all "types" are actually resolved by value
> rather than by, well, the actual "type" of anything. That's how 9 can
> be a string, a number, or a boolean and a CFC can be resolved by
> path.from.root.to.Cfc or just Cfc based on the directory structure and
> the location of, for example, the calling template.
>
> Since the process basically has to figure out what type is expected,
> then look at the value to determine if it can be coerced into that
> type, then either proceed or fail, use of types in CF in a production
> environment can be taxing... however types are handy tools for
> development purposes. Hence the setting in the administrator to allow
> people to use types for dev and switch to no types in prod without
> having to do a lot of regex-based text processing on their codebase.
>
> As for whether or not to skip attributes, I suppose it's possible that
> since missing attributes are just ignored for the purposes of metadata
> you might get, like, a 10th of a nanosecond better performance, but
> since metadata is created once per server per class, you really don't
> gain much in the long run. The performance issues with types is due to
> the runtime overhead of all the casting and resolving that it must do
> and not to the simple existance of an attribute.
>
> J
>
> On Mar 13, 2009, at 3:06 PM 3/13/09, David McGuigan wrote:
>
> > I have a vague memory of reading somewhere that when you specify a
> > return type of "any" or don't specify one at all it improves
> > performance. That seems pretty in tune with the "disable CFC type
> > check" setting in the administrator.
> >
> > Can some sperts please confirm/deny?
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CFCDev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/cfcdev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to