On 5/13/05, Ben Rogers <[EMAIL PROTECTED]> wrote:
>   <cfif not isNull(childID)>
> 
>   <cfif isNumeric(childID)>

This goes back to my point that all the is*() functions would need to
handle null gracefully so that, in this case, isNumeric(null) returns
false.

> I'd like to see some code that clearly demonstrates an advantage to the
> "'right' way". I've seen a lot of code in languages that do support null
> values. In the presentation and business tiers, it adds a great deal of
> complexity and, with it, points of failure. I see no benefit.

To some extent I agree with Ben here. Adding null to a language *does*
add a lot of semantic complexity. It introduces a singularity into the
type system. A null *is* a whole range of types but it is also *not* a
whole other range of types. People seem to want null to be a component
type (any component type) but component types can also be addressed as
struct - should null also pass the isStruct() test? What about
functions? All of the arguments about returning a 'null' component can
be applied to whether it is realistic to return 'null' functions - so
isCustomFunction(null) should return true by that argument... or
should it? See the problem here? Functions in CFML are actually Java
classes and behave like objects that can be assigned and passed around
and tested and called. There's no built-in type validation support for
a function (cfargument type="customfunction" anyone?) but otherwise
they are every bit as nullable as a component type...
-- 
Sean A Corfield -- http://corfield.org/
Team Fusebox -- http://fusebox.org/
Got Gmail? -- I have 50, yes 50, invites to give away!

"If you're not annoying somebody, you're not really alive."
-- Margaret Atwood


----------------------------------------------------------
You are subscribed to cfcdev. To unsubscribe, send an email to 
[email protected] with the words 'unsubscribe cfcdev' as the subject of the 
email.

CFCDev is run by CFCZone (www.cfczone.org) and supported by CFXHosting 
(www.cfxhosting.com).

CFCDev is supported by New Atlanta, makers of BlueDragon
http://www.newatlanta.com/products/bluedragon/index.cfm

An archive of the CFCDev list is available at 
www.mail-archive.com/[email protected]


Reply via email to